Page 67 -
P. 67

54                                            N. Russell and A. ter Hofstede
                              Over the years since their initial definition, Petri nets have proven to be an
                           extremely useful mechanism for capturing the details associated with concurrent
                           systems and reasoning about them. To increase their applicability to the business
                           process domain, the workflow nets were devised.

                           2.3.2 Workflow Nets


                           Workflow nets were developed by van der Aalst as a means of describing work-
                           flow processes in a precise way that makes them amenable to subsequent analysis
                           both at design time and runtime. Workflow nets are directly based on Petri nets and
                           consequently share all of their advantages in terms of determinism and the range
                           of available analysis techniques. In a workflow net, transitions represent the tasks
                           that comprise a business process and places represent the conditions preceding and
                           following the tasks. Although they are based on Petri nets, workflow nets are subject
                           to some additional constraints:
                           1. A workflow net has a single start place and a single end place. Aside from ana-
                              lytic considerations, this means that workflow nets closely correspond to real-life
                              processes that tend to have a specific starting point and a specific end point.
                           2. Every transition in the workflow net is on a path from the start to the end place.
                              This ensures that each transition in a workflow net contributes to the progression
                              of an executing instance towards its end state.
                           We can formalize the notion of a workflow net and its correspondence with a Petri
                           net in the following way:
                           Definition 7. (WF-net). A Petri net PN D .P;T;F/ is a WF-net (workflow net) if
                           and only if:
                             PN has two special places: i and o. Place i is a source place:  i D ∅: Place o is
                              a sink place: o D ∅.
                             If we add a transition t  to PN , which connects place o with i (i.e.  .t / D o

                              and .t / D i), then the resulting Petri net is strongly connected.

                           It is important to note that these are the minimal requirements for a workflow net. By
                           themselves they do not guarantee that a candidate workflow net will not potentially
                           be subject to deadlock or livelock. To ensure that this is the case, there are two
                           additional requirements that apply to a workflow net:

                             Any executing instance of a workflow net must eventually terminate, and at the
                              moment of termination there must be precisely one token in the end place o and
                              all other places in the workflow net must be empty.
                             There should be no dead tasks, that is, it should be possible to execute an arbitrary
                              task by following the appropriate route through the WF-net.
                           The application of these two additional constraints corresponds to the soundness
                           property, which ensures that any given process instance behaves in a predictable
                           way.
   62   63   64   65   66   67   68   69   70   71   72