Software is an integral part of complex systems and software quality is essential for their success. In our research we develop theories, methods and tools for specifying, designing, implementing, testing, monitoring, and evolving large and complex software systems. Characteristics of such systems include decentralized control; support for multiple platforms; inherently conflicting requirements; continuous evolution and deployment; as well as heterogeneous, inconsistent, and changing elements.
Our aim is to apply computing knowledge to solve real-life engineering problems. We conduct research in cooperation with industrial partners to address future challenges in the following key areas of software and systems development: