Process Modeling: BPMN L1 Lubomír Hruban Spring 2024 Lecture Overview 1. Why modeling? 2. Process development roles 3. Modeling notations 4. Resources 5. Object classes ○ Activities, events, gateways, connecting objects and artifacts 6. Process types 2 Why Process Modeling? ● Elegant way to express structure of a process. ● Understandable for all participants of the development cycle. ● Transformable from analytical model to implementation. ● Covers nested structure and supports various interactions: ○ sub-processes and inter-process/system communication ● Pictures are fun! 3 (non-scientific) Experiment 🧪 Is diagram more elegant and expressive than free text? 1. Two teams of volunteers (three students in each team). 2. Team1 gets text description and they have 4 mins to read. 3. Team1 starts discussion and Team2 goes away with the process in BPMN 2.0 4. Team2 starts discussion. 5. Audience compares the quality of discussion. 4 🎖BPMN 2.0🎖 ● 2011 - 2014 ● analytical modeling (Level 1,2) ● defined semantic – executable (Level 3) BPMN 1.0 – 1.1 ● 2004 - 2009 ● analytical modeling, not tight with semantics, not executable ● XPDL semantics BPEL ● 2003 - 2007 ● technical modeling, very detailed ● service orchestration, executable ● human task extended by BPEL4People (2007) History of Modeling Notations 5 BPMN 2.0 Levels 6 Level 3 - Executable Specifies all used services and activity tasks (Process developers ~ Process engine 3 Level 2 - Analytical More details of process behaviour (interactions, events, timing) Process analysts ~ Process developers 2 Level 1 - Structural Basic structure of a process Business experts ~ analysts/developers 1 Model Quality Aspects ● Validity against BPMN specification ○ Wrong connections of the flow, missing start/end events, wrongly used gateways ● Model understandability ○ Reasonable naming of activities and reasonable amount of connections/gateways/activities ● Expressiveness ○ How it reflects the situation in real world, granularity of activities ● Compliance to the modeling best practices ○ Modeling style (seminars & third modeling lecture) 7 Process developer ● Implements services and deploy processes (Level 3) Process specialist ● Designs BPMN diagrams (Level 1,2,3) ● Designs monitoring models Business Analyst ● Designs BPMN diagrams (Level 1) ● Sums business strategy ● Describes goals & objectives, KPIs ● Describes processes Roles in Development Cycle 8 Roles in Development Cycle 9 Process design Top management provides doc Process optimization Business analyst creates doc to improve process Process modeling Business analyst creates L1 Process monitoring Line manager monitors the process Process execution Process specialist with process developer handles L2 and L3 Process Lifecycle Resources ● BPMN method and style by B. Silver ● Real-Life BPMN by J. Freund and B. Rücker ● Signavio Modeler – Academic Licence ○ http://academic.signavio.com ● BPMN Official OMG Website ○ http://www.bpmn.org ● Business Process Modeling and Analysis ○ https://open.hpi.de/courses/bpm2019 ● BPMN 2.0 Poster ○ http://www.bpmb.de/images/BPMN2_0_Poster_EN.pdf 10 Coffee break time… Process Example 1. Customer creates an Order 2. Order is reviewed by Sales 2.1. If price of the Order is lower than $40 000, it is processed 2.2. If price is over $40 000 it have to be confirmed by Financial department 2.2.1. Order can be rejected by the Financial department 3. Otherwise the order is processed 12 BPMN 2.0 Object Classes ● Flow objects ○ activities, events, gateways ● Connecting objects ○ sequence flow, message flow, associations ● Artifacts ○ annotations, groups ● Swimlanes ○ pools, lanes ● Data ○ data inputs/outputs, data stores 13 Subprocess Complex activity (contains other tasks, events…) Activities Represent certain activities in the process. It can be a task or an activity. 14 Task Atomic activity Types of Tasks ● Types provide additional info about the task. ● Useful when modeling requirements and for implementation. 15 L1 L2 Events ● Represent event that occur in a process. ● Have impact on process flow. ● We have these L1 events: 16 Terminate End events: Start events: MessageNone TimeMessageNone Connecting Objects ● Process sequence flow ○ Defines order of activities ● Message flow ○ Does not influence the process flow! ○ Message flow should be between two processes ● Association ○ Does not influence the process flow! ○ Connects objects with artifacts (labels, data objects..) 17 Basic Examples 18 ● Represents a control point in the sequence flow ● Used for flow branching or join of branches ● We have these types: ● Exclusive data-based (XOR) ● Parallel ● Default branch ● Exclusive event-based (L2) ● Inclusive (L2) ● Complex (L2) Gateways 19 Gateways Examples I: AND 20 Gateways Examples II: XOR 21 Gateways Examples III: OK or NOK? 22 A C B D ● Additional information ● Do not affect flow ● Data objects ○ Data used in activities ○ Inputs and outputs of activities ● Annotations ○ Label, additional information ● Groups ○ Grouping of objects (analytical/documentation reasons) Artifacts 23 Artifacts Example 24 ● Pools Represent a participant in a process ○ Show message flows between participants ● Lanes divide pool ○ Express roles, departments or actors in a process Pools & Lanes 25 Pools & Lanes Examples I 26 Pools & Lanes Examples II 27 ● From the point of view of one organization ● Activities are not visible to the outside world ● One pool (the pool can be omitted) ● Also known as orchestration of services Private (Internal) Process 28 ● Interaction between a private process and another process/participant ● Only activities that send/receive messages ● Communication is visible to outside world Abstract (Public) Process 29 ● Collaboration between business entities ● Activities represent message exchange ● Public process are shown, corresponding private processes have much more activities and detail Collaboration (Global) Process 30 ● Pool and Lane ● Task User, Service, Abstract/None ● Subprocess Collapsed, Expanded ● Start Event None, Message, Timer ● End Event None, Message, Terminate Level 1 Palette 31 ● Gateway Parallel, Exclusive ● Sequence Flow ● Message Flow ● Data Object Data store, Message ● Text Annotation ● Model a process (more info in seminar slides). ● Deadline is Monday 18th at 4 PM. ● Next week seminar: ○ You will receive corrected homework and also get L2 assignment. ● Homework submission: ○ Submit PNG or PDF exported from Signavio to IS MUNI folder "Homework 2" named _bpmn.png, before deadline ○ Diagram has to be readable in a printable on A4 paper size (it can be multiple pages if needed). Homework Assignment 32 Questions? Thank You!