unraveling unstructured process models marlon dumas university of tartu, estonia joint work with...

29
Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk, BPMN’2010 Workshop, Potsdam, 14 Oct. 2010

Upload: holly-davis

Post on 23-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

Unraveling Unstructured Process Models

Marlon Dumas

University of Tartu, Estonia

Joint work with Artem Polyvyanyy and Luciano García-Bañuelos

Invited Talk, BPMN’2010 Workshop, Potsdam, 14 Oct. 2010

Page 2: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

Poll: Which desk do you prefer?

2

Page 3: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

Poll: Which model do you prefer?

3

Page 4: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

The Problem

• Sometimes, structured is “preferable”– Easier to understand– Easier to analyze– Easier to automatically layout– Easier to abstract (zoom-out)

• But not all models are structured – often for a good reason!

• We know not all models can be structured…

• Which ones can, which ones can’t? 4

Page 5: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

Analysis of Structured Models

5

CTparallel = Max{T1, T2,…, TM}

CT = p1T1+p2T2+…+pmTm=

m

1iiiTp

CT = T/(1-r)

CT = T1+T2+…+ Tm

Laguna & Marklund (2005): Business Process Modeling, Simulation and Design

Page 6: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

Automated Layout and Abstraction

6Wil van der Aalst et al., Process Mining Tutorial

Page 7: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

A Bit of History

7

1968 1969 1970s (and 80s)

Page 8: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

20 years (and 200 papers) later…

• Everything can be structured if you accept to break and continue

• Everyone forgot to release their implementation (they were ashamed since it was full of GOTOs)

8

Page 9: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

40 years (and 400 papers) later• We can structure any BPMN

diagram, except:– “Incorrect” ones– Cycles with multiple exit points– Z-structures– Inclusive join gateways, complex

gateways and other demons

• Try it out: http://sep.cs.ut.ee/Main/bpstruct 9

Page 10: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

Corollary (if you care)

• Any (sound) BPMN model can be transformed into an equivalent (readable) BPEL process definition

10

• If BPEL had break/continue statements or we use boolean variables to simulate break/continue statememts• And the BPMN model does not have inclusive join gateways, complex gateways and other demons• And some other minor details not worth mentioning

Page 11: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

11

Behavioral Equivalence

B

A C

D

B

A C

D

Preserves the level of concurrency in a process model

Sequential simulation of a process model

Fully concurrent bisimilar (FCB)

WeaklybisimilarWeaklybisimilar

Sequential simulation of a process model

C D

A

D C

C D

B

D C

C D

A

D C

C D

B

D C

Page 12: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

Starting Point – Process Structure Tree

12Johnson et al. (PLDI’1994), Vanhatalo et al. (BPM’2008)

Page 13: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

13

Taxonomy of Process Fragments

Process fragment

Trivial Polygon Bond Rigid

■ Trivials, polygons, and bonds are structured fragments■ Rigids are “unstructured”

Homogeneous Heterogeneous

XOR AND

Acyclic Cyclic

Acyclic Cyclic

Pay by cash

Pay by cheque

Update account

ApproveR1

P1

Reject payment request

Inform customer

B1

P2

P3

a

b

c

d

e f

i ot

u

v

w

x y z

13

Page 14: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

Homogeneous XOR Rigid

14

Page 15: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

Homogeneous AND Rigid

15

Page 16: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

Block-structured version…

16

Page 17: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

Homogeneous AND Rigid that cannot be structured

• Causal rules:– {A, B} { C }– { B } { D }

• Overlap on the left-hand side of the rules

Page 18: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

Compare to this…

• Causal relations– {A, B} {C, D}

Page 19: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

Heterogeneous Acyclic Rigid

19

Page 20: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

Equivalent Structured Fragment

20

Page 21: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

The Key Ingredient: Unfoldings

A

B

ct,aet,a

ct

ct,bet,b

ca,u

cb,v

eu

ev

cw

cx

c'w

c'x

ew,c

ex,d

