Model-Driven Development and Adaptation of Autonomous Control Applications

Our vision is driven by rapid progress in hardware development, such as miniaturizing computing devices. On the software side, however, application development for such a setting is challenging for several reasons. One is the heterogeneity of devices and networking technologies, which vastly increases application development complexity. Other reasons include frequent reconfigurations and communication faults (such as network partitioning) that have to be handled appropriately. These reasons present problems for software developers - they can't predetermine configurations or anticipate all of the potential runtime faults that might occur. Furthermore, users might not be willing or able to handle complex configuration or communication issues - they want to install their devices and use applications. Thus, devices and applications must be able to work as autonomously as possible, with little to no manual user intervention. Specifically, applications must be able to adapt at runtime to a changing environment and recover from faults.Here, we elaborate on ideas we presented in a previous paper2 and discuss in more detail a model- driven approach to developing and adapting autonomous control applications. In contrast to conventional approaches, we use the application model not only for design and deployment but also for dynamically adapting the application at runtime. This is in line with research that emphasizes the importance of exploiting the latent knowledge contained in models at runtime.3 Our goal is to empower application developers to create self-organizing and robust actuator and sensor network (AS-Net) applications with minimal expert knowledge. Our work is part of the Model-Driven Development of Self-Organizing Control Applications project (www.kbs.tu-berlin.de/modoc).

[1]  Luca Cardelli,et al.  A Correct Abstract Machine for the Stochastic Pi-calculus , 2004 .

[2]  Roy Grønmo,et al.  Web service composition in UML , 2004, Proceedings. Eighth IEEE International Enterprise Distributed Object Computing Conference, 2004. EDOC 2004..

[3]  Edsger W. Dijkstra,et al.  Self-stabilizing systems in spite of distributed control , 1974, CACM.

[4]  Anish Arora,et al.  Closure and Convergence: A Foundation of Fault-Tolerant Computing , 1993, IEEE Trans. Software Eng..

[5]  Gordon S. Blair,et al.  Reflective Middleware , 2006, The Handbook of Mobile Middleware.

[6]  Helge Parzyjegla,et al.  A Model-driven Approach to the Development of Autonomous Control Applications ⋆ , 2007 .

[7]  Paul C. Clements,et al.  A survey of architecture description languages , 1996, Proceedings of the 8th International Workshop on Software Specification and Design.

[8]  Helge Parzyjegla,et al.  Self-organizing and Self-stabilizing Role Assignment in Sensor/Actuator Networks , 2006, OTM Conferences.

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

[10]  Helge Parzyjegla,et al.  Reconfiguring Publish/Subscribe Overlay Topologies , 2006, 26th IEEE International Conference on Distributed Computing Systems Workshops (ICDCSW'06).

[11]  Gero Mühl,et al.  Rapid Prototyping for Pervasive Applications , 2007, IEEE Pervasive Computing.

[12]  Gordon S. Blair,et al.  The case for reflective middleware , 2002, CACM.

[13]  Mark Weiser The computer for the 21st century , 1991 .

[14]  Gordon S. Blair,et al.  Summary of the workshop models@run.time at MoDELS 2006 , 2006, MoDELS'06.

[15]  Charles W. Bachman,et al.  The Role Concept in Data Models , 1977, VLDB.

[16]  Hartmut Schmeck,et al.  Towards a generic observer/controller architecture for Organic Computing , 2006, GI Jahrestagung.

[17]  James H. Aylor,et al.  Computer for the 21st Century , 1999, Computer.

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

[19]  W DijkstraEdsger Self-stabilizing systems in spite of distributed control , 1974 .

[20]  Wei Cai,et al.  Applying the reflective middleware approach in Grid computing , 2004, Concurr. Pract. Exp..

[21]  Matthias Werner,et al.  Reconfiguring Self-stabilizing Publish/Subscribe Systems , 2006, DSOM.

[22]  Shlomi Dolev,et al.  Self Stabilization , 2004, J. Aerosp. Comput. Inf. Commun..