Modeling and Analyzing Self-Adaptive Systems with Context Petri Nets

The development of self-adaptive systems requires the definition of the parts of the system that will be adapted, when such adaptations will take place, and how these adaptations will interact with each other. However, foreseeing all possible adaptations and their interactions is a difficult task, opening the possibility to inconsistencies or erroneous system behavior. To avoid inconsistencies, self adaptive systems require a sound programming model that allows to reason about the correctness of the system in spite of its dynamic reconfigurations. This paper presents context Petri nets, a Petri net-based programming model for self-adaptive systems. This model provides a formal definition of adaptations and their interaction, as well as a consistent process for their inclusion in the system. Besides serving as an underlying run-time model to ensure that adaptations and their constraints remain consistent, context Petri nets allow to analyze properties such as reachability, and liveness in the configuration of self-adaptive systems. Context Petri nets thus are a convenient tool to model and analyze the dynamics of self-adaptive systems, both formally and computationally.

[1]  Nadia Busi Analysis issues in Petri nets with inhibitor arcs , 2002, Theor. Comput. Sci..

[2]  Michael G. Hinchey,et al.  The ASSL approach to specifying self‐managing embedded systems , 2012, Concurr. Comput. Pract. Exp..

[3]  Robert Laddaga,et al.  Self-Adaptive Software , 2001, Lecture Notes in Computer Science.

[4]  Kim Mens,et al.  Subjective-C - Bringing Context to Mobile Platform Programming , 2010, SLE.

[5]  Kim Mens,et al.  Uniting global and local context behavior with context Petri nets , 2012, COP@ECOOP.

[6]  Klaus Reinhardt,et al.  Reachability in Petri Nets with Inhibitor Arcs , 2008, RP.

[7]  Kurt Jensen,et al.  An Introduction to the Theoretical Aspects of Coloured Petri Nets , 1993, REX School/Symposium.

[8]  Rik Eshuis,et al.  Reactive Petri Nets for Workflow Modeling , 2003, ICATPN.

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

[10]  Ramachandra Kota,et al.  Decentralized approaches for self-adaptation in agent organizations , 2012, TAAS.

[11]  Kim Mens,et al.  Context Petri Nets: Enabling Consistent Composition of Context-dependent Behavior , 2012, PNSE.

[12]  Jesper Andersson,et al.  FORMS: Unifying reference model for formal specification of distributed self-adaptive systems , 2012, TAAS.

[13]  Serge Haddad,et al.  Application and Theory of Petri Nets , 2012, Lecture Notes in Computer Science.

[14]  Betty H. C. Cheng,et al.  Model-based development of dynamically adaptive software , 2006, ICSE.

[15]  Karsten Schmidt LoLA: a low level analyser , 2000 .

[16]  F. Bause On the analysis of Petri nets with static priorities , 1996, Acta Informatica.

[17]  Matteo Pradella,et al.  Context-oriented programming: A software engineering perspective , 2012, J. Syst. Softw..