Engineering Self-Adaptive Systems through Feedback Loops

  • Authors:
  • Yuriy Brun;Giovanna Marzo Serugendo;Cristina Gacek;Holger Giese;Holger Kienle;Marin Litoiu;Hausi Müller;Mauro Pezzè;Mary Shaw

  • Affiliations:
  • University of Southern California, Los Angeles, USA;Birkbeck, University of London, London, UK;University of Newcastle upon Tyne, Newcastle upon Tyne, UK;Hasso Plattner Institute at the University of Potsdam, Germany;University of Victoria, British Columbia, Canada;York University and IBM Canada Ltd., Canada;University of Victoria, British Columbia, Canada;University of Milano Bicocca, Italy and University of Lugano, Switzerland;Carnegie Mellon University, Pittsburgh, USA

  • Venue:
  • Software Engineering for Self-Adaptive Systems
  • Year:
  • 2009

Quantified Score

Hi-index 0.02

Visualization

Abstract

To deal with the increasing complexity of software systems and uncertainty of their environments, software engineers have turned to self-adaptivity. Self-adaptive systems are capable of dealing with a continuously changing environment and emerging requirements that may be unknown at design-time. However, building such systems cost-effectively and in a predictable manner is a major engineering challenge. In this paper, we explore the state-of-the-art in engineering self-adaptive systems and identify potential improvements in the design process. Our most important finding is that in designing self-adaptive systems, the feedback loops that control self-adaptation must become first-class entities. We explore feedback loops from the perspective of control engineering and within existing self-adaptive systems in nature and biology. Finally, we identify the critical challenges our community must address to enable systematic and well-organized engineering of self-adaptive and self-managing software systems.