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.
MSL: A pattern language for engineering self-adaptive systems / P. Arcaini, R. Mirandola, E. Riccobene, P. Scandurra. - In: THE JOURNAL OF SYSTEMS AND SOFTWARE. - ISSN 0164-1212. - 164(2020 Jun).
|Titolo:||MSL: A pattern language for engineering self-adaptive systems|
ARCAINI, PAOLO (Primo)
RICCOBENE, ELVINIA MARIA (Penultimo) [Formal Analysis] (Corresponding)
SCANDURRA, PATRIZIA (Ultimo)
|Parole Chiave:||Pattern-oriented modeling; Architecture-based self-adaptation; MAPE-K pattern loops; Self-adaptive ASMs; Adaptive smart home systems;|
|Settore Scientifico Disciplinare:||Settore INF/01 - Informatica|
|Progetto:||Synthesis and Performance Optimization of a Switching Nano-crossbar Computer|
|Data di pubblicazione:||giu-2020|
|Digital Object Identifier (DOI):||http://dx.doi.org/10.1016/j.jss.2020.110558|
|Appare nelle tipologie:||01 - Articolo su periodico|