Subproject A4 investigates mechanisms for transitions of self-adapting communication systems on architecture level. We consider following aspects: (1) Monitoring of integrity-constraints allows to trigger actions for self-healing on demand (2) Multi-criteria quality properties are considered for execution of actions for self-optimization. Initially, actions for adaptations are triggered reactively as soon as integrity constraints are violated or quality thresholds are exceeded. On basis of that, we define novel prediction-based concepts for proactive self-adaptations. Major challenges arise from the fact that (1) communications with the described properties generally consist of a distributed architecture and (2) are used by an arbitrary number of applications concurrently. Thereby, the applications compete for common communication resources. Transitions of coexistent mechanisms for transitions can be triggered on communication system level as well as at the level of the application architecture. Therefore, distributed transitions need to be planned and coordinated across be communication layers and sub-system borders.
Subproject A4 develops a methodology for the model-based design of the reconfiguration behavior of communication systems on architecture level as well as for the coordination of triggering and execution of coexistent mechanisms for transitions in a runtime environment which can potentially occur across several applications and communication layers. Models which are available at runtime (Models@Runtime) describe hereby the space of all valid system configurations including contextual states and corresponding integrity conditions and optimization goals as well as valid transitions which are possible at specific points of time. These models represent the knowledge base for the decoupled analysis, planning, triggering and execution of transitions. Probabilistic information derived from the system itself as well as from its environment which is required for proactive transitions is represented in form of stochastic models, e.g., probabilistic automata. Context models characterize relevant (future) changes of the behavior of applications and neighbor systems in the self-adapting communication system. The developed methodology is supported by a runtime system whose core is made up of the previously mentioned system- and context models. Runtime models are provided in form of a knowledge component of the well-established MAPE-K loop. This allows for integration of approaches for prediction of contextual changes, to support proactive transitions.
We pursue these goals on basis of previous work in pervasive computing and adaptive systems accomplished in the information system group of the University of Mannheim. In recent work, we investigated architectures for self-organizing system with the focus on partitioning of adaptation logic. On basis of this we will investigate interdependencies of transitions on communication and application architectures. Previous work on Dynamic Software Product Lines (DSPL) of the real-time systems lab of the Technical University of Darmstadt provides us a holistic methodology for modeling of reconfiguration behavior of dynamic software components as they occur, e.g., in adaptive communication networks. Additionally, DSPL offer techniques for a systematic validation, quality assurance and evolution of adaptive systems.
We continue our work started in the B-project area for the specification of configurations of adaptive monitoring mechanisms and combine these with architecture concepts derived by subproject A2 in project phase I. Essential part of the research will be the investigation of the knowledge component of the MAPE-K look and its usage for a model-based coordination of transitions of multi-mechanisms. The outlined combination of concepts from DSPL and middleware provide the methods for a model-based design of the adaptation logic of self-adaptive communication systems. Moreover, it allows analysis during design as well as during runtime. The variability of DSPL-components can hereby be formally specified, e.g., in Feature Models. This allows for automatic validation and analysis of possible system configurations by means of constraint solvers. For handling of variability of communication systems which is potentially distributed across layers and components we will extend existing DSPL-approaches by means of dynamic Multi-Software-Product Lines and Distributed Constraint Reasoning. Respective extensions to integrate stochastic context information and to consider quality criteria are needed for reconfiguration-models for predictive, multi-criteria-based self-adaptation.
In phase II we pursue the goal to investigate on architectural level coexistent adaption mechanisms which can occur across several layers in distributed communication systems. We focus thereby on procedures for reactive and proactive self-healing as well as self-optimization. Thereby, Models@Runtime in different shapes act as a knowledge component in the MAPE-K cycle.