A design space for adaptive systems
by Yuriy Brun, Ron Desmarais, Kurt Geihs, Marin Litoiu, Antonia Lopes, Mary Shaw, Mike Smit
Abstract:
Self-adaptive systems research is expanding as systems professionals recognize the importance of automation for managing the growing complexity, scale, and scope of software systems. The current approach to designing such systems is ad hoc, varied, and fractured, often resulting in systems with parts of multiple, sometimes poorly compatible designs. In addition to the challenges inherent to all software, this makes evaluating, understanding, comparing, maintaining, and even using such systems more difficult. This paper discusses the importance of systematic design and identifies the dimensions of the self-adaptive system design space. It identifies key design decisions, questions, and possible answers relevant to the design space, and organizes these into five clusters: observation, representation, control, identification, and enacting adaptation. This characterization can serve as a standard lexicon, that, in turn, can aid in describing and evaluating the behavior of existing and new self-adaptive systems. The paper also outlines the future challenges for improving the design of self-adaptive systems.
Citation:
Yuriy Brun, Ron Desmarais, Kurt Geihs, Marin Litoiu, Antonia Lopes, Mary Shaw, and Mike Smit, A design space for adaptive systems, in Software Engineering for Self-Adaptive Systems II, R. d. Lemos et al., Eds., Springer-Verlag, 2013, pp. 33–50.
Bibtex:
@incollection{Brun13SEfSAS,
  author = {Yuriy Brun and Ron Desmarais and Kurt Geihs and Marin Litoiu and
  Antonia Lopes and Mary Shaw and Mike Smit},
  title = {\href{http://people.cs.umass.edu/brun/pubs/pubs/Brun13SEfSAS.pdf}{A
  design space for adaptive systems}},
  booktitle = {Software Engineering for Self-Adaptive Systems II},
  venue = {Chapter},
  editor = {Rog{\'{e}}rio de Lemos and Holger Giese and Hausi A. M{\"{u}}ller
  and Mary Shaw},
  publisher = {Springer-Verlag},
  year = {2013},
  volume = {7475},
  pages = {33--50},
  doi = {10.1007/978-3-642-35813-5_2},
  isbn = {978-3-642-35813-5},
  note = {\href{http://dx.doi.org/10.1007/978-3-642-35813-5_2}{DOI:
  10.1007/978-3-642-35813-5\_2}},

  abstract = {Self-adaptive systems research is expanding as systems
  professionals recognize the importance of automation for managing the growing
  complexity, scale, and scope of software systems. The current approach to
  designing such systems is ad hoc, varied, and fractured, often resulting in
  systems with parts of multiple, sometimes poorly compatible designs. In
  addition to the challenges inherent to all software, this makes evaluating,
  understanding, comparing, maintaining, and even using such systems more
  difficult. This paper discusses the importance of systematic design and
  identifies the dimensions of the self-adaptive system design space. It
  identifies key design decisions, questions, and possible answers relevant to
  the design space, and organizes these into five clusters: observation,
  representation, control, identification, and enacting adaptation. This
  characterization can serve as a standard lexicon, that, in turn, can aid in
  describing and evaluating the behavior of existing and new self-adaptive
  systems. The paper also outlines the future challenges for improving the
  design of self-adaptive systems.},
}