Our World of Software-Driven Systems

Our world has never been more shaped by systems and software. Today, almost every device and machine depends on software in some form. Without it, countless organizations, businesses, and industries simply couldn’t function.

That’s why AnSyMo investigates the foundations, techniques, methods, and tools that support the design, analysis, and maintenance of software-intensive systems. This mission comes with several key challenges:

  • Increasing computational power — The rise of parallel computing and interactive systems allows us to tackle ever more complex applications, but it also raises new design and analysis challenges.

  • Integration with the physical world — Software must now interact seamlessly with physical components, leading to the study of hybrid systems that combine digital and physical behavior.

  • Evolving software needs — Software is no longer static. As requirements and platforms evolve, systems must be designed to adapt and change with ease.​

Research Themes

  • Models (poster) - One way to tackle the increasing complexity of software intensive systems is to represent all knowledge about their structure and behaviour explicitly in the form of models. We design new techniques and build tools for comparing these models, checking their consistency, transforming them into one another, etc. The focus is on Multi-Paradigm (multi-formalism and multi-abstraction) modelling. 
  • Semantics (poster) - Of particular interest is the class of executable models describing the behaviour of systems or system components. This is the realm of programming language semantics in the traditional sense, but also of formalisms such as petri nets or statecharts. We contribute to the development of these models and their semantics, with the aim of a providing better understanding of recent developments in programming languages, such as new modularity concepts (e.g. aspects), variability or product lines. 
  • Evolution (poster) - Unlike traditional engineering products (e.g., cars and bridges), software systems should be seen as continuously evolving artefacts. Current techniques in language semantics do not yet adequately support such notion of evolution. We investigate how models may provide a firm basis for software systems that are both maintainable and evolvable. 
  • Resources - The availability of more but smaller computational devices and the interaction with (physically) external system components has led to the study of hybrid systems. These systems typically consist of distributed components with limited resources; hence computation should be scheduled carefully. We study how models (and simulations thereof) can be used for the efficient management of resources such as memory, time and energy.

These three research themes (models, languages and evolution) are not investigated in isolation. Rather we envision them as mutually reinforcing themes so that the whole becomes more than the sum of the parts.