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/Seminars/Pizza_L2_Bug_free.bpmn • Remarks on modeling • Summary Spring 2014 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 2014 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 2014 PV207 4 We have gathered more information after detail interviews: ● chef can prepare more pizzas ● sometimes bank doesn’t respond to our transaction request, if that happens then IT needs to resolve this as a standard issue (and if it takes more than 5 minutes we have to inform customer and cancel the process) ● customer can cancel order while chef prepare only ingredients, but not while pizzas are prepared ● bank can respond that customer’s credit is not enough, in that case bill generation is interrupted ● Synchronize process: check credit through bank, only if order wasn’t cancelled; prepare pizza only if customer was charged without errors Extension Spring 2014 PV207 5 Message events Spring 2014 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 2014 PV207 Avoid this: When handling is non-trivial activity: 7 Signal events Spring 2014 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 2014 PV207 9 ● Only as Error end event or interrupting Error boundary event ● Can be usually transform with usage of XOR gateway: Loop transformation Spring 2014 PV207 10 Summary ● Understand purpose and usage of BPMN L2 ● Extend process from L1 to L2 ● More familiar with the most common L2 elements Spring 2014 PV207 11 Thank you for your attention! Lubomír Hruban l.hruban@gmail.com