Model-Driven Development of Self-organising Control Applications

In this article we present a software development methodology and a supporting algorithm toolbox for Organic Computing applications that were developed in the context of the MODOC project. We focus on control applications for dynamic actuator/sensor networks that have no skilled human administrator and that are subject to frequent random hardware failures. To deal with these characteristics, applications in this setting should be self-organising and self-stabilising. However, realising self-organising and self-stabilising applications is usually a complex task requiring expert knowledge. Thus, we show that the development of such applications can be greatly simplified by shifting complexity into a model-driven tool chain. Developers implement their application in a high-level language based on a role abstraction focusing on application functionality. In order to hide the remaining complexity, we developed a tool chain which is responsible for transforming the high-level code to executable machine code that is automatically enriched by self-x properties such as self-organisation and self-stabilisation, which are not explicitly defined by the application programmer. Thereby, the application benefits from extended fault-tolerance and availability. A major part of the tool chain is a toolbox containing self-x algorithms commonly required for Organic Computing applications. The heart of the toolbox is an algorithm stack realised by our publish/subscribe middleware Rebeca that is able to efficiently realise self-organisation even in case of large networks.

[1]  Daniel Graff,et al.  Design and Implementation of the Rebeca Publish/Subscribe Middleware , 2010, From Active Data Management to Event-Based Systems and More.

[2]  Kurt Geihs,et al.  Model Metamorphosis , 2003, IEEE Softw..

[3]  Samuel Kounev,et al.  Stochastic Analysis of Hierarchical Publish/Subscribe Systems , 2009, Euro-Par.

[4]  Matthias Werner,et al.  On the Definitions of Self-Managing and Self-Organizing Systems , 2011 .

[5]  Gero Mühl,et al.  Stochastic analysis and comparison of self-stabilizing routing algorithms for publish/subscribe systems , 2005, 13th IEEE International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems.

[6]  Helge Parzyjegla,et al.  Self-organizing broker topologies for publish/subscribe systems , 2007, SAC '07.

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

[8]  Helge Parzyjegla,et al.  Clustered publish/subscribe in wireless actuator and sensor networks , 2008, MPAC '08.

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

[10]  Ami Marowka Think Parallel: Teaching Parallel Programming Today , 2008, IEEE Distributed Systems Online.

[11]  Ilia Petrov,et al.  From Active Data Management to Event-Based Systems and More , 2010, Lecture Notes in Computer Science.

[12]  Enrico Seib,et al.  Distributed Composite Event Detection in Publish/Subscribe Networks - A Case for Self-Organization , 2011, Electron. Commun. Eur. Assoc. Softw. Sci. Technol..

[13]  Helge Parzyjegla,et al.  Adaptive routing in publish/subscribe systems using hybrid routing algorithms , 2008, ARM '08.

[14]  Samuel Kounev,et al.  Stochastic performance analysis and capacity planning of publish/subscribe systems , 2010, DEBS '10.

[15]  Arno Wacker,et al.  Self-stabilizing Automata , 2008, BICC.

[16]  Zahir Tari,et al.  On the Move to Meaningful Internet Systems 2006: CoopIS, DOA, GADA, and ODBASE, OTM Confederated International Conferences, CoopIS, DOA, GADA, and ODBASE 2006, Montpellier, France, October 29 - November 3, 2006. Proceedings, Part I , 2006, OTM Conferences.

[17]  Daniel Graff,et al.  Self-optimizing Hybrid Routing in Publish/Subscribe Systems , 2009, DSOM.

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

[19]  Hartmut Schmeck,et al.  Biologically-Inspired Collaborative Computing - IFIP 20th World Computer Congress, Second IFIP TC 10 International Conference on Biologically-Inspired Collaborative Computing, September 8-9, 2008, Milano, Italy , 2008, BICC.

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

[21]  Helge Parzyjegla,et al.  Model-Driven Development and Adaptation of Autonomous Control Applications , 2008, IEEE Distributed Systems Online.