Fig 1. A Petri net describing the parallel execution of B and C and the sequential execution of A, B, D and A, C, D.Petri nets belong to a special class of directed graphs. The type of Petri nets we introduce here, are Petri nets with individual tokens (colored Petri nets) and constant arc expressions which are composed of places, denoted by circles, transitions, denoted by boxes, arcs from places to transitions, arcs from transitions to places, individual and distinguishable objects that flow through the net as tokens, an initial marking that defines the tokens which each place contains at the beginning, and an expression for every arc that denotes an individual object. A place p is called input place (output place) of transition t if an arc from p to t (from t to p) exists. Fig. 1 shows an example of a simple Petri net. A brief introduction to the theoretical aspects of colored Petri nets can be found, e.g., in [Jensen, 1994]. The standardization of the Petri net concept is currently in progress as an [ISO 15909 committee draft]. Van der [Aalst and Kumar] give an overview of how to describe different workflow patterns using Petri nets. Petri nets are suitable to describe the sequential and parallel execution of tasks with or without synchronization; it is possible to define loops and the conditional execution of tasks. As mentioned above, we use Petri nets not only to model, but furthermore to control the execution of the workflow. In most cases, the workflow within Grid jobs is equivalent to the dataflow, i.e., the decision when to execute a software component is taken by means of availability of the input data. Therefore, the tokens of the Petri net represent real data that is exchanged between the software components. In this case, we use Petri nets to model the interaction between software resources represented by software transitions, and data resources represented by data places. In other cases, however, the workflow should be independent from the dataflow, and in addition to the data places and software transitions we have to introduce control places and control transitions. Control transitions evaluate logical conditions. In the case that a software transition is linked to a command line program, the tokens on the output places contain the exit status of the process (e.g., done, failed), whereas in the case of Grid services, the tokens store the output parameter returned by the method call. The state of the workflow is represented by the marking of the Petri net, which makes it easy to implement tools for workflow check pointing and recovery. We developed a dedicated XML syntax similar to the Petri Net Markup Language (PNML) developed by
Weber and Kindler for specifying Petri nets within the GJobDL. For further details about this Petri net approach, refer to
Hoheisel and Der, 2003a and
2003b.
References
- W.M.P. van der Aalst and A. Kumar, XML based schema definition for support of inter-organizational workflow, University of Colorado and University of Eindhoven report (2000).
- A. Hoheisel and U. Der, An XML-based framework for loosely coupled applications on Grid environments, in: P.M.A. Sloot et al., eds., ICCS 2003, LNCS 2657 (Springer, Berlin Heidelberg, 2003) 245-254.
pdf
- A. Hoheisel and U. Der, Dynamic workflows for Grid applications, in: Proceedings of the Cracow Grid Workshop '03 (Cracow, Poland, 2003).
pdf
- ISO 15909-1, High-level Petri nets - Part 1: Concepts, definitions and graphical notation, 2004.
- ISO 15909-2, High-level Petri nets - Part 2: Transfer Format, Working Draft, 2005
pdf.
- K. Jensen, An introduction to the theoretical Aspects of coloured Petri nets, LNCS 803 (Springer, Berlin Heidelberg New York, 1994) 230-272.
- M. Weber and E. Kindler, The Petri Net Markup Language, in: Petri Net Technology for Communication Based Systems, Lecture Notes in Computer Science, Advances in Petri Nets (Springer, Berlin Heidelberg, 2002).
pdf
- N.A. Mulyar and W.M.P. van der Aalst, Patterns in Colored Petri Nets, BETA Working Paper Series, WP 139, Eindhoven University of Technology, Eindhoven, 2005.
pdf
- W.M.P. van der Aalst, The Application of Petri Nets to Workflow Management, Eindhoven University of Technology, Eindhoven
pdf.
Related
Links