|Challenges in Composing and Decomposing Assurances for Self-Adaptive Systems|
Bradley Schmerl, Jesper Andersson, Thomas Vogel, Myra Cohen, Cecilia M. F. Rubira, Yuriy Brun, Alessandra Gorla, Franco Zambonelli and Luciano Baresi.
In Rogério de Lemos,
David Garlan, Carlo Ghezzi and Holger Giese editors, Software Engineering for Self-Adaptive Systems III. Assurances, Nr. (9640), Lecture Notes in Computer Science, Springer, 2017.
Online links: Plain Text
|Self-adaptive software systems adapt to changes in the environment,
in the system itself, in their requirements, or in their business objectives. Typically,
these systems attempt to maintain system goals at run time and often
provide assurance that they will meet their goals under dynamic and uncertain
circumstances. While significant research has focused on ways to engineer selfadaptive
capabilities into both new and legacy software systems, less work has
been conducted on how to assure that self-adaptation maintains system goals.
For traditional, especially safety-critical software systems, assurance techniques
decompose assurances into sub-goals and evidence that can be provided by parts
of the system. Existing approaches also exist for composing assurances, in terms
of composing multiple goals and composing assurances in systems of systems.
While some of these techniques may be applied to self-adaptive systems, we argue
that several significant challenges remain in applying them to self-adaptive
systems in this chapter. We discuss how existing assurance techniques can be applied
to composing and decomposing assurances for self-adaptive systems, highlight
the challenges in applying them, summarize existing research to address
some of these challenges, and identify gaps and opportunities to be addressed by
Keywords: Assurance, Self-adaptation.