Concepts and experiments in computational reflection
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
Beyond objects: a software design paradigm based on process control
ACM SIGSOFT Software Engineering Notes
Adaptive Control Systems
Control Theory-Based Foundations of Self-Controlling Software
IEEE Intelligent Systems
The Vision of Autonomic Computing
Computer
Feedback Control of Computing Systems
Feedback Control of Computing Systems
An Architecture for Coordinating Multiple Self-Management Systems
WICSA '04 Proceedings of the Fourth Working IEEE/IFIP Conference on Software Architecture
Computer
Using Architecture Models for Runtime Adaptability
IEEE Software
Architecture-based self-adaptation in the presence of multiple objectives
Proceedings of the 2006 international workshop on Self-adaptation and self-managing systems
Model-driven Development of Complex Software: A Research Roadmap
FOSE '07 2007 Future of Software Engineering
Self-Managed Systems: an Architectural Challenge
FOSE '07 2007 Future of Software Engineering
Coordinating Multiple Autonomic Managers to Achieve Specified Power-Performance Tradeoffs
ICAC '07 Proceedings of the Fourth International Conference on Autonomic Computing
Friends or foes?: a conceptual analysis of self-adaptation and it change management
Proceedings of the 2008 international workshop on Software engineering for adaptive and self-managing systems
Visibility of control in adaptive systems
Proceedings of the 2nd international workshop on Ultra-large-scale software-intensive systems
Self-adaptive software: Landscape and research challenges
ACM Transactions on Autonomous and Adaptive Systems (TAAS)
Taming Dynamically Adaptive Systems using models and aspects
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
Software Engineering for Self-Adaptive Systems: A Research Roadmap
Software Engineering for Self-Adaptive Systems
Engineering Self-Adaptive Systems through Feedback Loops
Software Engineering for Self-Adaptive Systems
A Case Study in Goal-Driven Architectural Adaptation
Software Engineering for Self-Adaptive Systems
MUSIC: Middleware Support for Self-Adaptation in Ubiquitous and Service-Oriented Environments
Software Engineering for Self-Adaptive Systems
Software Engineering for Self-Adaptive Systems
Reflecting on self-adaptive software systems
SEAMS '09 Proceedings of the 2009 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems
Computer
Unifying Runtime Adaptation and Design Evolution
CIT '09 Proceedings of the 2009 Ninth IEEE International Conference on Computer and Information Technology - Volume 02
Adaptation and abstract runtime models
Proceedings of the 2010 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems
Making control loops explicit when architecting self-adaptive systems
Proceedings of the second international workshop on Self-organizing architectures
PLASMA: a plan-based layered architecture for software model-driven adaptation
Proceedings of the IEEE/ACM international conference on Automated software engineering
On interacting control loops in self-adaptive systems
Proceedings of the 6th International Symposium on Software Engineering for Adaptive and Self-Managing Systems
The role of models and megamodels at runtime
MODELS'10 Proceedings of the 2010 international conference on Models in software engineering
Distributed Systems: Concepts and Design
Distributed Systems: Concepts and Design
FORMS: Unifying reference model for formal specification of distributed self-adaptive systems
ACM Transactions on Autonomous and Adaptive Systems (TAAS) - Special section on formal methods in pervasive computing, pervasive adaptation, and self-adaptive systems: Models and algorithms
Incremental model synchronization for efficient run-time monitoring
MODELS'09 Proceedings of the 2009 international conference on Models in Software Engineering
Requirements and assessment of languages and frameworks for adaptation models
MODELS'11 Proceedings of the 2011th international conference on Models in Software Engineering
Synchronization of multiple autonomic control loops: application to cloud computing
COORDINATION'12 Proceedings of the 14th international conference on Coordination Models and Languages
Achieving dynamic adaptation via management and interpretation of runtime models
Journal of Systems and Software
Hi-index | 0.00 |
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.