Ensuring Quality in Business-driven Development of IT Systems using Workflow Patterns Masud Fazal-Baqaie Datenbank- und Informationssysteme AG Engels
What is a Business Process? A business process is a collection of related [...] activities that produce a specific output for a particular customer Think of UML 2.0 Activity Diagrams Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 2
Why Business Process Modeling? Awareness Improvement [1] IT-Implementation Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 3
Why is Quality of BPM a Problem? Inexperienced user & different professional background Complicated Models Rich modeling languages Hard to read & understand Impossible to execute as depicted Case study: High % of reference models wrong [2] Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 4
Agenda 1. Motivation 2. BDD 3. BPMN 4. Verification 5. Workflow Patterns 6. Modeling Accelerators (Demo) 7. Summary Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 5
Business-Driven Development Lifecycle [1] Business Metrics Graphical Model Analysis Models Design Models Runtime Metrics Execution Model Software Services Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 6
Agenda 1. Motivation 2. BDD 3. BPMN 4. Verification 5. Workflow Patterns 6. Modeling Accelerators (Demo) 7. Summary Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 7
BPMN Business Process Modeling Notation Graphical language for modeling business processes Standard by OMG Supported by all big tool vendors Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 8
BPMN Modeling Elements Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 9
BPMN Modeling Elements there is much more http://oryxeditor.org/backend/poem/model/1046/self [3] Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 10
Agenda 1. Motivation 2. BDD 3. BPMN 4. Verification 5. Workflow Patterns 6. Modeling Accelerators (Demo) 7. Summary Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 11
Deadlock Execution traces: <Start Event, Record Claim, Check Claim, Settle Claim, > <Start Event, Record Claim, Check Claim, Reject Claim, > Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 12
Lack of Synchronization Execution traces: <Start Event, Record Claim, Check Claim, Settle Claim, End Event, Retrieve Add. Info, Check Claim, Reject Claim, End Event, Retrieve Add. Info, > Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 13
Verification Soundness Checking Checking execution traces (State space exploration) Problem: State space explosion [2] Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 14
Soundness Checking using Single- Entry-Single-Exit Regions Decomposition in linear time Model is sound if all fragments are sound Heuristic + State Space Exploration Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 15
Agenda Motivation BDD BPMN Verification Workflow Patterns Modeling Accelerators (Demo) Summary Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 16
Patterns for Process Models Related to OOP Design Patterns Talk in patterns: Common language Limitations and possibilities of modeling language Constructive approach to modeling Reuse good ideas [4] Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 17
Example: Synchronized Merge Point of process where multiple paths converge into single thread. If multiple paths are taken synchronization needed. If only one path is taken, reconverge without synchronization 1x 1x Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 18
Synchronized Merge in BPMN Direct support for BPMN Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 19
Anti-Patterns Derived from real world models Common mistakes Recommendations Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 20
Anti-patterns Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 21
Pattern-based Process Model Accelerators Improvement of pattern support for modeling tools Correctness-by-Construction Control-flow analysis Demo Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 22
Summary Business process quality needs improvement Business process modeling relevant for quality of software systems Emerging theory (verification, patterns) Emerging tool support Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 23
Thank You For Your Attention! Any Questions? Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 24
Illustration sources: [1] http://www.stockxpert.com/browse_image/view/427358 [2] http://oryx-editor.org/backend/poem/model/1046/self [3] BPMN 1.2 Poster; Hasso Plattner Institut http://bpt.hpi.uni-potsdam.de/pub/public/bpmncorner/ BPMN1_1_Poster_EN.pdf [4]Gschwind, T., Koehler, J., Wong, J. In: Applying Patterns during Business Process Modeling. Springer-Verlag, Berlin, Heidelberg (2008) 4 19 Outher sources are listet in the seminar paper to this talk. Ensuring Quality in BDD of IT Systems using Workflow Patterns Masud Fazal-Baqaie - 25