Plan-directed architectural change for autonomous systems

Autonomous systems operate in an unpredictable world, where communication with those people responsible for its software architecture may be infrequent or undesirable. If such a system is to continue reliable operation it must be able to derive and initiate adaptations to new circumstances on its own behalf. Much of the previous work on dynamic reconfigurations supposes that the programmer is able to express the possible adaptations before the system is deployed, or at least is able to add new adaptation strategies after deployment. We consider the challenges in providing an autonomous system with the capability to direct its own adaptation, and describe an initial implementation where change in the software architecture of an autonomous system is enacted as a result of executing a reactive plan.

[1]  Alexander L. Wolf,et al.  Joint Proceedings of the Second International Software Architecture Workshop (ISAW-2) and International Workshop on Multiple Perspectives in Software Development (Viewpoints '96) on SIGSOFT '96 workshops, ISAW '96, San Francisco, California, USA , 1996, ISAW/Viewpoints.

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

[3]  Marco Pistore,et al.  NuSMV 2: An OpenSource Tool for Symbolic Model Checking , 2002, CAV.

[4]  Jason E. Robbins,et al.  Using critics to analyze evolving architectures , 1996, ISAW '96.

[5]  Stephan Merz,et al.  Model Checking , 2000 .

[6]  Jeff Magee,et al.  Using resemblance to support component reuse and evolution , 2006, SAVCBS '06.

[7]  Betty H. C. Cheng,et al.  Modular Model Checking of Dynamically Adaptive Programs , 2006 .

[8]  Fausto Giunchiglia,et al.  Planning as Model Checking , 1999, ECP.

[9]  Paolo Traverso,et al.  Automated planning - theory and practice , 2004 .

[10]  Piergiorgio Bertoli,et al.  MBP: a Model Based Planner , 2001 .

[11]  David Garlan,et al.  Exploiting style in architectural design environments , 1994, SIGSOFT '94.

[12]  Richard N. Taylor,et al.  Towards architecture-based self-healing systems , 2002, WOSS '02.

[13]  Dennis Heimbigner,et al.  Deployment and dynamic reconfiguration planning for distributed software systems , 2003, Proceedings. 15th IEEE International Conference on Tools with Artificial Intelligence.

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

[15]  Peyman Oreizy,et al.  An architecture-based approach to self-adaptive software , 1999, IEEE Intell. Syst..

[16]  Jeff Magee,et al.  The Evolving Philosophers Problem: Dynamic Change Management , 1990, IEEE Trans. Software Eng..