PV207 – Business Process Management Spring 2014 Jiří Kolář Process modeling II Last lecture summary ● Why modeling? ● Process development roles ● Modeling notations ○ Workflow modeling ○ BPMN 1.1 ○ BPEL ○ BPMN 2.0 ● BPMN 2.0 ○ Object classes ■ Activities ■ Gateways ■ Connecting objects ■ Artifacts ○ Process types ○ Examples Last exercise sessions: ● Process domains chosen by teams ● Example process modeled ● Home assignment assigned ○ Next session (24.3.) - first check,consultations ○ After 31.3. – homework deadline ● Teamwork organization explained Recap: BPMN 2.0 (Level 1) Object classes ● Flow Objects ○ Event ○ Activity ○ Gateway ● Connecting Objects ○ Sequence Flow ○ Message Flow ○ Association ● Artifacts ○ Data Object ○ Group ○ Annotation ● Swimlanes ○ Pool ○ Lane Recap: Activity ● Represent certain step, an activity ● Types of activity ○ Atomic activity = Task ○ Complex activity = Subprocess ● Types of task ■ Service task ■ ■ User task ● ■ Manual task ■ ■ Script Recap: Gateway ● Stands for flow branching or join of branches ● Types: ● Exclusive data-based (XOR) ● Exclusive event-based ● Inclusive ● Paralell ● Complex Default branch Recap: Gateway examples Recap: Pools/swimlanes Lecture overview ● Information sources ● From L1 to L2 ● L2: timing precision ● BPMN 2.0 Level 2: ○ Subprocess ○ Activity call ○ Events ■ Messages ■ Signals ■ Errors ■ Escalations ○ Gateways ○ BPMN 2.0 summary Information sources ● BOOK: BPMN method and style / Bruce Silver ○ ISBN:9780982368107, Library FI, Amazon 33$ ● BPMN 2.0 poster ○ http://www.bpmb.de/images/BPMN2_0_Poster_EN. pdf ● Signavio modeler – academic licence ○ http://academic.signavio.com/p/login ● BPMN official OMG website ○ http://www.bpmn.org BPMN 2.0: from L1 to L2 ● Level 1 ○ Flowcharting ○ Only order is important ○ No simulation possible ○ No nesting ○ Simple events ● Level 2 ○ Analytical BPMN model ○ Precise activity execution timing ○ Allow simulations and process optimization ○ Subprocess nesting ○ Events and signals ○ Exception handling Level 2: timing precision ● Each activity has exact start and completion ● Service task ○ Starts immediately when reached ○ Being performed immediately and completed ● User task ○ Starts immediately when reached ○ Being performed once user open it in a ” worklist” = task “claim” Subprocess vs Call activity ● Subprocess ○ Expandable (nested) part of the process ○ Defined inside process ○ Nested for better readability ● Activity call ○ Call of global task or process ○ Defined as separate process - imported ○ Reusable in other processes Subprocess vs Call activity EventsDownloaded from: http://frapu.de/blog/index.php?m=07&y=09&d=01&entry=entry090701- 211320 Explicitly modeled occurrences Questions? Break 10mins Feedback Events ● Start events ○ Event initiate process/subprocess ○ One (or more in special cases) ○ Always catching ● Intermediate events ○ Occur during process ○ Can be thrown or catched ○ Can be used for gateway decision ● End events ○ Occur at the end of process flow ○ Always throwing ○ End affect only one branch (vs Terminate) Start Events ● Interrupting/Non-interrupting Intermediate Events ● Catching/Throwing Intermediate Events cont. ● Boundary - interrupting/non-interrupting Examples - BPMN2 Events Messages ● Message represents a message send by external entity (Pool, Lane etc.) ● Message does not have to be JMS, SOAP etc. but it can be fax, mail, SMS etc. ● Message can: ○ Be reveived and start process ○ Occur as imtermediate event ○ Be send during end of process Message examples Signals ● Signal is same as message but ○ Is given by external entity ○ Is not adressed to any particular consumer ○ Entity giving signal does not know who is listening ○ Good for loose coupled communication Errors ● Express some serious problem in process ● Throw - catch mechanism ● Always interrupt the process ● Always boundary event Escalations ● Escalation is allowing noninterupting/interupting flow to be executed ● Used for additional steps to be done ● Parallel activities to be done Timer ● Cyclic events ● Points in time ● Timeouts Event-based gateway ● Event-based gateway ○ Branching according to event ○ Different semantics – branched according to event that is placed after the gateway Inclusive OR-gateway ● One or more branches can be performed ● Depends on conditions ● Branches performed in parallel What is in not covered here ● Transactional subprocesses ○ Compensations ○ Cancel events ● Extended looping ● Multi-instances ● Other diagrams covered in BPMN 2.0 specs ○ Chreography diagrams ○ Conversation diagrams BPMN summaryDownloaded from: http://frapu.de/blog/index.php?m=07&y=09&d=01&entry=entry090701-211320 Assignment (Homework) ○ Create one BPMN process model (Level 2) from your in your team domain ■ 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 handling ○ Submit printed version to the box called "PV207" next to entrance to room D1, before 1.4. 20h ○ Submit electronic version ■ Export to PNG in Signavio, submit to IS MUNI to folder "homeworks" before 1.4. 20h as _bpmn.png FIN Questions? PV207 – Business Process Management Spring 2012 Jiří Kolář