Model-Driven Engineering of Self-Adaptive Software with EUREMA

05/17/2018
by   Thomas Vogel, et al.
0

The development of self-adaptive software requires the engineering of an adaptation engine that controls the underlying adaptable software by feedback loops. The engine often describes the adaptation by runtime models representing the adaptable software and by activities such as analysis and planning that use these models. To systematically address the interplay between runtime models and adaptation activities, runtime megamodels have been proposed. A runtime megamodel is a specific model capturing runtime models and adaptation activities. In this article, we go one step further and present an executable modeling language for ExecUtable RuntimE MegAmodels (EUREMA) that eases the development of adaptation engines by following a model-driven engineering approach. We provide a domain-specific modeling language and a runtime interpreter for adaptation engines, in particular feedback loops. Megamodels are kept alive at runtime and by interpreting them, they are directly executed to run feedback loops. Additionally, they can be dynamically adjusted to adapt feedback loops. Thus, EUREMA supports development by making feedback loops explicit at a higher level of abstraction and it enables solutions where multiple feedback loops interact or operate on top of each other and self-adaptation co-exists with offline adaptation for evolution.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
05/17/2018

A language for feedback loops in self-adaptive systems: Executable runtime megamodels

The development of self-adaptive software requires the engineering of pr...
research
05/17/2018

Requirements and Assessment of Languages and Frameworks for Adaptation Models

Approaches to self-adaptive software systems use models at runtime to le...
research
04/03/2018

mRUBiS: An Exemplar for Model-Based Architectural Self-Healing and Self-Optimization

Self-adaptive software systems are often structured into an adaptation e...
research
05/17/2018

A Testing Scheme for Self-Adaptive Software Systems with Architectural Runtime Models

Self-adaptive software systems (SASS) are equipped with feedback loops t...
research
05/17/2018

Adaptation and Abstract Runtime Models

Runtime adaptability is often a crucial requirement for today's complex ...
research
05/17/2018

The Role of Models and Megamodels at Runtime

In model-driven software development a multitude of interrelated models ...
research
03/29/2021

Tigris: a DSL and Framework for Monitoring Software Systems at Runtime

The understanding of the behavioral aspects of a software system is an e...

Please sign up or login with your details

Forgot password? Click here to reset