Petri nets are the right tool for modelling of control flow of workflow processes. For more accurate reflection of reality it is necessary to extend Petri nets by more components. For this purpose, modelling language Petriflow was created, that adds roles and data variables to Petri nets and maps roles and data variables to transitions. Development of the language is deeply influenced by real requests incoming from customers or developers modelling complex processes. Every feature of the language is based on real life needs of modelling more robust and complex processes. Based on experience each property of the language was abstracted from real life models of processes. In Petriflow it is possible to model control flow of processes via place/transition Petri nets enriched by reset arcs, inhibitor arcs and read arcs. Petriflow language also introduces layer of roles and data variables into nets. The roles define who can assign an enabled transition and who can execute a transition of the net. The relation between data variables can be defined with another property of the language named Actions. In contrast with other modelling languages, Petriflow allows to set visual aspect of a modelled process, such as behaviour and style of presentation for components.

Published and presented at AWPN 2017: Algorithms and Tools for Petri nets workshop.

Authors: Milan Mladoniczky, Gabriel Juhás, Juraj Mažári, Tomáš Gažo, and Martin Makáň