BPMN Business Management Presentations Process Management Process Modeling

Marlon Dumas @ BPMN 2010

Transcript

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
Poll: Which desk do you
prefer?
2
Poll: Which model do you prefer?
3
The Problem
•  Premise: Structured is “better”
–  Easier to understand
–  Easier to analyze
–  Easier to automatically layout
–  Easier to abstract (zoom-out)
•  We know not all models can be structured…
•  Which ones can, which ones can’t?
4
Analysis of Structured Models
5
CTparallel = Max{T1, T2,…, TM}
CT = p1T1+p2T2+…+pmTm=
CT = T/(1-r)
CT = T1+T2+…+ Tm
Laguna & Marklund (2005): Business Process Modeling, Simulation and Design
Automated Layout and Abstraction
6
Wil van der Aalst et al., Process Mining Tutorial
A Bit of History
7
1968 1969 1970s (and 80s)
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
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
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
11
Behavioral Equivalence
Preserves the level of concurrency in
a process model
Sequential simulation of a
process model
Fully concurrent
bisimilar (FCB)
Weakly
bisimilar
Weakly
bisimilar
Sequential simulation of a
process model
Starting Point – Process
Structure Tree
12
Johnson et al. (PLDI’1994), Vanhatalo et al. (BPM’2008)
13
Taxonomy of Process Fragments
■  Trivials, polygons, and bonds are structured fragments
■  Rigids are “unstructured”
13
Homogeneous XOR Rigid
14
Homogeneous AND Rigid
15
Block-structured version…
16
Homogeneous AND Rigid that
cannot be structured
•  Causal rules:
–  {A, B}  { C }
–  { B }  { D }
•  Overlap on the left-hand side of the rules
Compare to this…
•  Causal relations
–  {A, B}  {C, D}
Heterogeneous Acyclic Rigid
19
Equivalent Structured Fragment
20
The Key Ingredient: Unfoldings
An unfolding is a
representation 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
21
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>C1
B>D2
B#A
A#D2
C2||D2
D2||C2
22
FCB and Ordering Relations
Two process models are FCB-equivalent …
… if and only if, (complete prefix) unfoldings of both models expose
same ordering relations
23
Structuring Process Models
Compute ordering relations
of the (unstructured)
process model
Construct a block-structured
process model from ordering
relations
24
Ordering Relations Graph
An ordering relations graph
25
Modular Decomposition Tree (MDT)
  The MDT is unique and can be computed in linear time
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
27
Structuring Acyclic Process Models
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.
Heterogeneous Cyclic Rigid
28
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

Leave a Comment

Get the BPI Web Feed

Using the HTML code below, you can display this Business Process Incubator page content with the current filter and sorting inside your web site for FREE.

Copy/Paste this code in your website html code:

<iframe src="https://www.businessprocessincubator.com/content/marlon-dumas-bpmn-2010/?feed=html" frameborder="0" scrolling="auto" width="100%" height="700">

Customizing your BPI Web Feed

You can click on the Get the BPI Web Feed link on any of our page to create the best possible feed for your site. Here are a few tips to customize your BPI Web Feed.

Customizing the Content Filter
On any page, you can add filter criteria using the MORE FILTERS interface:

Customizing the Content Filter

Customizing the Content Sorting
Clicking on the sorting options will also change the way your BPI Web Feed will be ordered on your site:

Get the BPI Web Feed

Some integration examples

BPMN.org

XPDL.org

×