On self-adaptation in systems-of-systems

Adaptivity and systems-of-systems (SoS) have always had a close relationship, as it is one of their defining features. Moreover, there is a clear similarity between the requirements of a SoS and those of many adaptive systems, such as autonomic and self-adaptive systems. In recent years, this kind of adaptive systems has been carefully studied; however, they often operate at a very different scale, being smaller than a typical SoS. The common nexus between both perspectives seem to be situated at the architectural level: the same adaptive techniques are recursively applied in different strata in a hierarchical composite. Therefore, the principles embodied in adaptive architectures seem to provide a good basis for the definition and description of SoS. This paper relates those principles to the corresponding structures in software evolution, and suggests to coordinate both through a pace layering strategy.

[1]  Ji Zhang,et al.  Using temporal logic to specify adaptive program semantics , 2006, J. Syst. Softw..

[2]  Rogério de Lemos,et al.  Proceedings of the 7th International Symposium on Software Engineering for Adaptive and Self-Managing Systems , 2012, ICSE 2012.

[3]  Frank Eliassen,et al.  MUSIC: Middleware Support for Self-Adaptation in Ubiquitous and Service-Oriented Environments , 2009, Software Engineering for Self-Adaptive Systems.

[4]  Pablo de la Fuente,et al.  Dynamic coordination architecture through the use of reflection , 2001, SAC.

[5]  Mark W. Maier,et al.  Architecting Principles for Systems‐of‐Systems , 1996 .

[6]  Carlos Canal,et al.  Software Adaptation , 2006, Obj. Logiciel Base données Réseaux.

[7]  Bradley R. Schmerl,et al.  Evolution styles: foundations and models for software architecture evolution , 2012, Software & Systems Modeling.

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

[9]  Joseph W. Yoder,et al.  Big Ball of Mud , 1997 .

[10]  Jennifer Pérez,et al.  Dynamic Adaptation of Aspect-Oriented Components , 2007, CBSE.

[11]  Claudia Raibulet,et al.  Evaluation of dynamic adaptivity through metrics: an achievable target? , 2009, 2009 Joint Working IEEE/IFIP Conference on Software Architecture & European Conference on Software Architecture.

[12]  Ian Simmonds,et al.  A Shearing Layers Approach to Information Systems Development , 2000 .

[13]  Radu Calinescu,et al.  Software Engineering Techniques for the Development of Systems of Systems , 2008, Monterey Workshop.

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

[15]  Flávio Oquendo Formally modelling software architectures with the UML 2.0 profile for π-ADL , 2006, SOEN.

[16]  David Garlan,et al.  Stitch: A language for architecture-based self-adaptation , 2012, J. Syst. Softw..

[17]  Tom Mens,et al.  Towards a taxonomy of software change , 2005, J. Softw. Maintenance Res. Pract..

[18]  Rogério de Lemos,et al.  Fifth Workshop on Software Engineering for Adaptive and Self-Managing Systems (SEAMS 2010) , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[19]  Galal H. Galal-Edeen,et al.  Introducing the Software Architectonic Viewpoint , 2002, WICSA.

[20]  Jesper Andersson,et al.  SOAR: Self-organizing architectures , 2009 .

[21]  R. O'Neill A Hierarchical Concept of Ecosystems. , 1986 .

[22]  John Leaney,et al.  Defining autonomic computing: a software engineering perspective , 2005, 2005 Australian Software Engineering Conference.

[23]  Andrea Zisman,et al.  QoS-Driven Proactive Adaptation of Service Composition , 2011, ICSOC.

[24]  Roy Sterritt,et al.  Self-managing software , 2006, Computer.

[25]  Gwen Salaün,et al.  Adaptation of Service Protocols Using Process Algebra and On-the-Fly Reduction Techniques , 2008, IEEE Transactions on Software Engineering.

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

[27]  Brian J. Sauser,et al.  System of Systems - the meaning of of , 2006, 2006 IEEE/SMC International Conference on System of Systems Engineering.

[28]  Indranil Gupta,et al.  A new class of nature-inspired algorithms for self-adaptive peer-to-peer computing , 2008, TAAS.

[29]  Antonio Brogi,et al.  A formal approach to component adaptation , 2005, J. Syst. Softw..

[30]  Jürgen Dingel,et al.  A survey of self-management in dynamic software architecture specifications , 2004, WOSS '04.

[31]  Franco Zambonelli,et al.  A survey of autonomic communications , 2006, TAAS.

[32]  Carlos E. Cuesta,et al.  Elements of Self-adaptive Systems - A Decentralized Architectural Perspective , 2009, SOAR.

[33]  Roland T. Mittermeir,et al.  Facets of Software Evolution , 2006 .

[34]  Ronald Morrison,et al.  A framework for supporting dynamic systems co-evolution , 2007, Automated Software Engineering.

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

[36]  Weishan Zhang,et al.  Towards Self-Managed Executable Petri Nets , 2008, 2008 Second IEEE International Conference on Self-Adaptive and Self-Organizing Systems.

[37]  Tom Mens,et al.  Towards a taxonomy of software change: Research Articles , 2005 .

[38]  Julie A. McCann,et al.  A survey of autonomic computing—degrees, models, and applications , 2008, CSUR.

[39]  Elena Navarro,et al.  Evolution styles: using architectural knowledge as an evolution driver , 2013, J. Softw. Evol. Process..

[40]  Janis R. Putman,et al.  Architecting with RM-ODP , 2000 .

[41]  Danny Weyns,et al.  A survey of formal methods in self-adaptive systems , 2012, C3S2E '12.

[42]  Bradley R. Schmerl,et al.  Model-based adaptation for self-healing systems , 2002, WOSS '02.

[43]  Antonio Bucchiarone,et al.  Self-Repairing systems modeling and verification using AGG , 2009, 2009 Joint Working IEEE/IFIP Conference on Software Architecture & European Conference on Software Architecture.

[44]  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.

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

[46]  Richard N. Taylor,et al.  Policy-Based Architectural Adaptation Management: Robotics Domain Case Studies , 2009, Software Engineering for Self-Adaptive Systems.

[47]  Mo Jamshidi,et al.  Modeling and Simulation for Systems of Systems Engineering , 2008 .

[48]  Roy Sterritt,et al.  Fulfilling the Vision of Autonomic Computing , 2010, Computer.

[49]  Stewart Brand,et al.  How Buildings Learn: What Happens After They're Built , 1997 .

[50]  Daniel Rodriguez,et al.  A Systematic Review of Self-adaptation in Service-oriented Architectures , 2011, ICSEA 2011.

[51]  David Garlan,et al.  Developing adaptive systems with synchronized architectures , 2006, J. Syst. Softw..

[52]  Rogério de Lemos,et al.  Evaluation of resilience in self-adaptive systems using probabilistic model-checking , 2012, 2012 7th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS).

[53]  Gerrit Muller,et al.  The Concept of Reference Architectures , 2010 .

[54]  Andrew P. Sage,et al.  On the Systems Engineering and Management of Systems of Systems and Federations of Systems , 2001, Inf. Knowl. Syst. Manag..

[55]  Peyman Oreizy,et al.  Architecture-based runtime software evolution , 1998, Proceedings of the 20th International Conference on Software Engineering.

[56]  Douglas C. Schmidt,et al.  Ultra-Large-Scale Systems: The Software Challenge of the Future , 2006 .