Model Transformations for Business Process Analysis and Execution PowerPoint PPT Presentation

presentation player overlay
About This Presentation
Transcript and Presenter's Notes

Title: Model Transformations for Business Process Analysis and Execution


1
Model Transformations for Business Process
Analysis and Execution
  • Marlon Dumas
  • University of Tartu

2
Business Process Management (BPM)
  • Collection of methods and techniques to design,
    analyze, execute and monitor business operations
    involving humans, software, information and
    physical artifacts using process models.

3
OK, so what is a process model?
  • Collection of inter-dependent activities whose
    collective performance is intended to achieve a
    goal such as delivering a product or a service.
  • E,g. order-to-cash, procure-to-pay,
    issue-to-resolution
  • Animated example

4
Process models serve many purposes
ProcessImprovement
Compliance /Risk Management
Process Documentation
KnowledgeManagement
Process CostAnalysis / Simulation
EnterpriseSystems
EnterpriseArchitecture
WorkflowManagement
DocumentManagement
Software Evaluation/ Selection
5
they have many faces
Abstract Models EPC, BPMN Communication,
simulation, activity-based costing
Detailed Models BPEL, State Machines Data types,
conditions, data mappings, fault
handling Integration, testing, deployment
6
and can be seen from many perspectives
  • Control-flow
  • Data
  • Resource
  • Operational

7
Many in one, or one in many?
  • The thing can be many in one sense, but also
    can be one in another sense.
  • Imam Ghazali
  • Revival of Religious Sciences 

8
Process ModellingDealing with Multiplicity
  • Multiple modelling languages (meta-models)
  • Multiple modelling viewpoints
  • Control-flow view vs. data view
  • Public views (protocols) vs. private views
  • Multiple abstraction levels
  • High-level tasks, performance metrics...
  • Low-level data transformations, application
    bindings...

9
Process Modelling Notations
  • Business Process Modelling Notation (BPMN)
  • Event-driven Process Chains (EPC)
  • Business Process Execution Language (BPEL)
  • State machines and variants (e.g. IBM Business
    State Machine, WWF)
  • Petri nets (and variants, e.g. YAWL)

10
Model transformations
  • BPMN-to-BPEL
  • Purpose Transform models produced by analysts
    into models for developers (and vice-versa)
  • Commonly supported in commercial tool, but in a
    limited manner
  • BPEL-to-Petri nets
  • For analysis verification
  • BPMN-to-Petri nets
  • For analysis verification (e.g.
    deadlock-freeness)

11
BPMN from 10 000 miles
12
BPMN A more detailed view
13
Quick BPMN example
14
BPEL from 10 000 miles
  • Basic activities ltassigngt, ltinvokegt, ltreceivegt
  • Sequential flow ltsequencegt, ltwhilegt, ltswitchgt
  • Block-structured parallel flow ltflowgt
  • Graph-oriented (parallel) flow ltlinkgt
  • Event-action rules ltonEventgt
  • Other constructs not relevant to this talk
  • Only partially supported by some tools

15
A quick BPEL example
  • ltsequencegt
  • ltinvoke check stock availability /gt
  • ltswitch () /gt
  • ltcase rejectgt ltinvoke order rejection
    /gt lt/casegt
  • ltotherwisegt
  • ltsequencegt
  • ltinvoke order acceptance /gt
  • ltflowgt ltinvoke invoicing /gt
  • ltinvoke ship goods /gt
  • lt/flowgt
  • lt/sequencegt lt/otherwisegt lt/switchgt
    lt/sequencegt

16
BPMN-to-BPEL Some monsters!
17
BPMN-to-BPEL (from 10 000 miles)
  • Repeat until reduction to a single node
  • Identify a structured quasi-structured SESE
    region ? Fold into a BPEL structured activity
  • Identify irreducible SESE regions without
    parallelism ? Apply Goto?While
    transformations, repeat from 1
  • Identify acyclic fragments with concurrency ?
    Fold into a BPEL activity with control links
  • Identify minimal unstructured components ?
    BPEL event handlers

