The Event Coordination Notation (ECNO)



The Event Coordination Notation (ECNO) is a notation to coordinate the behaviour among related model elements that are defined in structural diagrams such as class diagrams. The ECNO allows the definition of events and provides means for defining how different related model events need to join or participate in the execution of these events: an interaction.


The local behaviour of each element defines, in which events an element could participate, which parameters are contributed, and which action is executed once an interaction is established and executed.


In the ECNO protoype that is available below, there is an ECNO runtime engine, and there is an extension of Petri nets (ECNO nets) that allow to define the local behaviour of elements. And there is a code generator that allows to generated the code for the local behaviour of ECNO nets. Moreover, there is an example deployed with this prototype.




ECNO Tool: Screenshot The ECNO Tool supports all major modelling features of ECNO and is in a stable state now. Version 0.3.2 of the ECNO Tool was published on May 13, 2014 along with some examples.


At the same time an extensive documentation of ECNO was published as a technical report [1], which covers the motivation and objective of ECNO, the modeling notations, as well as the use of the ECNO Tool and its programming framework, along with several examples.


The ECNO Tool is based on Eclipse and the Eclipse Modeling Framework (EMF) and the ePNK. It can be installed from the ECNO update site for version 0.3.2: http://www2.imm.dtu.dk/~ekki/projects/ECNO/download/releases/0.3.2/. Version 0.3.2 of the ECNO Tool was tested for Eclipse Indigo, Juno and Kepler, and seems to work (not thoroughly tested yet) also for Eclipse Luna.


Appendix B of the technical report [1] contains detailed instructions on how to obtain, and install Eclipse and ECNO. The Introduction chapter of the technical report [1] gives a brief overview of ECNO's main concepts, the use of the ECNO Tool along an example that is deployed together with version 0.3.2 of the ECNO Tool.


You will find some more information on version 0.3.2 of the ECNO Tool and an overview of its features at http://www2.imm.dtu.dk/~ekki/projects/ECNO/version-0.3.2. For much more detailed information, we refer to the technical report [1].




Since the ECNO is ongoing research, different prototypes of ECNO and its engine have already been published earlier. Below, you will find a list of earlier releases and protoypes of ECNO:



  1. Ekkart Kindler: Coordinating Interactions: The Event Coordination Notation. DTU Compute Technical Report 2014-05, Technical University of Denmark, May 2014.


  2. Jesper Jepsen: Realizing a Workow Engine with the Event Coordination Notation — A Case-study Evaluating the Event Coordination Notation. Master thesis, IMM-M.Sc.-2013-101, DTU Compute, Technical University of Denmark, September 2013.


  3. Ekkart Kindler: Modelling Local and Global Behaviour: Petri Nets and Event Coordination.
    In K. Jensen, W.M.P. van der Aalst, M. Ajmone Marsan, G. Franceschinis, J. Klejn and L.M. Kristensen (eds.): Transactions on Petri Nets and Other Models of Concurrency VI, LNCS 7400, pp. 71--93. Springer 2012.


  4. Ekkart Kindler: An ECNO semantics for Petri nets. Cover Picture Story in Petri Net Newsletter, 81:3-16, October 2012.


  5. Ekkart Kindler: The Event Coordination Notation: Execution engine and programming framework.
    In H. Störrle, G. Botterweck, M. Bourdellès, D. Kolovos, R. Paige, E. Roubtsova, J. Rubin, J.-P. Tolvanen (eds.), Joint Proceedings of co-located Events at the 8th European Conference on Modelling Foundations and Applications (ECMFA 2012), BM-FA '12, pages 143-157, July 2012.


  6. Ekkart Kindler: Integrating behaviour in software models: An event coordination notation — concepts and prototype. In: 3rd Workshop on Third Workshop on Behavioural Modelling - Foundations and Application, Proceedings. Birmingham, UK, June 6, 2011.


  7. Ekkart Kindler: Modelling local and global behaviour: Petri nets and event coordination. In PNSE 2011. Newcastle, UK, June 20-21, 2011.


  8. Ekkart Kindler: ePNK: A generic PNML tool - Users' and Developers' Guide for Version 1.0.0.
    IMM-Technical Report-2012-14, DTU Informatics, Kgs. Lyngby, Denmark, December 2012. Extended and revised version of IMM-Technical Report-2011-03.


The ideas of ECNO gradually evolved over several years and started out in a quite different field of research. Over the time, different students have done projects that directly or indirectly contributed to the concepts of ECNO: The students of the AMFIBIA project at the University of Paderborn: Achim Heynen, André Altenau, Christiane Klapdohr, David Schmelter, Dennis Goeken, Elmar Köhler, Patrick Könemann, and Peter Pietrzyk. David Schmelter elaborated some parts in his master's thesis. Moreover, there were students at the Technical University of Denmark: Lukasz Nowak and Yang Li did their masters' thesis on AMFIBIA and MoDowA; Tigran Tchougourian, Piotr Borowian, Maciej Zarzycki, and Vaidas Karosas did a related project in the course "Advanced Topics in Software Engineering". Jesper Jensen used the ECNO engine for implementing a workflow engine.


Moreover, my co-researchers on AMFIBIA, Björn Axenath and Vladimir Rubin, contributed to what became ECNO now.


Likewise, Steve Hostettler, Elzbieta Pielenz, and Ranghild van der Straeten contributed with their discussion and comments in the earlier stages of AMFIBIA and ECNO.


It is difficult to attribute which ideas of ECNO where inspired by whom. But, I would like to thank all the people above for their work, their ideas, and many interesting discussions.



Ekkart Kindler (), May 13, 2011 (last updated Nov. 16, 2015)