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

52
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 [email protected]
  • date post

    20-Dec-2015
  • Category

    Documents

  • view

    216
  • download

    0

Transcript of 1 Analysis of workflows a-priori and a-posteriori analysis Wil van der Aalst Eindhoven University of...

1

Analysis of workflows a-priori and a-posteriori analysis

Wil van der Aalst

Eindhoven University of TechnologyFaculty of Technology ManagementDepartment of Information and TechnologyP.O. Box 513 5600 MB EindhovenThe [email protected]

2

Outline

• BPM lifecycle

• a-priori analysis

– validation

– verification

– performance analysis

• a-posteriori analysis

– process mining

3

The BPM life-cycle

processdesign

implementation/configuration

processenactment

diagnosis

4

1993

processdesign

implementation/configuration

processenactment

diagnosis

5

1998

processdesign

implementation/configuration

processenactment

diagnosis

6

2003

processdesign

implementation/configuration

processenactment

diagnosis

7

2008 ???

processdesign

implementation/configuration

processenactment

diagnosis

8

Design-time (a-priori) and run-time (a-posteriori) questions

processdesign

implementation/configuration

processenactment

diagnosis

Run-time Design-time

- process mining

- verification- validation- performance analysis

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.

Is this a correct workflow?If not, how to correct it?

pay_damage

check_policy

readystart registerc5

c6

c4

c3

c2

c1

check_damage

send_letter

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

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

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

registeri

checkA

checkB

pay

reject

o

Not sound!

17

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

Petri-nets: a solver-independent medium

problem

Petri net description

toolbox

reachability analysis

Markovian analysis

simulation

structural analysis

OR-techniques

modelinganalysis

answers

20

Reachability analysis

RECORD

CONC

PAY

SENDL

FILE

INFORM

COLLECT

ARCHIVE

End

c1

c6 c7 c8

c2

c3

c4 c5

Start

c1,c6

c1,c7

c1,c8

c2,c6

c3,c6

c2,c7

c3,c7

c2,c8

c3,c8

c4,c6

c4,c7

c4,c8

c5,c6

c5,c7

c5,c8

End

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

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

Exercise

pay_damage

check_policy

readystart registerc5

c6

c4

c3

c2

c1

check_damage

send_letter

Use invariants to motivate the correctness of the process definition.

24

Example

start register

send_form

evaluate

process_complaint

check_proc

process_form

time-outarchive

ready

c1

c2

c3

c4

c5

c6

c7

Sound?Inv.?

25

Example (2)

start register

send_form

evaluate

process_complaint

check_proc

process_form

time-outarchive

ready

c1

c2

c3

c4

c5

c6

Sound?Inv.?

26

Example (3)

start register

send_form

evaluate

process_complaint

check_proc

process_form

time-outarchive

ready

c1

c2

c3

c4

c5

c6

c7

c8

Sound?Inv.?

27

Example (4)

start register

send_form

evaluate

process_complaint

check_proc

process_form

time-outarchive

ready

c1

c2

c3

c4

c5

c6

c7

Sound?Inv.?

28

Example (5)

start register

send_form

evaluate

process_complaint

check_proc

process_form

time-outarchive

ready

c1

c2

c3

c4

c5

c6

c7

Sound?Inv.?

29

Performance analysisQuestions:• throughput, waiting and service times

• service levels

• occupation rates

Techniques:• simulation

• queuing theory

• Markovian analysis

30

Example: sequential (1)

• average throughput time : 22.2 minutes

• service time: 8.0 minutes

• waiting time: 14.2 minutes

task2task1 c3c1 c2

2 resources, averageservice time of 4 minutes

24 arrivals per hour

2 resources, averageservice time of 4 minutes

31

Parallel (2)

• average throughput time : 15 minutes

• service time: 4 minutes

• waiting time: 11 minutes

task2

task1

c3c1

c21

24 arrivals per hour

c23

c24c22

2 resources, averageservice time of 4 minutes

2 resources, averageservice time of 4 minutes

32

Compose (3)

• average throughput time : 9.5 minutes

• service time: 7.0 minutes

• waiting time: 2.5 minutes

task12 c3c1

24 arrivals per hour

4 resources, averageservice time of 7 minutes

33

Flexible resources (4)

• average throughput time : 14.0 minutes

• service time: 8.0 minutes

• waiting time: 6.0 minutes

task2task1 c3c1 c2

24 arrivals per hour

4 resources, averageservice time of 4 minutes

34

Triage (5)

• average throughput time : 31.1 minutes

• service time: 8.0 minutes

• waiting time: 23.1 minutes

task1b

task1a

c3

c1

c216 difficultcases per hour

c23

c22

1 resource, averageservice time of 8 minutes

1 resource, averageservice time of 2.66 minutes

task2

2 resources, averageservice time of 4minutes

18 easy casesper hour

difficult cases

easy cases

35

Priority (6)

• average throughput time : 14 minutes

• service time: 8 minutes

• waiting time: 6 minutes

task2

task1 c3

c1

c2

easy cases have priority2 resources, averageservice time 8 (difficult case) or2.66 (easy case) minutes

6 difficult casesper hour

18 easy casesper hour easy cases have priority

2 resources, averageservice time 8 (difficult case) or2.66 (easy case) minutes

36

Results

situation description average

throughput t.

average

service time

average

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

37

Simulation using Protos/ExSpect

38

Simulation using CPN Tools

39

a-posteriori analysis

40

a-posteriori analysis

informationsystem

operationalprocess

processmodels

eventlogs

models

processdiscovery

conformancetesting

records

configures

supports/controls

(un)desiredproperties

log-based verification

refers to

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

Registerorder

Prepareshipment

Shipgoods

Receivepayment

(Re)sendbill

Contactcustomer

Archiveorder

42

Overview

1) basic performance metrics

2) process modelStart

Register order

Prepareshipment

Ship goods

(Re)send bill

Receive paymentContact

customer

Archive order

End

3) organizational model 4) social network

5) performance characteristics

If …then …

6) auditing/security

www.processmining.org

43

ProM framework

44

ProM

Staffware

InConcert

MQ Series

workflow management systems

FLOWer

Vectus

Siebel

case handling / CRM systems

SAP R/3

BaaN

Peoplesoft

ERP systems

common XML format for storing/exchanging workflow logs

input/outputCore

Plugins

ProMframework

visualization analysis

alpha algorithmgenetic

algorithmTsinghua alpha

algorithmMulti phasealgorithms

social networkminer

case dataextraction

property verifier

ExternalTools

NetMiner Viscovery ......

...

45

Mining plug-in: Alpha algorithm

46

Mining plug-in: Genetic Miner

47

Mining plug-in: Multi-phase mining

48

Mining plug-in: Social network miner

49

Fitness:0.99521846

Analysis plug-in: Conformance checker

50

Behavioral appropriateness:0.970471

Structural appropriateness:0.5263158

More advanced approaches: Footprints and state-space-based methods.

51

Another analysis plug-in: LTL checker

52

Research challenges

processdesign

implementation/configuration

processenactment

diagnosis

Run-time Design-time

- process mining

- verification- validation- performance analysis

system development language/standards development