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
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.
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 , 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:
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  contains detailed instructions
on how to obtain, and install Eclipse and ECNO. The Introduction chapter of
the technical report  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 .
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:
- Ekkart Kindler: Coordinating Interactions: The Event Coordination Notation.
DTU Compute Technical Report 2014-05, Technical University of Denmark, May 2014.
- 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.
- 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.
- Ekkart Kindler: An ECNO semantics for Petri nets.
Cover Picture Story in Petri Net Newsletter, 81:3-16, October 2012.
- 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.
- 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.
- Ekkart Kindler: Modelling local and global behaviour: Petri nets and event coordination.
In PNSE 2011.
Newcastle, UK, June 20-21, 2011.
- 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.
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.