Our world and society are shaped and governed by systems and software. Almost all devices, machines and artifacts surrounding us incorporate software to some extent. Additionally, the numerous organizations, businesses and enterprises we encounter on a daily basis could not function without software. Examples of software systems are numerous: worldwide web applications and desktop software but also embedded systems like pacemakers, cell phones, train control systems, and automotive components.
Ansymo(1) is a research group investigating foundations, techniques, methods and tools for the design, analysis and maintenance of such software-intensive systems. The nature of these systems, however, has changed considerably in the last few years. Firstly, the availability of more computational resources, including parallel computation and interactive behavior has enabled one to tackle ever more complex applications. Secondly, the need to consider interactions of software with physical components has led to the study of hybrid systems, adding even more complexity. Finally, the view that a software system is a static entity has given way to the view that software needs evolve, i.e., that changes in requirements or platforms can be accommodated easily.
- 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.
Ansymo was founded in 2010 as a merger of three former research groups: Formal Techniques in Software Engineering (FOTS); the Lab On REengineering (LORE) and The Modelling, Simulation and Design lab (MSDL). The former two were established research groups at the University of Antwerp (headed by Prof. Dirk Janssens and Prof. Serge Demeyer respectively). With the arrival of Prof. Hans Vangheluwe (from McGill University, Canada) these research groups joined forces.
(1) AnSyMo is an acronym for Antwerp Systems and software Modelling.