Challenges in Composing and Decomposing Assurances for Self-Adaptive Systems
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.},
}