Workflow Management Kap. 4. Analyzing Workflows Wil van der Aalst has copyrights to almost all figures in the following slideshow made by Lars Frank.
“Soundness” analysis can prevent logical errors:
Soundness property:
Unbounded and never ending loop error: A petri net is bounded when there is an upper limit for tokens. A petri net is safe when the upper limit for tokens is one for all places = Bounded by value one.
Soundness property proof: If a transition is replaced by a sound workflow, then the resulting workflow is also sound.
Examples of Sound nets:
Example of Sound proof:
Why is there no proof for the soundness property?
Techniques to analyze workflows: (About the structure of the workflow. For example soundness) (About attribute values and management of the workflow)
Is this process correct? (In analyzing the workflow you should use the knowledge learned from the previous example)
Dangling tasks error = Petri net is not live: A petri net is live when all tasks can be loaded.
Deadlock illustration where both Trans1 and Trans2 want to lock(låse) Object1 and Object2:
Fairness property: The fairness property says that if a task potentially can be executed, then it will be executed sooner or later. Does the workflow have a logical error if task2 is a “marriage” that produce “families”?
Hanging cases before termination:
Petri-net analysis :
Reachability graph without cycles: Reachability graph with reachable states:
Reachability graph with cycles: (red1,green1,yellow1,safe,red2,green2,yellow2,safe) Green Both red Yellow Green
Some petri nets has Place invariants: Place invariants = Constant calculated as the weightet sum of the tokens in each place. Example: man +woman + 2 * couple = 7
Performance analysis: Computer simulation is the repeated execution of a process where choices are made upon various probability distributions. A Markov chain is a reachability graph with the probability of transition added to it.
The following slides illustrate 6 different basic workflow constructions for integrating 2 activities:
Example 1. Sequential:
Example 2. Parallel:
Example 3. Compose:
Example 4. Flexible resources:
Example 5. Triage:
Example 6. Priority:
Example 7. Results of analysis:
Guidelines for workflow design:
Calculate capacity and utilization: If x is the execution time for a task then 1/x is the capacity and N/x the utilization when N cases are executed.
A general queue model:
A queue model with even distribution for arrivals:
A queue model with negative exponential distribution for arrivals:
Properties of simulation:
Prove the soundness of the coupled e- commerce workflow?
Which e- commerc e model will you re- commend in practice?
End of session Thank you !!!
Petri net Work flow for global E-commerce transactions where the stocks are in the locations of the different suppliers. OR split
Sub- Petri net of activity 2 AND split OR split AND join
Exercise in quantitative analysis: