Runtime Services and Tooling for Reconfiguration

In model-based design methodologies, the system model is at the center of the development process. The model is the single source of design information, and typically is separated—logically and physically—in several views, such as requirements, specifications, design decisions, implementation guidelines, and testing protocols. When building up on such a model, the methodology prescribe—often formally—what the system model information represents, how it is manipulated and evaluated, and how it is refined from conception towards deployment. More often than not, system models and their manipulation tend to be too complex, formal, and multi-faceted to be made manually by a human designer. Such task requires appropriate tooling, that enables a correct-by-construction automation of the process. These tools then become a mandatory support to the designer. This chapter discusses how to build up a model-oriented tool chain and its most important activity flows: model editing, model visualization and transformation; model validation and evaluation; and finally, (semi-) automatic system implementation based on the system model. In addition and for each activity, emphasis goes also to the specific tool support which is necessary for the design of adaptive/reconfigurable systems.

[1]  Julio A. de Oliveira Filho,et al.  Model-based Design of Self-adapting Networked Signal Processing Systems , 2013, 2013 IEEE 7th International Conference on Self-Adaptive and Self-Organizing Systems.

[2]  Richard C. Gronback Eclipse Modeling Project: A Domain-Specific Language Toolkit , 2009 .