Modeling BPMN 2.0 Level 2 Lubomír Hruban l.hruban@gmail.com Seminar Overview • Introduce BPMN Level 2 modeling and its palette • Extending L1 process to L2 ○ PV207/L2.bpmn • Remarks on modeling • Top 10 L2 Mistakes (Spring 2014) • L2 Assignment (deadline 7.4. 17h) • Summary Spring 2015 PV207 1 Level 2 Modeling • Also known as analytical modeling • Created by process specialists • Still concerned with non-executable processes • Relies on information visible in the diagrams • Adds events, additional gateways, subprocess nesting • Often used for exception handling • From activity order (L1) to precise execution timing (L2) Spring 2015 PV207 2 L2 Palette Spring 2014 PV207 3 ● Intermediate events ● More specific types of tasks ○ User ○ Service ○ Abstract ○ Send ○ Receive ○ Manual ○ Script ○ Business rule ● Event and complex gateway ● Iterations in multiple instances Spring 2015 PV207 4 ● Import L2 from study material into Signavio Extending L1 Message Events Spring 2015 PV207 ● Message is the content of communication between two different participants (not in the same process) ● Message can take any form ● Message flow is addressed to a particular process or process instance ● Use verbs like send or receive as a keywords 6 Hidden Message Flow Spring 2015 PV207 Avoid this: When handling is non-trivial activity: 7 Signal Events Spring 2015 PV207 8 ● Signal is broadcast and it is loosely coupled ● Can be used within pool, between processes and process instances ● In diagram there is no message flow between signals (only naming emphasizes relationship) ● Signal start event means that process is subscribed to another process or processes Error Events Spring 2015 PV207 9 ● Only as Error end event or interrupting Error boundary event ● Can be usually transform with usage of XOR gateway: *It is totally equal only if we can change internally Check credit Loop Transformation Spring 2015 PV207 10 Top 10 Mistakes 2014 Inappropriate Naming Here is a task used instead of an event. Clumsy name of the task signals us that we are using wrong modeling concept. Lanes should express the role which is responsible for performing task. Not the name of task itself. Exception Handling The process should handle exception appropriately (try to resolve exception, or terminate properly other tokens and inform other processes if necessary). Messages in Pool Variants of hidden message flow. Boundary Events Timer does not say how much time it takes to finish task. It just says what should be done when timebox expires. Therefore, there has to be outgoing sequence flow. Even task with boundary event has to have standard outgoing sequence flow. Deadlock If after XOR gateway token flows to B then parallel gateway will wait forever for token from A. Summary ● Understand purpose and usage of BPMN L2 ● Extend process from L1 to L2 ● More familiar with the most common L2 elements ● Review common mistakes in L2 Spring 2014 PV207 11 L2 Assignment Create one BPMN L2 model (it is prefered when you extend your L1 process): 8+ activities 4+ gateways, 2 different types 3+ events, 2 different types (beside start a end) 1+ data object 2+ text annotations 2+ pools, 1 as „blackbox“, 2+ roles (swimlanes) 1+ exception and appropriate handling Submit printed version with UČO and number of seminar group to the box called PV207 next to entrance to room D1 (before 7.4. 17h) Submit electronic version of diagram in Signavio as PNG to IS MUNI to folder "Homework 2" as _bpmn.png (before 7.4. 17h) Spring 2015 PV207 Thank you for your attention!