Model-Driven Engineering of Self-Adaptive Software with EUREMA

被引:79
|
作者
Vogel, Thomas [1 ]
Giese, Holger [1 ]
机构
[1] Univ Potsdam, Hasso Plattner Inst, Potsdam, Germany
关键词
Design; Languages Model-driven engineering; modeling language; models at runtime; model interpreter; self-adaptive software; feedback loops; layered architecture; software evolution; ARCHITECTURE MODELS; ADAPTATION; SYSTEMS; SUPPORT;
D O I
10.1145/2555612
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
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.
引用
收藏
页数:33
相关论文
共 50 条
  • [31] Software Engineering for Self-Adaptive Systems: A Research Roadmap
    Cheng, Betty H. C.
    de Lemos, Rogerio
    Giese, Holger
    Inverardi, Paola
    Magee, Jeff
    Andersson, Jesper
    Becker, Basil
    Bencomo, Nelly
    Brun, Yuriy
    Cukic, Bojan
    Serugendo, Giovanna Di Marzo
    Dustdar, Schahram
    Finkelstein, Anthony
    Gacek, Cristina
    Geihs, Kurt
    Grassi, Vincenzo
    Karsai, Gabor
    Kienle, Holger M.
    Kramer, Jeff
    Litoiu, Marin
    Malek, Sam
    Mirandola, Raffaela
    Mueller, Hausi A.
    Park, Sooyong
    Shaw, Mary
    Tichy, Matthias
    Tivoli, Massimo
    Weyns, Danny
    Whittle, Jon
    SOFTWARE ENGINEERING FOR SELF-ADAPTIVE SYSTEMS, 2009, 5525 : 1 - +
  • [32] Collaborative Model-Driven Software Engineering: A Systematic Update
    David, Istvan
    Aslam, Kousar
    Faridmoayer, Sogol
    Malavolta, Ivano
    Syriani, Eugene
    Lago, Patricia
    24TH INTERNATIONAL CONFERENCE ON MODEL-DRIVEN ENGINEERING LANGUAGES AND SYSTEMS (MODELS 2021), 2021, : 273 - 284
  • [33] Envisioning the Future of Collaborative Model-Driven Software Engineering
    Di Ruscio, Davide
    Franzago, Mirco
    Muccini, Henry
    Malavolta, Ivano
    PROCEEDINGS OF THE 2017 IEEE/ACM 39TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING COMPANION (ICSE-C 2017), 2017, : 219 - 221
  • [34] Automating the Customization of Model-Driven Software Engineering Environments
    Cuevas Cuesta, Cesar
    Lopez Martinez, Patricia
    Drake, Jose M.
    MODELSWARD: PROCEEDINGS OF THE 5TH INTERNATIONAL CONFERENCE ON MODEL-DRIVEN ENGINEERING AND SOFTWARE DEVELOPMENT, 2017, : 337 - 344
  • [35] Model-Driven Development and the Future of Software Engineering Education
    Cowling, Tony
    2013 IEEE 26TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING EDUCATION AND TRAINING (CSEE&T), 2013, : 329 - 331
  • [36] Software Evolution in Model-driven Product Line Engineering
    Abrahao, Silvia
    Gonzalez-Huerta, Javier
    Insfran, Emilio
    Ramos, Isidro
    ERCIM NEWS, 2012, (88): : 41 - 42
  • [37] Applying model-driven engineering in small software enterprises
    Sanchez Cuadrado, Jesus
    Izquierdo, Javier Luis Canovas
    Garcia Molina, Jesus
    SCIENCE OF COMPUTER PROGRAMMING, 2014, 89 : 176 - 198
  • [38] The technological landscape of collaborative model-driven software engineering
    Choudhury, Abhishek
    Malavolta, Ivano
    Ciccozzi, Federico
    Aslam, Kousar
    Lago, Patricia
    SOFTWARE AND SYSTEMS MODELING, 2025,
  • [39] A model-driven approach for developing adaptive software systems
    Hamann, Thomas
    Huebsch, Gerald
    Springer, Thomas
    DISTRIBUTED APPLICATIONS AND INTEROPERABLE SYSTEMS, 2008, 5053 : 196 - 209
  • [40] Putting performance engineering into model-driven engineering: Model-driven performance engineering
    Fritzsche, Mathias
    Johannes, Jendrik
    MODELS IN SOFTWARE ENGINEERING, 2008, 5002 : 164 - +