Performance Evaluation of Business Processes through a Formal Transformation to SAN
Performance Evaluation of Business
Processes through a Formal
Transformation to SAN
Kelly Rosa Braghetto
1, João Eduardo Ferreira
1, Jean-Marc Vincent
21
Department of Computer Science
2Grenoble Informatics Laboratory
Institute of Mathematics and Statistics
INRIA – MESCAL Project
University of São Paulo
Joseph Fourier University
Agenda
1
Business Processes
Modeling and Analysis
Performance Evaluation: Challenges and Objectives
2
Modeling Techniques Used in this Work
Business Process Model and Notation
Stochastic Automata Networks
3
Automated Conversion from Business Process Models to SAN
Structure of BPMN and SAN Models and their Operations
Conversion Algorithm (Example)
4
Conclusion
Contributions and Discussion
Other Related Works
Performance Evaluation of Business Processes through a Formal Transformation to SAN Business Processes
Modeling and Analysis
Business Process Management
Techniques, languages and tools to support process life cycle
Design,
Execution,
Monitoring,
Analysis
Why it is important to analyze business processes?
They are everywhere (e-commerce, e-government, production)
Thousands of people depend on their reliability
Qualitative Analysis
× Quantitative Analysis
Verification (syntactical correction)
Validation (semantical correction)
Performance analysis
Performance Analysis of Business Processes
Common performance indices
Responsiveness – service and waiting times
Productivity – throughput
Utilization – utilization rate of resources
Quality of service, reliability
Possible approaches for performance evaluation
Measuring
Simulation
Performance Evaluation of Business Processes through a Formal Transformation to SAN Business Processes
Performance Evaluation: Challenges and Objectives
Business Process Modeling
Domain-specific languages
Business Process Model and Notation (BPMN), Event-driven
Process Chains (EPC), Unified Modeling Language (UML)
Do not have formal semantics and focus on control-flow
Hard to model resources and quantify modeled behaviors
Our approach: automated conversion to stochastic models
BPMN
⇒
SAN (
Stochastic Automata Networks)
Association of time with tasks
Association of probabilities with alternative flows
Characterization of resource usage
Performance Evaluation of Business Processes
via Analytical Modeling
Create Business Process Model Gather Quantitative Aspects business process Create Stochastic Models Analyze Numerically Integrate Results set of SAN models performance indices numerical results BPMN model annotated model of process + resources
Performance Evaluation of Business Processes through a Formal Transformation to SAN Modeling Techniques Used in this Work
Business Process Model and Notation
Business Process Model and Notation (BPMN)
Shipment Process of a Hardware Retailer
Take out extra insurance Decide if normal post or special shipment Check if extra insurance is necessary Fill in a Post label Request quotes from carriers Assign a carrier & prepare paperwork Package Goods Move package to pick area Goods to ship Goods for pick mode of delivery 20% - Extra insurance required 100% - Post label (always required)
85% - Normal Post 15% - Special Carrier H ar dw ar e R et ai le r L og is ti cs M an ag er C le rk W ar eh ou se W or ke r A B C D E F G H Average Execution Time A : 05 min B : 30 min C : 10 min D : 30 min E : 05 min F : 40 min G : 15 min H : 20 min
Stochastic Automata Networks (SAN)
Example of a 2-Component System
A
1
A
2
e
1
e
2
e
3
,
e
4
(π
2
)
e
4
(π
1
)
e
4
e
5
u
w
x
y
z
Event
Rate
e
1
τ
1
e
2
τ
2
e
3
τ
3
e
4
τ
4
e
5
f
f =
λ
1
, if A
1
is in state
x
0
,
if A
1
is in state
y
λ
2
, if A
1
is in state
z
Performance Evaluation of Business Processes through a Formal Transformation to SAN Modeling Techniques Used in this Work
Stochastic Automata Networks
Underlying Continuous Time Markov Chain
A
1A
2e
1e
2e
3,
e
4(π
2)
e
4(π
1)
e
4e
5u
w
x
y
z
τ
1
τ
1
τ
2
τ
2
τ
3
τ
3
τ
4
π
2
τ
4
π
1
λ
1
λ
2
xu
xw
zu
zw
yu
yw
Event
Rate
e
1τ
1e
2τ
2e
3τ
3e
4τ
4e
5f
f =
λ
1
,
if A
1
is in x
0,
if A
1
is in y
λ
2
,
if A
1
is in z
BPMN Process Graph
Shipment Process of a Hardware Retailer
Take out extra insurance Decide if normal post or special shipment Check if extra insurance is necessary Fill in a Post label Request quotes from carriers Assign a carrier & prepare paperwork Package Goods Move package to pick area Goods to ship Goods for pick mode of delivery 20% - Extra insurance required 100% - Post label (always required)
85% - Normal Post 15% - Special Carrier H ar dw ar e R et ai le r L og is ti cs M an ag er C le rk W ar eh ou se W or ke r A B C D E F G H Average Execution Time A : 05 min B : 30 min C : 10 min D : 30 min E : 05 min F : 40 min G : 15 min H : 20 min
Performance Evaluation of Business Processes through a Formal Transformation to SAN Automated Conversion from Business Process Models to SAN
Structure of BPMN and SAN Models and their Operations
BPMN Process Graph
Shipment Process of a Hardware Retailer
Take out extra insurance Decide if normal post or special shipment Check if extra insurance is necessary Fill in a Post label Request quotes from carriers Assign a carrier & prepare paperwork Package Goods Move package to pick area v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v 11 v12 v13 v14 v15 v16 A B C D E F G H S T 0.85 0.15 0.2 1.0
Well-Formed BPMN Process Graph
Vertices accessible from start event / access end event
Events
Tasks
[Task Name] [Task Name]Gateways
Probabilities
p
1p
1p
2p
2p
3p
3p
1+
p
2+
p
3=
1
Performance Evaluation of Business Processes through a Formal Transformation to SAN Automated Conversion from Business Process Models to SAN
Structure of BPMN and SAN Models and their Operations
Well-Defined BPMN Model
An exclusive gateway does not join parallel sequence flows
A parallel gateway does not join exclusive sequence flows
An inclusive gateway only joins sequence flows originated by
another inclusive gateway (one-to-one correspondence)
p
1
p
1
p
2
p
2
· · ·
· · ·
· · ·
· · ·
· · ·
· · ·
Conversion Algorithm
Main Steps
1
Conversion of vertices of the BPMN process graph into
elementary SAN models
2
Operations of concatenation to join automata that model a
same sequence flow
3
Operations of reduction, to eliminate redundant or unnecessary
Performance Evaluation of Business Processes through a Formal Transformation to SAN Automated Conversion from Business Process Models to SAN
Structure of BPMN and SAN Models and their Operations
From BPMN Objects to SAN Elementary Models
Start Event
s
v
1
v
2
A
s
v
1
v
2
Atomic Task
a
v
1
v
2
A
r
a
a
v
1
r
v
2v
2
Exc. Gateway 1
v
1
v
2
(p
1
)
(p
n
)
v
n+1
...
A
(p
1
)
(p
n
)
v
1
1v
1
n...
v
1
v
2
v
n+1
Exc. Gateway 2
v
1
v
2
...
A
v
1
v
1
v
2
Performance Evaluation of Business Processes through a Formal Transformation to SAN Automated Conversion from Business Process Models to SAN
Structure of BPMN and SAN Models and their Operations
From BPMN Objects to SAN Elementary Models
Start Event
s
v
1
v
2
A
s
v
1
v
2
Atomic Task
a
v
1
v
2
A
r
a
a
v
1
r
v
2v
2
Exc. Gateway 1
v
1
(p
n
)
v
n+1
...
A
(p
n
)
v
1
n...
v
1
v
n+1
Exc. Gateway 2
v
1
v
2
...
A
v
1
v
1
v
2
Performance Evaluation of Business Processes through a Formal Transformation to SAN Automated Conversion from Business Process Models to SAN
Structure of BPMN and SAN Models and their Operations
From BPMN Objects to SAN Elementary Models
Start Event
s
v
1
v
2
A
s
v
1
v
2
Atomic Task
a
v
1
v
2
A
r
a
a
v
1
r
v
2v
2
Exc. Gateway 1
v
1
v
2
(p
1
)
(p
n
)
v
n+1
...
A
(p
1
)
(p
n
)
v
1
1v
1
n...
v
1
v
2
v
n+1
Exc. Gateway 2
v
1
v
2
...
A
v
1
v
1
v
2
From BPMN Objects to SAN Elementary Models
Start Event
s
v
1
v
2
A
s
v
1
v
2
Atomic Task
a
v
1
v
2
A
r
a
a
v
1
r
v
2v
2
Exc. Gateway 1
v
1
v
2
(p
1
)
(p
n
)
v
n+1
...
A
(p
1
)
(p
n
)
v
1
1v
1
n...
v
1
v
2
v
n+1
Exc. Gateway 2
v
1
v
2
...
A
v
1
v
1
v
2
Performance Evaluation of Business Processes through a Formal Transformation to SAN Automated Conversion from Business Process Models to SAN
Structure of BPMN and SAN Models and their Operations
Operation 1 – State Merge (
B)
A
A[q
4
⊲ q
5
]
q
1
q
1
q
2
q
2
q
3
q
3
q
4
q
4
q
5
q
6
q
6
q
7
q
7
ℓ
1
ℓ
1
ℓ
2
ℓ
2
ℓ
3
ℓ
3
ℓ
4
ℓ
4
ℓ
5
ℓ
6
ℓ
6
ℓ
7
ℓ
7
e
1
e
1
e
2
e
2
e
e
3
3
e
4
e
4
,
e
5
e
5
e
6
e
6
Operation 2 – State Suppression (
I)
Condition: |
outputs(q
4
)| = 1
A
A[q
4
◮]
q
1
q
1
q
2
q
2
q
3
q
3
q
4
q
5
q
5
q
6
q
6
q
7
q
7
ℓ
1
ℓ
1
ℓ
2
ℓ
2
ℓ
3
ℓ
3
ℓ
4
ℓ
5
ℓ
5
ℓ
6
ℓ
6
ℓ
7
ℓ
7
e
1
e
1
e
2
e
2
e
3
e
3
e
4
e
5
e
5
e
6
e
6
Performance Evaluation of Business Processes through a Formal Transformation to SAN Automated Conversion from Business Process Models to SAN
Structure of BPMN and SAN Models and their Operations
Operation 3 – Automata Concatenation (
)
A
1
A
2
A
1
q
14⊞
q
21A
2
q
1
1q
1
1q
1
2q
1
2q
1
3q
1
3q
1
4q
1
4q
2
1q
2
2q
2
2q
2
3q
2
3ℓ
1
1ℓ
1
1ℓ
1
2ℓ
1
2ℓ
1
3ℓ
1
3ℓ
1
4ℓ
1
4ℓ
2
1ℓ
2
2ℓ
2
2ℓ
2
3ℓ
2
3e
1
1e
1
1e
1
2e
1
2e
1
3e
1
3e
2
1e
2
1e
2
2e
2
2e
2
3Vertex Mappings – Shipment Process
v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 A B C D E F G H S T 0.85 0.15 0.2 1.0A
1v
1v
2s
11s
12v
1S
Performance Evaluation of Business Processes through a Formal Transformation to SAN Automated Conversion from Business Process Models to SAN
Conversion Algorithm (Example)
Vertex Mappings – Shipment Process
v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 A B C D E F G H S T 0.85 0.15 0.2 1.0
A
1A
2A
3v
1v
2v
2v
2v
2v
2v
3v
13s
11s
12s
21s
22s
31s
32v
1v
2S
Vertex Mappings – Shipment Process
v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 A B C D E F G H S T 0.85 0.15 0.2 1.0A
1A
2A
3A
4v
1v
2v
2v
2v
2v
2v
3v
3v
4v
13r
v3s
11s
12s
21s
22s
31s
32s
41s
42s
43v
1v
2v
3A
r
AS
Performance Evaluation of Business Processes through a Formal Transformation to SAN Automated Conversion from Business Process Models to SAN
Conversion Algorithm (Example)
Vertex Mappings – Shipment Process
v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 A B C D E F G H S T 0.85 0.15 0.2 1.0
A
1A
2A
3A
4A
7A
8A
9A
10v
1v
2v
2v
2v
2v
2v
3v
3v
4v
4v
12v
12v
13v
6v
6v
6v
61v
61v
6¬1v
62v
62v
6¬2v
7v
8v
9v
9v
9v
9v
9v
9r
v3s
11s
12s
21s
22s
31s
32s
41s
42s
43s
71s
72s
73s
74s
81s
82s
83s
84s
91s
92s
101s
102v
1v
2v
3v
6/v
9A
r
AS
(0.2)
(0.8)
(1.0)
(0.0)
15)
Vertex Mappings – Shipment Process
A
1A
2A
3A
4A
5A
6A
7A
8A
9A
10A
11A
12A
13A
14A
15A
16A
17A
18A
19v
1v
2v
2v
2v
2v
2v
3v
3v
4v
4v
4v
41v
42v
5v
5v
6v
6v
6v
6v
61v
61v
6¬1v
62v
62v
6¬2v
7v
7v
8v
8v
9v
9v
9v
9v
9v
9v
9v
9v
10v
10v
11v
11v
12v
12v
12v
12v
12v
13v
13v
14v
14v
14v
14v
14v
14v
15v
15v
15v
16r
v3r
v5r
v7r
v8r
v10r
v11r
v13r
v15s
11s
12s
21s
22s
31s
32s
41s
42s
43s
51s
52s
53s
61s
62s
63s
71s
72s
73s
74s
81s
82s
83s
84s
91s
92s
101s
102s
111s
112s
113s
121s
122s
123s
131s
132s
133s
141s
142s
143s
151s
152s
161s
162s
163s
171s
172s
181s
182s
191s
192s
193v
1v
2v
3v
4v
5v
6/v
9v
7v
8v
10v
11v
12v
13v
14v
15A
B
C
D
E
F
G
H
r
Ar
Br
Cr
Dr
Er
Fr
Gr
HS
(0.2)
(1.0)
(0.85)
(0.8)
(0.0)
(0.15)
Performance Evaluation of Business Processes through a Formal Transformation to SAN Automated Conversion from Business Process Models to SAN
Conversion Algorithm (Example)
Automata Concatenations/State Merges – Shipment Process
A
1A
2A
3A
4A
5A
6A
7A
8v
1v
2v
2v
2v
2v
2v
3v
3v
4v
4v
4v
41v
42v
5v
5v
6v
6v
6v
6v
61v
61v
6¬1v
62v
62v
6¬2v
7v
9v
8v
9v
10v
13r
v3r
v5s
11s
12s
21s
22s
31s
32s
41s
42s
43s
51s
52s
53s
61s
62s
63s
71s
72s
73s
74s
81s
82s
83s
84A
C
r
Ar
CS
(0.2)
(1.0)
(0.85)
(0.8)
(0.0)
(0.15)
· · ·
A
0
= A
1
A
′v
1S
v
2Automata Concatenations/State Merges – Shipment Process
A
1A
2A
3A
4A
5A
6A
7A
8v
1v
2v
2v
2v
2v
2v
3v
3v
4v
4v
4v
41v
42v
5v
5v
6v
6v
6v
6v
61v
61v
6¬1v
62v
62v
6¬2v
7v
9v
8v
9v
10v
13r
v3r
v5s
11s
12s
21s
22s
31s
32s
41s
42s
43s
51s
52s
53s
61s
62s
63s
71s
72s
73s
74s
81s
82s
83s
84A
C
r
Ar
CS
(0.2)
(1.0)
(0.85)
(0.8)
(0.0)
(0.15)
· · ·
A
0
= A
1
s
12
s
21A
2
A
′v
1S
v
2v
2v
3Performance Evaluation of Business Processes through a Formal Transformation to SAN Automated Conversion from Business Process Models to SAN
Conversion Algorithm (Example)
Automata Concatenations/State Merges – Shipment Process
A
1A
2A
3A
4A
5A
6A
7A
8v
1v
2v
2v
2v
2v
2v
3v
3v
4v
4v
4v
41v
42v
5v
5v
6v
6v
6v
6v
61v
61v
6¬1v
62v
62v
6¬2v
7v
9v
8v
9v
10v
13r
v3r
v5s
11s
12s
21s
22s
31s
32s
41s
42s
43s
51s
52s
53s
61s
62s
63s
71s
72s
73s
74s
81s
82s
83s
84A
C
r
Ar
CS
(0.2)
(1.0)
(0.85)
(0.8)
(0.0)
(0.15)
· · ·
A
0
= A
1
s
12
s
21A
2
s
22s
41A
4
A
′v
1S
v
2v
2v
3r
Ar
v3A
v
4Automata Concatenations/State Merges – Shipment Process
A
1A
2A
3A
4A
5A
6A
7A
8v
1v
2v
2v
2v
2v
2v
3v
3v
4v
4v
4v
41v
42v
5v
5v
6v
6v
6v
6v
61v
61v
6¬1v
62v
62v
6¬2v
7v
9v
8v
9v
10v
13r
v3r
v5s
11s
12s
21s
22s
31s
32s
41s
42s
43s
51s
52s
53s
61s
62s
63s
71s
72s
73s
74s
81s
82s
83s
84A
C
r
Ar
CS
(0.2)
(1.0)
(0.85)
(0.8)
(0.0)
(0.15)
· · ·
A
0
= A
1
s
12
s
21A
2
s
22s
41A
4
s
43s
51A
5
A′ v1 v2 v2 v3 v4 v41 v42 rv3 v5 v10 A rA S (0.85) (0.15)Performance Evaluation of Business Processes through a Formal Transformation to SAN Automated Conversion from Business Process Models to SAN
Conversion Algorithm (Example)
Automata Concatenations/State Merges – Shipment Process
A
0
= A
1
s
12
s
21A
2
s
22s
41A
4
s
43s
51A
5
s
52s
61A
6
s
63s
71A
7
s
74s
91A
9
s
73s
111A
11
A′ v1 v2 v2 v3 v4v41 v42 rv3 v5 v6 v6 v61v61 v6¬1 v7 v9 v9 v10 rv5 rv7 A C D rA rC rD S (0.2) (0.85) (0.8) (0.15)Automata Concatenations/State Merges – Shipment Process
A
0
=
(A
1
s
12
s
21A
2
s
22s
41A
4
s
43s
51A
5
s
52s
61A
6
s
63s
71A
7
s
74s
91A
9
s
73s
111A
11
)
[s
7
4B s
11
3]
A′ v1 v2 v2 v 3 v4v41 v42 rv3 v5 v6 v6 v61v61 v6¬1 v7 v9 v10 rv5 rv7 A C D rA rC rD S (0.2) (0.85) (0.8) (0.15)Performance Evaluation of Business Processes through a Formal Transformation to SAN Automated Conversion from Business Process Models to SAN
Conversion Algorithm (Example)
Automata Concatenations/State Merges – Shipment Process
A
0
=
(((A
1
s
12
s
21A
2
s
22s
41A
4
s
43s
51A
5
s
52s
61A
6
s
63s
71A
7
s
74s
91A
9
s
73s
111A
11
)
[s
7
4B s
11
3]
s
53s
131A
13
s
133s
141A
14
)[s
9
2B s
14
3]
s
92s
151A
15
s
152s
171A
17
s
172s
191A
19
)[s
9
2I]
A′ v1 v2 v2 v3 v4v41 v42 v5 v6 v6 v61v61 v6¬1 v7 v9 v9 v10 v11 v14 v14 v15 v16 rv3 rv5 rv7 rv10 rv11 rv15 A C D F G H rA rC rD rF rG rH S (0.2) (0.85) (0.8) (0.15)Automata Concatenations/State Merges – Shipment Process
A
0
=
(((A
1
s
12
s
21A
2
s
22s
41A
4
s
43s
51A
5
s
52s
61A
6
s
63s
71A
7
s
74s
91A
9
s
73s
111A
11
)
[s
7
4B s
11
3]
s
53s
131A
13
s
133s
141A
14
)[s
9
2B s
14
3]
s
92s
151A
15
s
152s
171A
17
s
172s
191A
19
)[s
9
2I][s
1
1B s
19
3]
A′ v1 v2 v2 v3 v4v41 v42 v5 v6 v6 v61v61 v6¬1 v7 v9 v9 v10 v11 v14 v14 v15 rv3 rv5 rv7 rv10 rv11 rv15 A C D F G H rA rC rD rF rG rH S (0.2) (0.85) (0.8) (0.15)Performance Evaluation of Business Processes through a Formal Transformation to SAN Automated Conversion from Business Process Models to SAN
Conversion Algorithm (Example)
Automata Concatenations/State Merges – Shipment Process
v1 v2 v 3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 A B C D E F G H S T 0.85 0.15 0.2 1.0 Average Time Rate A 05 min 0.200 B 30 min 0.033 C 10 min 0.100 D 30 min 0.033 E 05 min 0.200 F 40 min 0.025 G 15 min 0.066 H 20 min 0.050 A′ A′′ A′′′ v1 v2 v2 v2 v2 v3 v4v41 v42 v5 v6 v6 v6 v6 v61v61 v6¬1 v62v62 v6¬2 v7 v8 v9 v9 v9 v9 v10 v11 v13 v14 v14 v14 v14 v15 rv3 rv5 rv7 rv8 rv10 rv11 rv13 rv15 A B C D E F G H rA rB rC rD rE rF rG rH S (0.2) (1.0) (0.85) (0.8) (0.0) (0.15)
Analysis of the SAN Model of the Shipment Process
Solving tool: PEPS
1
Parallel process instances
⇒
automata replicas
Disabling of tasks in the case of unavailability of resources
⇒
functional rates
Parallel
State
Reachable
Response
Utiliz.
Utiliz.
Utiliz.
Instanc.
Space
Space
Time (h)
Manager
Clerk
Worker
1
380
85
1.106
0.052
0.269
0.518
2
144,400
5,809
1.599
0.080
0.412
0.793
3
54,872,000
349,013
2.228
0.093
0.476
0.916
Performance Evaluation of Business Processes through a Formal Transformation to SAN Conclusion
Contributions and Discussion
Automated conversion of BP models to SAN models
Abstraction of the complexity involved in stochastic modeling
Ability to deal with large scale models
Software tool: BP2SAN
(http://www.ime.usp.br/~kellyrb/bp2san)
Missing: Resource Management Info
BP models lack information about resources:
What are the resources required in the business process?
How many are available?
What is their work capacity?
How are they accessed?
Extensions of the Work
Modeling Resource Management of Business Processes
Create Business Process Model Gather Quantitative Aspects business process Create Stochastic Models Analyze Numerically Integrate Results set of SAN models performance indices numerical results BPMN model annotated model of process + resources
Performance Evaluation of Business Processes through a Formal Transformation to SAN Conclusion
Other Related Works