State of the Art in Architectures for Self-aware Computing Systems

In this chapter, we review the state of the art in self-aware computing systems with a particular focus on software architectures. Therefore, we compare existing approaches targeting computing systems with similar characteristics as self-aware systems to the architectural concepts for single and collective self-aware systems discussed in the previous chapters. These approaches are particularly reference architectures and architectural frameworks and languages. Based on this comparison, we discuss open challenges for architectures of self-aware computing systems.

[1]  Mary Shaw,et al.  Beyond objects: a software design paradigm based on process control , 1995, SOEN.

[2]  Steve R. White,et al.  Unity: experiences with a prototype autonomic computing system , 2004 .

[3]  John R. Anderson The Architecture of Cognition , 1983 .

[4]  L.D. Paulson DARPA creating self-aware computing , 2003, Computer.

[5]  Thomas Vogel,et al.  Mechanisms for Leveraging Models at Runtime in Self-adaptive Software , 2014, Models@run.time@Dagstuhl.

[6]  Jeff Magee,et al.  Dynamic structure in software architectures , 1996, SIGSOFT '96.

[7]  Ada Diaconescu,et al.  Controlling Self-Organising Software Applications with Archetypes , 2012, 2012 IEEE Sixth International Conference on Self-Adaptive and Self-Organizing Systems.

[8]  Holger Giese,et al.  Structured Information Processing for Self-Optimizing Mechatronic Systems , 2004, ICINCO.

[9]  Radu Calinescu,et al.  Dynamic QoS Management and Optimization in Service-Based Systems , 2011, IEEE Transactions on Software Engineering.

[10]  Holger Giese,et al.  Tool support for the design of self-optimizing mechatronic multi-agent systems , 2008, International Journal on Software Tools for Technology Transfer.

[11]  Pattie Maes Concepts and experiments in computational reflection , 1987, OOPSLA 1987.

[12]  Holger Giese,et al.  Modeling Collaborations in Adaptive Systems of Systems , 2015, ECSA Workshops.

[13]  Ladan Tahvildari,et al.  Self-adaptive software: Landscape and research challenges , 2009, TAAS.

[14]  Uwe Aßmann,et al.  Approximating quality contracts for energy auto-tuning software , 2012, 2012 First International Workshop on Green and Sustainable Software (GREENS).

[15]  Barbara Hayes-Roth,et al.  A Blackboard Architecture for Control , 1985, Artif. Intell..

[16]  Sebastián Uchitel,et al.  MORPH: a reference architecture for configuration and behaviour self-adaptation , 2015, CTSE@SIGSOFT FSE.

[17]  Uwe Aßmann,et al.  Architecture and Mechanisms of Energy Auto-Tuning , 2013 .

[18]  Jeff Rothenberg,et al.  The nature of modeling , 1989 .

[19]  Thomas Vogel,et al.  Adaptation and abstract runtime models , 2010, SEAMS '10.

[20]  Rogério de Lemos,et al.  Software Engineering for Self-Adaptive Systems [outcome of a Dagstuhl Seminar] , 2009, Software Engineering for Self-Adaptive Systems.

[21]  Hartmut Schmeck,et al.  Adaptivity and self-organization in organic computing systems , 2010, TAAS.

[22]  Henry Hoffmann,et al.  SEEC: A General and Extensible Framework for Self-Aware Computing , 2011 .

[23]  Thomas Vogel,et al.  On Unifying Development Models and Runtime Models , 2014, MoDELS@Run.time.

[24]  Frank Eliassen,et al.  A development framework and methodology for self-adapting applications in ubiquitous computing environments , 2012, J. Syst. Softw..

[25]  Hartmut Schmeck,et al.  Organic Computing - A Paradigm Shift for Complex Systems , 2011, Organic Computing.

[26]  David Garlan,et al.  Rainbow: architecture-based self-adaptation with reusable infrastructure , 2004 .

[27]  Thomas Vogel,et al.  Model-Driven Engineering of Self-Adaptive Software with EUREMA , 2014, ACM Trans. Auton. Adapt. Syst..

[28]  Holger Giese,et al.  Living with Uncertainty in the Age of Runtime Models , 2014, Models@run.time@Dagstuhl.

