Context Petri Nets Enabling Consistent Definition of Context-Dependent Behavior

The paper Context Petri Nets: Enabling Consistent Definition of Context-Dependent Behavior has been accepted for the International Workshop on Petri Nets and Software Engineering PNSE'12 co-located with Petri Nets 2012.

Ensuring the consistent composition of context-dependent behavior is a major challenge in context-aware systems. Developers have to manually identify and validate existing interactions between behavioral adaptations, which is far from trivial. This paper presents a run-time model for the consistency management of context-dependent behavior, called context Petri nets. Context Petri nets provide a concrete representation of the execution context of a system, in which it is possible to represent the interactions due to dynamic and concurrent context changes. In addition, our model allows the definition of dependency relations between contexts, which are internally managed to avoid inconsistencies. We have successfully integrated context Petri nets with the Subjective-C language for context-oriented programming. We show how our model can be cleanly combined with the abstractions of the language to define and manage context-dependent behavior.