1 / 52

Analysis of workflows a-priori and a-posteriori analysis

Eindhoven University of Technology Faculty of Technology Management Department of Information and Technology P.O. Box 513 5600 MB Eindhoven The Netherlands w.m.p.v.d.aalst@tm.tue.nl. Analysis of workflows a-priori and a-posteriori analysis. Wil van der Aalst. Outline. BPM lifecycle

kiril
Download Presentation

Analysis of workflows a-priori and a-posteriori analysis

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Eindhoven University of Technology Faculty of Technology Management Department of Information and Technology P.O. Box 513 5600 MB Eindhoven The Netherlands w.m.p.v.d.aalst@tm.tue.nl Analysis of workflowsa-priori and a-posteriori analysis Wil van der Aalst

  2. Outline • BPM lifecycle • a-priori analysis • validation • verification • performance analysis • a-posteriori analysis • process mining

  3. The BPM life-cycle

  4. 1993

  5. 1998

  6. 2003

  7. 2008 ???

  8. Design-time (a-priori) and run-time (a-posteriori) questions Run-time Design-time - verification- validation- performance analysis - process mining

  9. Design-time analysis of workflows • Validation is concerned with the relation between the model and reality. • Verification is typically used to answer qualitative questions • Is there a deadlock possible? • It is possible to successfully handle a specific case? • Will all cases terminate eventually? • It is possible to execute two tasks in any order? • Performance analysis is typically used to answer quantitative questions • How many cases can be handled in one hour? • What is the average flow time? • How many extra resources are required? • How many cases are handled within 2 days?

  10. a-priori analysis

  11. Verification: analysis techniques can be used to avoid logical errors. c3 check_policy send_letter c4 c1 c2 c5 start register ready check_damage pay_damage c6 Is this a correct workflow? If not, how to correct it?

  12. WF-net • A WorkFlow (WF) net is a labeled place/transition net with places i and o such that: • i is the only source place, • o is the only sink place, and • all nodes are on a directed path from i to o. i o

  13. i o Soundness • A WF-net is sound if and only if • marking o is reachable from every reachable marking (initial marking is i), • marking o is the only reachable marking marking place o, and • there are no dead transitions.

  14. Syntactic sugaring • Note silent (tau) steps. • Branching bisimulation is used as an equivalence relation to distinguish internal/external choices.

  15. Staffware example revisited …

  16. Corresponding WF-net Not sound!

  17. Results • A WF-net is sound if and only if the short-circuited net is live and bounded. • For free-choice WF-nets soundness can be decided in polynomial time. • For nets without PT and TP handles, soundness can be decided in polynomial time. • Inheritance notions, etc., etc.

  18. problem toolbox modeling Petri net description analysis structural analysis reachability analysis Markovian analysis OR-techniques simulation answers Petri-nets: a solver-independent medium

  19. Reachability analysis

  20. Place invariants can be used to check detect errors • There should be a positive place invariant assigning positive weights to all places and identical weights to begin and end. • 1.begin + 1.end + ..... = constant begin end

  21. Transition invariants can be used to detect errors short-circuited net • There should be a positive transition invariant assigning positive weights to all transitions. begin end

  22. Exercise c3 send_letter check_policy c1 c4 c5 c2 start register ready check_damage pay_damage c6 Use invariants to motivate the correctness of the process definition.

  23. Example process_form send_form c1 c5 archive c3 time-out evaluate start register ready c7 c2 c6 c4 check_proc Sound? Inv.? process_complaint

  24. Example (2) process_form send_form c1 c5 archive c3 time-out evaluate start register ready c2 c6 c4 check_proc Sound? Inv.? process_complaint

  25. Example (3) process_form send_form c1 c5 archive c3 time-out evaluate c8 start register ready c7 c2 c6 c4 check_proc Sound? Inv.? process_complaint

  26. Example (4) process_form send_form c1 c5 archive c3 time-out evaluate start register ready c7 c2 c6 check_proc c4 Sound? Inv.? process_complaint

  27. Example (5) process_form send_form c1 c5 archive c3 time-out evaluate start register ready c7 c2 c6 c4 check_proc Sound? Inv.? process_complaint

  28. Performance analysis Questions: • throughput, waiting and service times • service levels • occupation rates Techniques: • simulation • queuing theory • Markovian analysis

  29. Example: sequential (1) 24 arrivals per hour • average throughput time : 22.2 minutes • service time: 8.0 minutes • waiting time: 14.2 minutes 2 resources, average service time of 4 minutes 2 resources, average service time of 4 minutes c1 task1 c2 task2 c3

  30. Parallel (2) 24 arrivals per hour 2 resources, average service time of 4 minutes • average throughput time : 15 minutes • service time: 4 minutes • waiting time: 11 minutes c21 c23 task1 c1 c3 task2 c22 c24 2 resources, average service time of 4 minutes

  31. Compose (3) • average throughput time : 9.5 minutes • service time: 7.0 minutes • waiting time: 2.5 minutes 24 arrivals per hour 4 resources, average service time of 7 minutes c1 task12 c3

  32. Flexible resources (4) • average throughput time : 14.0 minutes • service time: 8.0 minutes • waiting time: 6.0 minutes 24 arrivals per hour 4 resources, average service time of 4 minutes c1 task1 c2 task2 c3

  33. Triage (5) 1 resource, average service time of 8 minutes • average throughput time : 31.1 minutes • service time: 8.0 minutes • waiting time: 23.1 minutes difficult cases 2 resources, average service time of 4 6 difficult c21 minutes cases per hour task1a c1 c23 task2 c3 task1b 18 easy cases c22 per hour easy cases 1 resource, average service time of 2.66 minutes

  34. Priority (6) easy cases have priority 2 resources, average service time 8 (difficult case) or • average throughput time : 14 minutes • service time: 8 minutes • waiting time: 6 minutes 2.66 (easy case) minutes 6 difficult cases per hour task2 c1 task1 c2 c3 18 easy cases per hour easy cases have priority 2 resources, average service time 8 (difficult case) or 2.66 (easy case) minutes

  35. situation description average average average throughput t. service time waiting t. Situation 1 sequential 22.2 8.0 14.2 Situation 2 parallel 15 4(8) 11(7) Situation 3 compose 9.5 7.0 2.5 Situation 4 flexibility 14.0 8.0 6.0 Situation 5 triage 31.1 8.0 23.1 Situation 6 priorities 14.0 8.0 6.0 Results

  36. Simulation using Protos/ExSpect

  37. Simulation using CPN Tools

  38. a-posteriori analysis

  39. a-posteriori analysis

  40. Process mining: Reversing the process process mining • Process mining can be used for: • Process discovery (What is the process?) • Delta analysis/conformance (Are we doing what was specified?) • Performance analysis (How can we improve?)

  41. Overview 2) process model 3) organizational model 4) social network 1) basic performance metrics 5) performance characteristics 6) auditing/security If …then … www.processmining.org

  42. ProM framework

  43. ProM

  44. Mining plug-in: Alpha algorithm

  45. Mining plug-in: Genetic Miner

  46. Mining plug-in: Multi-phase mining

  47. Mining plug-in: Social network miner

  48. Analysis plug-in: Conformance checker Fitness: 0.99521846

  49. Behavioral appropriateness: 0.970471 Structural appropriateness: 0.5263158 More advanced approaches: Footprints and state-space-based methods.

More Related