C1

D1

cw,c

cx,d

C2

D2

c'w,c

c'x,d

cc,y

cd,y

c'c,y

c'd,y

ey co

c'oe'y

e'w,c

e'x,d

ci ei

ea

eb

ec

ed

e'c

e'd

A

tt,a

pi

B

tt,b

pt

pt,a

pt,b

tu

tv

pa,u

pb,v

pw

px

C

D

pw,c

px,d

tw,c

tx,d

ty

pc,y

pd,y

poti

ta

tb

tc

td

An unfolding is arepresentation of a net without “merge” points

A complete prefix unfolding is a finite initial part of the unfolding that contains full information about the reachable states

A

B

ct,aet,a

ct

ct,bet,b

ca,u

cb,v

eu

ev

cw

cx

c'w

c'x

ew,c

ex,d

C1

D1

cw,c

cx,d

cc,y

cd,y

ey co

ci ei

ea

eb

ec

ed

21

B

A C

D

Page 22: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

Ordering Relations

■ Two transitions of an occurrence net are in one of the following relations:

□ A and B are in causal relation (A>B), iff there exists a path from A to B

□ A and B are in conflict (A#B), iff there are two transitions t1, t2 that share an input place and there is a path from t1 to A and a path from t2 to B

□ A and B are in concurrency (A||B) relation iff A and B are neither in causal, nor in conflict relation

A

B

ct,aet,a

ct

ct,bet,b

ca,u

cb,v

eu

ev

cw

cx

c'w

c'x

ew,c

ex,d

C1

D1

cw,c

cx,d

C2

D2

c'w,c

c'x,d

cc,y

cd,y

c'c,y

c'd,y

ey co

c'oe'y

e'w,c

e'x,d

ci ei

ea

eb

ec

ed

e'c

e'd

A>C1

B>D2

B#AA#D2

C2||D2

D2||C2

22

Page 23: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

FCB and Ordering Relations

A B C DA

B

C

D

>#

||

>> >#

||

<<<<

B

A C

D B

A C

D

A B C DA

B

C

D

>#

||

>> >#

||

<<<<

Two process models are FCB-equivalent …

… if and only if, (complete prefix) unfoldings of both models expose same ordering relations

23

Page 24: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

Structuring Process Models

B

A C

D

B

A C

D

Compute ordering relationsof the (unstructured) process model

Construct a block-structuredprocess model from ordering

relations

A B C DA

B

C

D

>#

||

>> >#

||

<<<<

24

Page 25: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

Ordering Relations Graph

A B C DA

B

C

D

>#

||

>> >#

||

<<<<

An ordering relations graph

A

B

C

D

25

Page 26: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

Modular Decomposition Tree (MDT)

L1

C1 C2

A

B

C

D

A

B

C

D

C1

A

B

C

D

C1 C2

The MDT is unique and can be computed in linear time

A

B

C

D

C1 C2

L1

B

A C

D

The MDT

■ A linear (L) module is a total order on a set of nodes of a graph■ A complete (C) module is a complete graph, or a clique■ A primitive (P) module is neither trivial, nor linear, nor complete

A module is a set of edges with uniform structure

26

Page 27: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

27

Structuring Acyclic Process Models

B

A

C

D

E

A B

E

C

D

B

A

C

D

E

A primitive module

Let G be an ordering relations graph. The MDT of G has no primitive module, iff there exists a well-structured process model W such that G is the ordering relations graph of W.

Page 28: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

Heterogeneous Cyclic Rigid

28

Page 29: Unraveling Unstructured Process Models Marlon Dumas University of Tartu, Estonia Joint work with Artem Polyvyanyy and Luciano García-Bañuelos Invited Talk,

For further details…

Download and try:

• http://sep.cs.ut.ee/Main/bpstruct

• http://code.google.com/p/bpstruct/

Perspectives:

• Analyze

• Decompose (e.g. for distributed execution)

• Refactor (extract duplicate fragments into subprocesses)

• Visualize

29