Testing Self-Organizing, Adaptive Systems

Start date: 14.04.2015
Duration: 3 Years
Funded by: DFG (Deutsche Forschungsgemeinschaft)
Local head of project: Dr. Hella Ponsar (geb. Seebach)
Local scientists: Dr. Hella Ponsar (geb.Seebach)
Prof. Dr. Wolfgang Reif
External scientists / cooperations: Prof. Dr. Alexander Knapp


The TeSOS project aims at developing strategies and techniques for systematic (semi-)automatic testing of self-organising, adaptive systems.


For many years, nature has been a source of inspiration for the design of information systems, e.g., in the research areas of artificial intelligence, multi-agent systems, and self-organizing systems. The core idea is to develop systems by using the so-called self-* properties (self-healing, self-configuring, and self-optimizing), which correspond to biological mechanisms. The foundation of many of the self-* properties is self-organization. Self-organization enables a restructuring of the system and its components in order to conform to its environment to fulfill its goals. This new flexibility leads to challenges in engineering these systems, i.e. in testing. For example, the behavior cannot be specified fully at design-time since adaptation decisions are moved to run-time. This makes it hard to assure that those systems fulfill their requirements, but even more necessary to take appropriate measures. In this connection, testing plays a decisive role. The pivotal question is how to handle the state space of a self-organizing, adaptive system (SOAS) which is developing in an evolutionary fashion during the execution of the system. Our approach for testing is based on the Corridor Enforcing Infrastructure (CEI), an architectural pattern for SOAS, which, to some extent, simplifies the mentioned problems. For systems that are developed by use of the CEI, a new test procedure in TeSOS is explored. The classical process of software testing is largely extended to SOAS under the special consideration of reconfiguration and adaptation at runtime. The concepts developed include test case derivation, test execution, and test coverage and are summarized in a testing process. Furthermore, we will provide techniques for analyzing the quality of the self-organization mechanisms used. All concepts are thoroughly evaluated based on two major case studies in the areas of adaptive production and smart energy grids.