[29]  Jeff Magee,et al.  Self-Managed Systems: an Architectural Challenge , 2007, Future of Software Engineering (FOSE '07).

[30]  Mary Shaw,et al.  Software Engineering for Self-Adaptive Systems: A Research Roadmap , 2009, Software Engineering for Self-Adaptive Systems.

[31]  Raman Kazhamiakin,et al.  A Framework for Proactive Self-adaptation of Service-Based Applications Based on Online Testing , 2008, ServiceWave.

[32]  Bradley R. Schmerl,et al.  Rainbow: Architecture-Based Self-Adaptation with Reusable Infrastructure , 2004, Computer.

[33]  Christopher Landauer,et al.  New architectures for constructed complex systems , 2001, Appl. Math. Comput..

[34]  H. Penny Nii,et al.  Blackboard Systems, Part One: The Blackboard Model of Problem Solving and the Evolution of Blackboard Architectures , 1986, AI Mag..

[35]  John E. Laird,et al.  Symbolic architectures for cognition , 1989 .

[36]  Samuel Kounev Self-Aware Software and Systems Engineering: A Vision and Research Roadmap , 2011, Softwaretechnik-Trends.

[37]  Bradley R. Schmerl,et al.  Improving Architecture-Based Self-Adaptation through Resource Prediction , 2009, Software Engineering for Self-Adaptive Systems.

[38]  Martin S. Feather,et al.  Requirements monitoring in dynamic environments , 1995, Proceedings of 1995 IEEE International Symposium on Requirements Engineering (RE'95).

[39]  Mary Shaw,et al.  Engineering Self-Adaptive Systems through Feedback Loops , 2009, Software Engineering for Self-Adaptive Systems.

[40]  Mary Shaw,et al.  Visibility of control in adaptive systems , 2008, ULSSIS '08.

[41]  Nelly Bencomo,et al.  QuantUn: Quantification of uncertainty for the reassessment of requirements , 2015, 2015 IEEE 23rd International Requirements Engineering Conference (RE).

[42]  Holger Giese,et al.  Hybrid UML Components for the Design of Complex Self-Optimizing Mechatronic Systems , 2004, ICINCO.

[43]  Holger Giese,et al.  A multi-paradigm approach supporting the modular execution of reconfigurable hybrid systems , 2011, Simul..

[44]  Sylvain Frey,et al.  Architectural Integration Patterns for Autonomic Management Systems , 2012 .

[45]  Anant Agarwal,et al.  Self-Aware Computing , 2009 .

[46]  Nelly Bencomo,et al.  Requirements reflection: requirements as runtime entities , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[47]  Gordon S. Blair,et al.  Models@ run.time , 2009, Computer.

[48]  Holger Giese,et al.  Making control loops explicit when architecting self-adaptive systems , 2010, SOAR '10.

[49]  Brice Morin,et al.  A Reference Architecture and Roadmap for Models@run.time Systems , 2011, Models@run.time@Dagstuhl.

[50]  M. Hauser Knowing about Knowing , 2003, Annals of the New York Academy of Sciences.

[51]  Kurt Geihs,et al.  Playing MUSIC — building context‐aware and self‐adaptive mobile applications , 2013, Softw. Pract. Exp..

[52]  Valérie Issarny,et al.  The role of models@run.time in supporting on-the-fly interoperability , 2013, Computing.

[53]  Mary Shaw,et al.  An Introduction to Software Architecture , 1993, Advances in Software Engineering and Knowledge Engineering.

[54]  Frank Eliassen,et al.  Composing Components and Services Using a Planning-Based Adaptation Middleware , 2008, SC@ETAPS.

[55]  Bradley R. Schmerl,et al.  Software Engineering for Self-Adaptive Systems: A Second Research Roadmap , 2010, Software Engineering for Self-Adaptive Systems.

[56]  Kurt Geihs,et al.  Development support for QoS-aware service-adaptation in ubiquitous computing applications , 2011, SAC.

[57]  Luca Maria Gambardella,et al.  Evolving Self-Organizing Behaviors for a Swarm-Bot , 2004, Auton. Robots.

[58]  Holger Giese,et al.  Modular design and verification of component-based mechatronic systems with online-reconfiguration , 2004, SIGSOFT '04/FSE-12.

[59]  Samuel Kounev,et al.  A Model-Based Approach to Designing Self-Aware IT Systems and Infrastructures , 2016, Computer.

[60]  Ozalp Babaoglu,et al.  Self-star Properties in Complex Information Systems, Conceptual and Practical Foundations [the book is a result from a workshop at Bertinoro, Italy, Summer 2004] , 2005, Self-star Properties in Complex Information Systems.

[61]  Sam Malek,et al.  Automated mining of software component interactions for self-adaptation , 2014, SEAMS 2014.

[62]  C. Landauer,et al.  Towards an Integration Science The Influence of Richard Bellman on Our Research , 2000 .

[63]  Frank Eliassen,et al.  A comprehensive solution for application-level adaptation , 2009 .

[64]  Rami Bahsoon,et al.  Architectural Aspects of Self-Aware and Self-Expressive Computing Systems: From Psychology to Engineering , 2015, Computer.

[65]  Holger Giese,et al.  Model-Driven Development of Safe Self-optimizing Mechatronic Systems with MechatronicUML , 2013, Assurances for Self-Adaptive Systems.

[66]  Thomas Vogel,et al.  The Role of Models and Megamodels at Runtime , 2010, MoDELS.

[67]  Phyllis R. Nelson,et al.  Systems Engineering for Organic Computing: The Challenge of Shared Design and Control between OC Systems and their Human Engineers , 2008, Organic Computing.

[68]  Michael T. Cox Metacognition in computation: A selected research review , 2005, Artif. Intell..

[69]  Ada Diaconescu,et al.  Towards a Service-Oriented Component Model for Autonomic Management , 2011, 2011 IEEE International Conference on Services Computing.

[70]  Jeffrey O. Kephart,et al.  The Vision of Autonomic Computing , 2003, Computer.

[71]  Holger Giese,et al.  Model-Driven Architecture for Hard Real-Time Systems: From Platform Independent Models to Code , 2005, ECMDA-FA.

[72]  Franco Zambonelli,et al.  On Self-Adaptation, Self-Expression, and Self-Awareness in Autonomic Service Component Ensembles , 2011, 2011 Fifth IEEE Conference on Self-Adaptive and Self-Organizing Systems Workshops.