18
BPMN-BPEL Structured Components
19
BPMN-BPEL Structured Components
20
BPMN-BPEL Structured Components
21
Example Only Structured Components
22
BPMN-to-BPEL Acyclic component
  • Proposition Every acyclic BPMN component with a
    single entry point and a single exit point that
    is 1-safe and sound can be mapped to a BPEL Flow
    with links

23
ExampleStructuredAcyclic Components
24
Minimizing the use of control links
25
For the rest
  • Identify a minimal SESE region that is neither
    structured nor acyclic
  • For each action in the component, retrieve
  • All actions that immediately precede it
  • All actions that immediately follow it
  • For each action, code the following behaviour
    using event-action rules
  • Wait for a suitable combination of predecessors
    to complete
  • Perform action
  • Notify completion to all successors

26
BPEL-to-Petri netApplication to Conformance
Checking
Services
Services
abstract BPEL process
Services
Conformance?
SOAP Messages
Translation
Monitoring / Correlation
Petri net model
Event Log
Conformance Checking!
27
From BPEL to WF-nets
28
Petri net-based Conformance Checking
  • Objectives
  • quantitatively measure conformance
  • locate deviations

Conformance?
29
Conformance Checking Fitness
30
Conformance Checking Fitness
31
Measuring fitness Log replay analysis
missing tokens remaining tokens
0 1
consumed tokens produced tokens
0 0
32
Measuring fitness Log replay analysis
1 2
0 0
missing tokens remaining tokens
consumed tokens produced tokens
33
Measuring fitness Log replay analysis
2 4
0 0
missing tokens remaining tokens
consumed tokens produced tokens
34
Measuring fitness Log replay analysis
3 5
0 0
missing tokens remaining tokens
consumed tokens produced tokens
35
Measuring fitness Log replay analysis
5 6
0 0
missing tokens remaining tokens
consumed tokens produced tokens
36
Measuring fitness Log replay analysis
6 7
0 0
missing tokens remaining tokens
consumed tokens produced tokens
37
Measuring fitness Log replay analysis
7 7
0 0
missing tokens remaining tokens
consumed tokens produced tokens
38
Measuring fitness Log replay analysis
9 9
0 0
missing tokens remaining tokens
consumed tokens produced tokens
39
Measuring fitness Log replay analysis
9 9
0 0
missing tokens remaining tokens
consumed tokens produced tokens
40
Measuring fitness Log replay analysis
0 1
0 0
missing tokens remaining tokens
consumed tokens produced tokens
41
Measuring fitness Log replay analysis
1 2
0 0
missing tokens remaining tokens
consumed tokens produced tokens
42
Measuring fitness Log replay analysis
2 4
1 0
missing tokens remaining tokens
consumed tokens produced tokens
43
Measuring fitness Log replay analysis
3 5
1 0
missing tokens remaining tokens
consumed tokens produced tokens
44
Measuring fitness Log replay analysis
4 6
1 0
missing tokens remaining tokens
consumed tokens produced tokens
45
Measuring fitness Log replay analysis
6 7
1 0
missing tokens remaining tokens
consumed tokens produced tokens
46
Measuring fitness Log replay analysis
7 8
1 0
missing tokens remaining tokens
consumed tokens produced tokens
47
Measuring fitness Log replay analysis
8 8
1 1
missing tokens remaining tokens
consumed tokens produced tokens
48
Measuring fitness Log replay analysis
8 8
1 1
missing tokens remaining tokens
consumed tokens produced tokens
49
Measuring fitness Log replay analysis
50
Measuring fitness Log replay analysis
f 1.0
f 0.540
f 0.955
51
Conformance Checking - Appropriateness

100 fitness but not sufficiently specific from
behavioral point of view.
100 fitness but not represented in structurally
suitable way.
52
Ongoing work
  • Reversible BPMN ? BPEL transformation
  • Two-way transformation BPEL ? FSM
  • Application to automated service composition
  • BPEL ? FSM not too difficult
  • FSM ? BPEL more exciting, e.g.

53
References
Write a Comment
User Comments (0)
About PowerShow.com