Download presentation
Presentation is loading. Please wait.
Published byQuentin Terry Modified over 9 years ago
1
Model Transformations for Business Process Analysis and Execution Marlon Dumas University of Tartu
2
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
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
4 Process models serve many purposes… Process Documentation Workflow Management Enterprise Architecture Document Management Knowledge Management Process Improvement Process Cost Analysis / Simulation Enterprise Systems Compliance / Risk Management Software Evaluation/ Selection
5
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
6 …and can be seen from many perspectives Control-flow Data Resource Operational
7
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
8 Process Modelling: Dealing 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
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
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
11 BPMN from 10 000 miles…
12
12 BPMN: A more detailed view
13
13 Quick BPMN example
14
14 BPEL from 10 000 miles Basic activities:,, Sequential flow:,, Block-structured parallel flow: Graph-oriented (parallel) flow: ** Event-action rules: ** Other constructs not relevant to this talk… ** Only partially supported by some tools
15
15 A quick BPEL example
16
16 BPMN-to-BPEL: Some monsters!
17
17 BPMN-to-BPEL (from 10 000 miles) Repeat until reduction to a single node 1.Identify a structured & quasi-structured SESE region Fold into a BPEL structured activity 2.Identify irreducible SESE regions without parallelism Apply Goto While transformations, repeat from 1 3.Identify acyclic fragments with concurrency Fold into a BPEL activity with control links 4.Identify minimal unstructured components BPEL event handlers
18
18 BPMN-BPEL: Structured Components
19
19 BPMN-BPEL: Structured Components
20
20 BPMN-BPEL: Structured Components
21
21 Example: Only Structured Components
22
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
23 Example Structured+Acyclic Components
24
24 Minimizing the use of control links
25
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
26 BPEL-to-Petri net Application to Conformance Checking Services abstract BPEL process Petri net model SOAP Messages Event Log Services Monitoring / Correlation Conformance? Conformance Checking! Translation
27
27 From BPEL to WF-nets
28
28 Petri net-based Conformance Checking Objectives: –quantitatively measure conformance –locate deviations Conformance?
29
29 Conformance Checking – Fitness
30
30 Conformance Checking – Fitness
31
31 Measuring fitness: Log replay analysis missing tokens remaining tokens = 0 = 1 consumed tokens produced tokens = 0
32
32 Measuring fitness: Log replay analysis = 1 = 2 = 0 missing tokens remaining tokens consumed tokens produced tokens
33
33 Measuring fitness: Log replay analysis = 2 = 4 = 0 missing tokens remaining tokens consumed tokens produced tokens
34
34 Measuring fitness: Log replay analysis = 3 = 5 = 0 missing tokens remaining tokens consumed tokens produced tokens
35
35 Measuring fitness: Log replay analysis = 5 = 6 = 0 missing tokens remaining tokens consumed tokens produced tokens
36
36 Measuring fitness: Log replay analysis = 6 = 7 = 0 missing tokens remaining tokens consumed tokens produced tokens
37
37 Measuring fitness: Log replay analysis = 7 = 0 missing tokens remaining tokens consumed tokens produced tokens
38
38 Measuring fitness: Log replay analysis = 9 = 0 missing tokens remaining tokens consumed tokens produced tokens
39
39 Measuring fitness: Log replay analysis = 9 = 0 missing tokens remaining tokens consumed tokens produced tokens
40
40 Measuring fitness: Log replay analysis = 0 = 1 = 0 missing tokens remaining tokens consumed tokens produced tokens
41
41 Measuring fitness: Log replay analysis = 1 = 2 = 0 missing tokens remaining tokens consumed tokens produced tokens
42
42 Measuring fitness: Log replay analysis = 2 = 4 = 1 = 0 missing tokens remaining tokens consumed tokens produced tokens
43
43 Measuring fitness: Log replay analysis = 3 = 5 = 1 = 0 missing tokens remaining tokens consumed tokens produced tokens
44
44 Measuring fitness: Log replay analysis = 4 = 6 = 1 = 0 missing tokens remaining tokens consumed tokens produced tokens
45
45 Measuring fitness: Log replay analysis = 6 = 7 = 1 = 0 missing tokens remaining tokens consumed tokens produced tokens
46
46 Measuring fitness: Log replay analysis = 7 = 8 = 1 = 0 missing tokens remaining tokens consumed tokens produced tokens
47
47 Measuring fitness: Log replay analysis = 8 = 1 missing tokens remaining tokens consumed tokens produced tokens
48
48 Measuring fitness: Log replay analysis = 8 = 1 missing tokens remaining tokens consumed tokens produced tokens
49
49 Measuring fitness: Log replay analysis
50
50 Measuring fitness: Log replay analysis f = 1.0f ≈ 0.540f ≈ 0.955
51
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
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
53 References
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.