PV207 – Business Process Management Spring 2019 Process Modeling Jiří Kolář & Lubomír Hruban Lecture Overview Overview ● Why Modeling? ● Process Development Roles ● Modeling Notations ● Workflow Modeling ● BPMN 1.1 ● BPEL ● Resources BPMN 2.0 Level I ● Object Classes ■ Activities ■ Events ■ Gateways ■ Connecting Objects ■ Artifacts ○ Process Types ● Examples 1. Elegant way to express structure of a process 2. Visual models are easily understandable by all participants of the development cycle 3. Minimize the misunderstandings during the transformation from analytical description to the executable implementation of the process 4. Covers nested structure (sub-processes) 5. Covers inter-process/inter-system interactions 6. Pictures are fun Why Process Modeling? Is model more elegant and expressive than free text? 1. Two teams of volunteers (three students in each team) 2. Team 1 gets text description and they have 3.5 minutes to read 3. Team 1 starts discussion and Team 2 goes away with the process in BPMN 2.0 4. Audience observes the quality of discussion 5. Team 2 starts discussion 6. Conclusion :) (Non Scientific) Experiment Modeling Notations ● BPEL ○ technical modeling, very detailed ○ service orchestration, executable ○ human task extended by BPEL4People ● BPMN 1.0 – 1.1 ○ analytical modeling, not tight with semantics, not executable ○ XPDL semantics ● BPMN 2.0 ○ analytical modeling (Level 1,2) ○ defined semantic – executable (Level 3) BPMN 2.0 Levels ● Level 1 (Structural) ○ Captures basic structure of a process ○ Business experts <=> analysts/developers ● Level 2 (Analytical) ○ More details of process behaviour (interactions, events, timing) ○ Process analysts <=> Process developers ● Level 3 (Executable) ○ Specifies all used services and activity tasks ○ ”(Process developers <=> Process engine) ” Model Quality Aspects ● Validity against BPMN specification ○ Wrong connections of the flow ○ Missing start/end ○ Wrongly used gateways ● Model understandability ○ Reasonable naming of activities ○ 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) Roles in Development Cycle ● Business Analyst ○ Sum business strategy ○ Describe goals & objectives, KPIs ○ Describe processes ○ Design BPMN diagrams (Level 1) ● Process specialist ○ Design BPMN diagrams (Level 1,2,3) ○ Design monitoring models ● Process developer ○ Detail BPMN Level 3 ○ Implement services and deploy processes Roles in Development Cycle ● BPMN method and style Bruce Silver ○ ISBN 978-0982368114 ○ Paperback $30 / Online $12 / Library $0 ● 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/bpm2013 ● BPMN 2.0 Poster ○ http://www.bpmb.de/images/BPMN2_0_Poster_EN.pdf BPMN 2.0 Information Sources Homework Assignments ● This week seminar ○ L1 homework assignment deadline Monday 18th at 4PM ● Next week seminar ○ You receive corrected homework ○ L2 homework assignment ● Homework submission ○ Submit printed version to the box called "PV207" next to entrance to room D1, before deadline ○ PNG image exported from Signavio will be submitted to IS MUNI folder "Homework 1" named _bpmn.png , before deadline Questions? Break 7mins BPMN 2.0 Object Classes ● Flow Objects ○ Event ○ Activity ○ Gateway ● Connecting Objects ○ Sequence Flow ○ Message Flow ○ Association ● Artifacts ○ Group ○ Annotation ● Swimlanes ○ Pool ○ Lane ● Data ○ Data Inputs/Outputs ○ Data Stores 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.3. Order can be rejected by the department 3. Otherwise the order is processed Process example Activities ● Represent certain activity in the process ● Types of activity Task = Atomic activity Subprocess = Complex activity ● Types of task L1 L2 None User Service Events ● Represents event that occur in a process ● Have impact on process flow ● We have these L1 events: ○ Start None Message Timer ○ End None Message Terminate L2 Connecting Objects ● Process sequence flow ○ Define order of activities ● Message flow ○ Does not influence the process flow! ○ Message flow between two objects ● Association ○ Does not influence the process flow! ○ Connect objects with artifacts (labels, data objects..) Basic Elements Examples Gateway ● 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) Gateway Examples I AND XOR Gateway Examples II (OK or NOK?) A C B D Artifacts ● Additional information ● Do not affect flow ● Data Objects ○ Data used in activities ○ Inputs and outputs of activities ● Annotation ○ Label, additional information ● Groups ○ Grouping of objects (analytical/documentation reasons) Artifacts Examples Pools & Lanes ● Pool ○ Represent a participant in a process ○ Show message flows between participants ● Lane ○ Subdivision of pool ○ Express roles, departments or actors in a process Pool Examples I Pool Examples II Private (Internal) Process ● From point of view of one organisation ● Activities are not visible to outside world ● One pool (the pool can be omitted) ● Also known as orchestration of services Abstract (Public) Process ● Represents the interactions between a private Process and another Process/Participant ● Only activities that send/receive messages ● Communication visible to outside world Collaboration (Global) Process ● Collaboration between business entities ● Activities represent message exchange ● Public process are shown, corresponding private processes have much more activities and detail • Gateway (Parallel, Exclusive) • Sequence Flow • Message Flow • Data Object(Data store, Message) • Text Annotation • Link Event Pair • Pool and Lane • Task (User, Service, Abstract/None) • Subprocess (Collapsed, Expanded) • Call Activity • Start Event (None, Message, Timer) • End Event (None, Message, Terminate) Level 1 Palette FIN Questions? Jiří Kolář & Lubomír Hruban PV207 – Business Process Management Spring 2018