Modelling Local and Global Behaviour: Petri Nets and Event Coordination

Today, it is possible to generate major parts of a software system from models. Most of the generated code, however, concerns the structural parts of the software; the code that concerns the actual functionality or behaviour of the software system is often still programmed manually. In order to address this problem, we developed the notation of coordination diagrams, which allows us to define the global behaviour of a software system on top of existing class diagrams. One of the major objectives of coordination diagrams was to make it easy to integrate them and the code generated from them with existing structural models, with existing code, and with other behavioural models. Basically, coordination diagrams define how the local behaviour of the individual parts of the software is coordinated with each other. The main concepts of coordination diagrams and their semantics are stabilising now: We call it the Event Coordination Notation (ECNO).

[1]  Ekkart Kindler The ePNK: An Extensible Petri Net Tool for PNML , 2011, Petri Nets.

[2]  Olaf Kummer A Petri Net View on Synchronous Channels , 1999 .

[3]  Robin Milner,et al.  A Calculus of Mobile Processes, II , 1992, Inf. Comput..

[4]  D. Walker,et al.  A Calculus of Mobile Processes, Part Ii , 1989 .

[5]  Joseph Sifakis,et al.  Modeling Heterogeneous Real-time Components in BIP , 2006, Fourth IEEE International Conference on Software Engineering and Formal Methods (SEFM'06).

[6]  Robin Milner,et al.  A Calculus of Mobile Processes, II , 1992, Inf. Comput..

[7]  Harold Ossher,et al.  Subject-oriented programming: a critique of pure objects , 1993, OOPSLA '93.

[8]  Ekkart Kindler,et al.  AMFIBIA: a meta-model for integrating business process modelling aspects , 2007, Int. J. Bus. Process. Integr. Manag..

[9]  Daniel Moldt,et al.  An Extensible Editor and Simulation Engine for Petri Nets: Renew , 2004, ICATPN.

[10]  David Harel,et al.  Come, Let’s Play , 2003, Springer Berlin Heidelberg.

[11]  Søren Christensen,et al.  Coloured Petri Nets Extended with Channels for Synchronous Communication , 1992, Application and Theory of Petri Nets.

[12]  Ashley T. McNeile,et al.  State Machines as Mixins , 2003, J. Object Technol..

[13]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[14]  Ekkart Kindler Model-based software engineering: the challenges of modelling behaviour , 2010, BM-FA '10.

[15]  Ekkart Kindler,et al.  Integrating behaviour in software models: an event coordination notation -- concepts and prototype , 2011, BM-FA '11.

[16]  Ekkart Kindler,et al.  AMFIBIA: A Meta-Model for the Integration of Business Process Modelling Aspects , 2006, The Role of Business Processes in Service Oriented Architectures.

[17]  William G. Griswold,et al.  An Overview of AspectJ , 2001, ECOOP.

[18]  Edward A. Lee,et al.  Taming heterogeneity - the Ptolemy approach , 2003, Proc. IEEE.

[19]  Ekkart Kindler ePNK: A generic PNML tool - Users' and Developers' Guide: version 0.9.1 , 2011 .

[20]  James L. Peterson,et al.  Petri Nets , 1977, CSUR.

[21]  Hanna Klaudel,et al.  M-nets: An algebra of high-level Petri nets, with an application to the semantics of concurrent programming languages , 1998, Acta Informatica.

[22]  Gérard Berry,et al.  The chemical abstract machine , 1989, POPL '90.

[23]  Rüdiger Valk,et al.  Petri Nets as Token Objects: An Introduction to Elementary Object Nets , 1998, ICATPN.

[24]  David Harel,et al.  Come, let's play - scenario-based programming using LSCs and the play-engine , 2003 .

[25]  Edward A. Lee The problem with threads , 2006, Computer.

[26]  Siobhán Clarke,et al.  Aspect-oriented analysis and design - the theme approach , 2005, Addison Wesley object technology series.

[27]  Ekkart Kindler,et al.  Aspect-oriented modelling from a different angle: modelling domains with aspects , 2008 .

[28]  Stephen J. Mellor,et al.  Executable UML - A Foundation for Model-Driven Architecture , 2002, Addison Wesley object technology series.

[29]  Tadao Murata,et al.  Petri nets: Properties, analysis and applications , 1989, Proc. IEEE.

[30]  Raymond R. Devillers,et al.  The box calculus: a new causal algebra with multi-label communication , 1992, Advances in Petri Nets: The DEMON Project.

[31]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[32]  Ekkart Kindler The event coordination notation: execution engine and programming framework , 2012, BM-FA '12.

[33]  Frank Budinsky,et al.  Eclipse Modeling Framework , 2003 .