Rainbow: An Approach to Facilitate Restorative Functionality Within Distributed Autonomic Systems

Core autonomic behaviours, namely self-healing, selftuning, and self-adaptation, are now prevalent features of modern software architectures. Current implementations have typically relied on static rule and goal oriented approaches that respond to operational triggers to provide self-adaptive behaviour. This paper builds on the introspective nature of the previous work of the authors, namely the Cloud framework and Neptune language, to produce Rainbow, a system that enables storage and restoration of configuration data from an autonomic system. It is shown that the exposition of such configuration data enables system evolution to be captured and documented for analysis, and later restoration, essential abilities for successful anticipation and handling of changes in the operational context of an executing system. A working implementation of the proposed system is introduced, with conclusions made based on the future directions the research introduced in this paper can take.

[1]  Daniel Le Métayer,et al.  Software architecture styles as graph grammars , 1996, SIGSOFT '96.

[2]  Michel Wermelinger,et al.  Supporting Self-Management in Dynamic Software Architecture Specifications ∗ , 2004 .

[3]  Thomas A. Corbi,et al.  The dawning of the autonomic computing era , 2003, IBM Syst. J..

[4]  Ugo Montanari,et al.  Graph grammars and constraint solving for software architecture styles , 1998, ISAW '98.

[5]  Philip Miseldine,et al.  A Programmatic Approach to Applying Sympathetic and Parasympathetic Autonomic Systems to Software Design , 2005, SOAS.

[6]  Jonathan Hill,et al.  A software architecture supporting networked sensors , 2000 .

[7]  Andy Laws,et al.  Adjustable deliberation of self-managing systems , 2005, 12th IEEE International Conference and Workshops on the Engineering of Computer-Based Systems (ECBS'05).

[8]  Martin Hiller,et al.  Software Fault-Tolerance Techniques from a Real-Time Systems Point of View - an overview , 1998 .

[9]  Manish Parashar,et al.  DIOS++: A Framework for Rule-Basedn Autonomic Management of Distributed Scientific Applications , 2003, Euro-Par.

[10]  Michel Wermelinger,et al.  A graph based architectural (Re)configuration language , 2001, ESEC/FSE-9.

[11]  Michael Thielscher,et al.  Introduction to the Fluent Calculus , 1998, Electron. Trans. Artif. Intell..

[12]  Richard R. Muntz,et al.  Runtime dynamics in collaborative systems , 1999, GROUP '99.

[13]  Patrick Valduriez,et al.  Principles of distributed database systems (2nd ed.) , 1999 .

[14]  Chris Roadknight,et al.  Autonomic Computing for Pervasive ICT — A Whole-System Perspective , 2004 .

[15]  Martin Randles,et al.  A Stochastic Situation Calculus Modelling Approach for Autonomic Middleware , 2004 .

[16]  Michel Wermelinger Towards a chemical model for software architecture reconfiguration , 1998, IEE Proc. Softw..

[17]  Hector J. Levesque,et al.  Foundations for the Situation Calculus , 1998, Electron. Trans. Artif. Intell..

[18]  P A Low,et al.  Autonomic Nervous System Function , 1993, Journal of clinical neurophysiology : official publication of the American Electroencephalographic Society.