On Patterns for Decentralized Control in Self-Adaptive Systems (bibtex)
by , , , , , , , , ,
Abstract:
Self-adaptation is typically realized using a control loop. One prominent approach for organizing a control loop in self-adaptive systems is by means of four components that are responsible for the primary functions of self-adaptation: Monitor, Analyze, Plan, and Execute, together forming a MAPE loop. When systems are large, complex, and heterogeneous, a single MAPE loop may not be sufficient for managing all adaptation in a system, so multiple MAPE loops may be introduced. In self-adaptive systems with multiple MAPE loops, decisions about how to decentralize each of the MAPE functions must be made. These decisions involve how and whether the corresponding functions from multiple loops are to be coordinated (e.g., planning components coordinating to prepare a plan for an adaptation). To foster comprehension of self-adaptive systems with multiple MAPE loops and support reuse of known solutions, it is crucial that we document common design approaches for engineers. As such systematic knowledge is currently lacking, it is timely to reflect on these systems to: (a) consolidate the knowledge in this area, and (b) to develop a systematic approach for describing different types of control in self-adaptive systems. We contribute with a simple notation for describing interacting MAPE loops, which we believe helps in achieving (b), and we use this notation to describe a number of existing patterns of interacting MAPE loops, to begin to fulfill (a). From our study, we outline numerous remaining research challenges in this area.
Reference:
On Patterns for Decentralized Control in Self-Adaptive Systems (Danny Weyns, Bradley Schmerl, Vincenzo Grassi, Sam Malek, Raffaela Mirandola, Christian Prehofer, Jochen Wuttke, Jesper Andersson, Holger Giese, Karl Goeschka), Chapter in Software Engineering for Self-Adaptive Systems II (Rogério de Lemos, Holger Giese, HausiA. Müller, Mary Shaw, eds.), Springer, volume 7475, 2013.
Bibtex Entry:
@InCollection{SEfSAS2-decentral,
  AUTHOR = {Weyns, Danny and Schmerl, Bradley and Grassi, Vincenzo and
  Malek, Sam and Mirandola, Raffaela and Prehofer, Christian and Wuttke,
  Jochen and Andersson, Jesper and Giese, Holger and Goeschka, Karl},
  TITLE = {{On Patterns for Decentralized Control in Self-Adaptive
  Systems}},
  YEAR = {2013},
  MONTH = {January},
  BOOKTITLE = {Software Engineering for Self-Adaptive Systems II},
  VOLUME = {7475},
  PAGES = {76-107},
  EDITOR = {de Lemos, Rogério and Giese, Holger and Müller, HausiA. and
  Shaw, Mary},
  SERIES = {Lecture Notes in Computer Science (LNCS)},
  PUBLISHER = {Springer},
  URL = {http://dx.doi.org/10.1007/978-3-642-35813-5_4},
  ABSTRACT = {Self-adaptation is typically realized using a control
  loop. One prominent approach for organizing a control loop in
  self-adaptive systems is by means of four components that are
  responsible for the primary functions of self-adaptation: Monitor,
  Analyze, Plan, and Execute, together forming a MAPE loop. When systems
  are large, complex, and heterogeneous, a single MAPE loop may not be
  sufficient for managing all adaptation in a system, so multiple MAPE
  loops may be introduced. In self-adaptive systems with multiple MAPE
  loops, decisions about how to decentralize each of the MAPE functions
  must be made. These decisions involve how and whether the corresponding
  functions from multiple loops are to be coordinated (e.g., planning
  components coordinating to prepare a plan for an adaptation). To
  foster comprehension of self-adaptive systems with multiple MAPE loops
  and support reuse of known solutions, it is crucial that we document
  common design approaches for engineers. As such systematic knowledge
  is currently lacking, it is timely to reflect on these systems to:
  (a) consolidate the knowledge in this area, and (b) to develop
  a systematic approach for describing different types of control
  in self-adaptive systems. We contribute with a simple notation for
  describing interacting MAPE loops, which we believe helps in achieving
  (b), and we use this notation to describe a number of existing patterns
  of interacting MAPE loops, to begin to fulfill (a). From our study,
  we outline numerous remaining research challenges in this area.}
}
Powered by bibtexbrowser