Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Analysis of workflows a-priori and a-posteriori analysis Wil van der Aalst Eindhoven University of Technology Faculty of Technology Management Department.

Similar presentations


Presentation on theme: "1 Analysis of workflows a-priori and a-posteriori analysis Wil van der Aalst Eindhoven University of Technology Faculty of Technology Management Department."— Presentation transcript:

1 1 Analysis of workflows a-priori and a-posteriori analysis Wil van der Aalst 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

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

3 3 The BPM life-cycle

4 4 1993

5 5 1998

6 6 2003

7 7 2008 ???

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

9 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 10 a-priori analysis

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

12 12 WF-ne t 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 13 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. i o

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

15 15 Staffware example revisited …

16 16 Corresponding WF-net Not sound!

17 17

18 18 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.

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

20 20 Reachability analysis

21 21 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 endbegin

22 22 Transition invariants can be used to detect errors There should be a positive transition invariant assigning positive weights to all transitions. endbegin short-circuited net

23 23 Exercise pay_damage check_policy readystartregister c5 c6 c4 c3 c2 c1 check_damage send_letter Use invariants to motivate the correctness of the process definition.

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

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

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

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

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

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

30 30 Example: sequential (1) average throughput time : 22.2 minutes service time: 8.0 minutes waiting time: 14.2 minutes task2task1c3c1c2 2 resources, average service time of 4 minutes 24 arrivals per hour 2 resources, average service time of 4 minutes

31 31 Parallel (2) average throughput time : 15 minutes service time: 4 minutes waiting time: 11 minutes task2 task1 c3 c1 c21 24 arrivals per hour c23 c24c22 2 resources, average service time of 4 minutes 2 resources, average service time of 4 minutes

32 32 Compose (3) average throughput time : 9.5 minutes service time: 7.0 minutes waiting time: 2.5 minutes task12c3c1 24 arrivals per hour 4 resources, average service time of 7 minutes

33 33 Flexible resources (4) average throughput time : 14.0 minutes service time: 8.0 minutes waiting time: 6.0 minutes task2task1c3c1c2 24 arrivals per hour 4 resources, average service time of 4 minutes

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

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

36 36 Results

37 37 Simulation using Protos/ExSpect

38 38 Simulation using CPN Tools

39 39 a-posteriori analysis

40 40 a-posteriori analysis

41 41 Process mining: Reversing the process 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?) process mining

42 42 Overview 1) basic performance metrics 2) process model3) organizational model4) social network 5) performance characteristics If …then … 6) auditing/security www.processmining.org

43 43 ProM framework

44 44 ProM

45 45 Mining plug-in: Alpha algorithm

46 46 Mining plug-in: Genetic Miner

47 47 Mining plug-in: Multi-phase mining

48 48 Mining plug-in: Social network miner

49 49 Fitness: 0.99521846 Analysis plug-in: Conformance checker

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

51 51 Another analysis plug-in: LTL checker

52 52 Research challenges Run-timeDesign-time - process mining - verification - validation - performance analysis system development language/standards development


Download ppt "1 Analysis of workflows a-priori and a-posteriori analysis Wil van der Aalst Eindhoven University of Technology Faculty of Technology Management Department."

Similar presentations


Ads by Google