Reference Architectures for Self-Managed Software Systems: A Systematic Literature Review

Self-Managed Software Systems (SMSS) have emerged as an important type of software systems. However, the development of such systems is not a trivial task, as they constantly deal with adaptations at runtime so as to fulfill new needs of both users and execution environment. From another perspective, Reference Architectures (RAs) have been used for the aggregation of knowledge on specific domains, promoting the reuse of design expertise and facilitating the development, standardization, and evolution of software systems. Considering the relevance of such architectures, RAs for SMSS (RA4SMSS) have also been proposed. On the other hand, to the best of our knowledge, no study on a panorama or comparison on RA4SMSS has been published. This paper reports the results of a systematic literature review on RA4SMSS. They show that although relevant initiatives have been found, the SMSS area needs a broader contribution to boost the development of such systems. Moreover, research lines that must further investigated were also identified.

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

[2]  Hausi A. Müller,et al.  Autonomic Computing Now You See It, Now You Don't , 2008, ISSSE.

[3]  Takeo Kanade,et al.  Software Engineering for Self-Adaptive Systems II , 2013, Lecture Notes in Computer Science.

[4]  Danny Weyns,et al.  Architectural design of a distributed application with autonomic quality requirements , 2005, ACM SIGSOFT Softw. Eng. Notes.

[5]  Jesper Andersson,et al.  FORMS: a formal reference model for self-adaptation , 2010, ICAC '10.

[6]  Jesper Andersson,et al.  Reflecting on self-adaptive software systems , 2009, 2009 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems.

[7]  Franco Zambonelli,et al.  A Self-organizing Architecture for Pervasive Ecosystems , 2009, SOAR.

[8]  Flávio Oquendo,et al.  RAModel: A Reference Model for Reference Architectures , 2012, 2012 Joint Working IEEE/IFIP Conference on Software Architecture and European Conference on Software Architecture.

[9]  Natalia Juristo Juzgado,et al.  Developing search strategies for detecting relevant experiments , 2009, Empirical Software Engineering.

[10]  Nenad Medvidovic,et al.  A reference architecture for integrated development and run-time environments , 2012, 2012 Second International Workshop on Developing Tools as Plug-Ins (TOPI).

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

[12]  Gordon S. Blair,et al.  On the performance of reflective systems software , 2004, IEEE International Conference on Performance, Computing, and Communications, 2004.

[13]  Guenther Ruhe,et al.  Impact Analysis of Missing Values on the Prediction Accuracy of Analogy-based Software Effort Estimation Method AQUA , 2007, ESEM 2007.

[14]  Brice Morin,et al.  Models@ Run.time to Support Dynamic Adaptation , 2009, Computer.

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

[16]  Xu Hongzhen,et al.  Specification and verification of dynamic evolution of software architectures , 2010, J. Syst. Archit..

[17]  Tore Dybå,et al.  Applying Systematic Reviews to Diverse Study Types: An Experience Report , 2007, First International Symposium on Empirical Software Engineering and Measurement (ESEM 2007).

[18]  Jesper Andersson,et al.  On decentralized self-adaptation: lessons from the trenches and challenges for the future , 2010, SEAMS '10.

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

[20]  Pearl Brereton,et al.  Performing systematic literature reviews in software engineering , 2006, ICSE.

[21]  Linpeng Huang,et al.  Dynamic software architectures: formal specification and verification with CSP , 2012, Internetware.

[22]  Lei Liu,et al.  A Reference Architecture for Self-organizing Service-Oriented Computing , 2008, ARCS.

[23]  Flávio Oquendo,et al.  Architectural description of embedded systems: a systematic review , 2012, ISARCS '12.

[24]  Franco Zambonelli,et al.  Nature-Inspired Spatial Metaphors for Pervasive Service Ecosystems , 2008, 2008 Second IEEE International Conference on Self-Adaptive and Self-Organizing Systems Workshops.

[25]  Frank José Affonso,et al.  A Proposal of Reference Architecture for the Reconfigurable Software Development , 2012, SEKE.

[26]  David Sinreich,et al.  An architectural blueprint for autonomic computing , 2006 .

[27]  Pattie Maes,et al.  Concepts and experiments in computational reflection , 1987, OOPSLA '87.

[28]  E. James Whitehead,et al.  Collaboration in Software Engineering: A Roadmap , 2007, Future of Software Engineering (FOSE '07).