by Bradley Schmerl, Jesper Andersson, Thomas Vogel, Myra B. Cohen, Cecilia M. F. Rubira, Yuriy Brun, Alessandra Gorla, Franco Zambonelli, Luciano Baresi
Abstract:
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 self-adaptive 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 future research.
Citation:
Bradley Schmerl, Jesper Andersson, Thomas Vogel, Myra B. Cohen, Cecilia M. F. Rubira, Yuriy Brun, Alessandra Gorla, Franco Zambonelli, and Luciano Baresi, Challenges in Composing and Decomposing Assurances for Self-Adaptive Systems, in Software Engineering for Self-Adaptive Systems III. Assurances, R. d. Lemos et al., Eds., Springer, 2018, pp. 64–89.
Bibtex:
@incollection{Schmerl18SEfSAS,
author = {Bradley Schmerl and Jesper Andersson and Thomas Vogel and
Myra B. Cohen and Cecilia M. F. Rubira and Yuriy Brun and Alessandra Gorla
and Franco Zambonelli and Luciano Baresi},
title = {\href{http://people.cs.umass.edu/brun/pubs/pubs/Schmerl18SEfSAS.pdf}{Challenges
in Composing and Decomposing Assurances for Self-Adaptive Systems}},
booktitle = {Software Engineering for Self-Adaptive Systems III. Assurances},
venue = {Chapter},
editor = {Rog{\'{e}}rio de Lemos and David Garlan and Carlo Ghezzi and Holger Giese},
publisher = {Springer},
year = {2018},
volume = {9640},
pages = {64--89},
doi = {10.1007/978-3-319-74183-3_3},
isbn = {978-3-319-74183-3},
note = {\href{https://doi.org/10.1007/978-3-319-74183-3_3}{DOI:
10.1007/978-3-319-74183-3\_3}},
abstract = {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 self-adaptive 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 future research.},
}