MSL: A pattern language for engineering self-adaptive systems

被引:14
作者
Arcaini, Paolo [1 ]
Mirandola, Raffaela [2 ]
Riccobene, Elvinia [3 ]
Scandurra, Patrizia [4 ]
机构
[1] Natl Inst Informat, Tokyo, Japan
[2] Politecn Milan, Milan, Italy
[3] Univ Milan, Dipartimento Informat, Milan, Italy
[4] Univ Bergamo, Dept Management Informat & Prod Engn, Bergamo, Italy
基金
欧盟地平线“2020”;
关键词
Pattern-oriented modeling; Architecture-based self-adaptation; MAPE-K pattern loops; Self-adaptive ASMs; Adaptive smart home systems; MODELS;
D O I
10.1016/j.jss.2020.110558
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
In architecture-based self-adaptation of decentralized systems, design patterns have been introduced to ease the design of complex adaptation solutions that usually require the interaction of different MAPE-K (Monitor-Analyze-Plan-Execute over a shared Knowledge) control loops, each dealing with an adaptation concern of the managed system. Such MAPE patterns have been proposed by means of a graphical notation, but without a well-defined way to document them and to express the semantics of components interactions. In this paper, we propose an approach to overcome these limitations. We present a domain-specific language, called MSL for MAPE Specification Language, to define and instantiate MAPE patterns and to give semantics to some semantic variation points of the equivalent graphical notation for MAPE pattern. We also provide a formal semantics of the language by means of self-adaptive Abstract State Machines, an extension of the Abstract State Machines (ASMs) formalism to model self-adaptation. Such semantics definition comes with an automatic transformation of MSL models into formal executable models, and opens to the possibility of performing rigorous analysis (validation w.r.t. the adaptation requirements and verification of adaptation properties) of MSL models. Moreover, we present our current results toward a (long-term) realization of an MSL-centric framework, where MSL is the notation of a modeling front-end, on top of richer and more specific modeling, analysis, and implementation back-end frameworks. As proof of concept of our approach, we show the application of MSL and its formal support to a running case study in the field of home automation, by modeling an adaptive control of a virtual smart home developed with the OpenHAB runtime platform. (C) 2020 Elsevier Inc. All rights reserved.
引用
收藏
页数:18
相关论文
共 38 条
  • [1] Architecting Emergent Configurations in the Internet of Things
    Alkhabbas, Fahed
    Spalazzese, Romina
    Davidsson, Paul
    [J]. 2017 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ARCHITECTURE (ICSA 2017), 2017, : 221 - 224
  • [2] [Anonymous], MICROSOFT APPL ARCHI
  • [3] [Anonymous], 2009, Software Engineering For Self-Adaptive Systems
  • [4] [Anonymous], 2013, P INT C C COMPUTER S
  • [5] Arcaini P., 2019, 2019 IEEE INT C SOFT
  • [6] A DSL for MAPE Patterns Representation in Self-adapting Systems
    Arcaini, Paolo
    Mirandola, Raffaela
    Riccobene, Elvinia
    Scandurra, Patrizia
    [J]. SOFTWARE ARCHITECTURE (ECSA 2018), 2018, 11048 : 3 - 19
  • [7] Formal Design and Verification of Self-Adaptive Systems with Decentralized Control
    Arcaini, Paolo
    Riccobene, Elvinia
    Scandurra, Patrizia
    [J]. ACM TRANSACTIONS ON AUTONOMOUS AND ADAPTIVE SYSTEMS, 2017, 11 (04)
  • [8] A model-driven process for engineering a toolset for a formal method
    Arcaini, Paolo
    Gargantini, Angelo
    Riccobene, Elvinia
    Scandurra, Patrizia
    [J]. SOFTWARE-PRACTICE & EXPERIENCE, 2011, 41 (02) : 155 - 166
  • [9] Arcaini P, 2010, LECT NOTES COMPUT SC, V5977, P61, DOI 10.1007/978-3-642-11811-1_6
  • [10] Arcaini Paolo., 2010, NASA Formal Methods Symposium, P4