Business Process Modelling -9.2/2013 - Marcello La Rosa Queensland University of Technology Brisbane, 19 September 2013.

Slides:



Advertisements
Similar presentations
Dive into WebRatio 6 BPM Milano, 25/03/2017
Advertisements

Business Process Modelling -8.2/2013 -
A look at interrupts What are interrupts and why are they needed.
QI Usage Requests: Part 2 Managing, Approving & Ordering.
Activity Diagrams in UML. Definition Activity diagrams represent the dynamics of the system. They are flow charts that are used to show the workflow of.
Process Patterns in BizAGI. Slide 2 Overview Types of events Types of gateways Design patterns list.
Marlon Dumas marlon.dumas ät ut . ee
MODUL 1 Analisis & Informasi Proses Bisnis (CSA221)
1 Introduction to modeling Process modelling. 2 Where are we? #TitleDate 1Introduction ORM modeling Relational modeling
CSI 3120, Exception handling, page 1 Exception and Event Handling Credits Robert W. Sebesta, Concepts of Programming Languages, 8 th ed., 2007 Dr. Nathalie.
/faculteit technologie management PN-1 Petri nets refresher Prof.dr.ir. Wil van der Aalst Eindhoven University of Technology, Faculty of Technology Management,
Introduction to BizAgi. Slide 2 User Interface (Summary) The user interface for BizAgi resembles Office It uses a similar ribbon The Palette contains.
January Ron McFadyen1 Use Cases in the UML Functionality under consideration is represented by use cases (named ellipses) enclosed in a box.
University of Toronto Department of Computer Science © Steve Easterbrook. This presentation is available free for non-commercial use with attribution.
Close Registration Brief Description
Essentials of state and activity diagram Lecture 24.
Modeling System Events Adapted from: Systems Analysis and Design in a Changing World, 2nd Edition by John W. Satzinger, Robert Jackson and Stephen Burd.
Use Case Modeling. Kendall & Kendall© 2005 Pearson Prentice Hall18-2 Commonly Used UML Diagrams The most commonly used UML diagrams are: – Use case diagram,
BPMN An Introduction ISIS. © ILOG, All Rights Reserved 2 Definition of BPMN Business Process Modeling Notation provides:  The capability of defining.
Exceptions, Interrupts & Traps
Department of Computer Science 1 CSS 496 Business Process Re-engineering for BS(CS)
© Richard Welke 2002 CIS 4120 Fa13: Define/Innovate BP’s Richard Welke Director, CEPRIN Professor, CIS Robinson College of Business Georgia State University.
Department of Computer Science 1 CSS 496 Business Process Re-engineering for BS(CS)
Business Process Management System Using Intalio BPMS.
Marlon Dumas marlon.dumas ät ut . ee
1 Exception and Event Handling (Based on:Concepts of Programming Languages, 8 th edition, by Robert W. Sebesta, 2007)
Marlon Dumas University of Tartu
COMP201 Computer Systems Exceptions and Interrupts.
BPMN By Hosein Bitaraf Software Engineering. Business Process Model and Notation (BPMN) is a graphical representation for specifying business processes.
Session 5: Business Process Modeling (BPMN) Events
1. To start the process, Warehouse Stationery (WSL) will invite you to use The Warehouse Group Supplier Electronic Portal and will send you the link to.
Interaction Models (2): Sequence Diagrams Extracted from textbook: Object Oriented Modeling and Design with UML M. Blaha, J. Rumbaugh 1.
مهندسی مجدد فرآیندهای تجاری
© Richard Welke 2002 CIS 4120 Fa13: Define/Innovate BP’s Richard Welke Director, CEPRIN Professor, CIS Robinson College of Business Georgia State University.
Petri nets refresher Prof.dr.ir. Wil van der Aalst
CS212: Object Oriented Analysis and Design Lecture 34: UML Activity and Collaboration diagram.
Qualifications Portal Guide Personal Development and Employability Qualification.
Marlon Dumas University of Tartu
1 Modeling workflows : The organizational dimension and alternative notations. Wil van der Aalst Eindhoven University of Technology Faculty of Technology.
/faculteit technologie management PN-1 مهندسی مجدد فرآیندهای تجاری بخش سوم: مدیریت منابع فرآیند Workflow Resource Management.
Practical Object-Oriented Design with UML 2e Slide 1/1 ©The McGraw-Hill Companies, 2004 PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e Chapter 10: Statecharts.
BPMN.  BPMN will provide businesses with the capability of understanding their internal business procedures in a graphical notation.
MTAT Business Process Management Lecture 2 – Process Modeling I Marlon Dumas marlon.dumas ät ut. ee 1.
Prof. Marcello La Rosa BPM Discipline Queensland University of Technology.
Prof. Marcello La Rosa BPM Discipline Queensland University of Technology.
Prof. Marcello La Rosa BPM Discipline Queensland University of Technology.
3M Partners and Suppliers Click to edit Master title style USER GUIDE Supplier eInvoicing USER GUIDE The 3M beX environment: Day-to-day use.
MTAT Business Process Management Lecture 3 – Process Modeling II Marlon Dumas marlon.dumas ät ut. ee 1.
Prof. Marcello La Rosa BPM Discipline Queensland University of Technology.
Marlon Dumas University of Tartu
Business Process Modelling
Prof. Marcello La Rosa BPM Discipline Queensland University of Technology.
CRICOS No J a university for the world real R 1 Prof. Marcello La Rosa BPM Discipline Queensland University of Technology.
How To Register & Order Meals on Meal Selector
Studio modeling basics
System Architect support for Business Process Modeling Notation (BPMN)
Information Delivery Manuals: Process Mapping
Marlon Dumas marlon.dumas ät ut . ee
Enn Õunapuu ICT-643
CSS 496 Business Process Re-engineering for BS(CS)
Lab 6: Business Process Modeling Notation (BPMN) Additional Exercises
Chapter 10: Process Implementation with Executable Models
Marlon Dumas University of Tartu
Processor Fundamentals
Use Cases 1.
Chapter 10 Object States and The Statechart Diagram
Marlon Dumas marlon.dumas ät ut . ee
BPMN - Business Process Modeling Notations
Exception and Event Handling
Presentation transcript:

Business Process Modelling -9.2/ Marcello La Rosa Queensland University of Technology Brisbane, 19 September 2013

© INB/INN /2011 – 19 September 2013 Quick Repeat from Week 8 What is a process event? What is the difference between a message and a timer event? How to interrupt an activity?

© INB/INN /2011 – 19 September 2013 Event-based decision With the XOR-split gateway, a branch is chosen based on conditions that evaluate over available data  The choice can be made immediately after the token arrives from the incoming flow Sometimes, the choice must be delayed until an event happens  The choice is based on a race among events This is why BPMN distinguishes data-driven and event- driven XOR-splits data-driven XOR-split event-driven XOR split 3

© INB/INN /2011 – 19 September 2013 Example: event-based decision Restaurants submit orders to suppliers to replenish their food stocks every Thursday. The process for completing an order starts when a restaurant receives either a “PO Response” or an error message. However it may also happen that no response is received at all. If no response is received by Friday afternoon or if an error message is received, the purchasing officer should be notified. Otherwise, the PO Response is processed normally. 4

© INB/INN /2011 – 19 September 2013 A possible solution 5

© INB/INN /2011 – 19 September 2013 Quiz: find the bugs not Intermediate Timer Event 6

© INB/INN /2011 – 19 September 2013 Solution: event-based decision 7

© INB/INN /2011 – 19 September 2013 Remember the quiz from slide 23 of Week 8? 8

© INB/INN /2011 – 19 September 2013 Interlude: multiple start events The first such event that occurs, will trigger an instance of the process. 9

© INB/INN /2011 – 19 September 2013 What is this process doing? 10

BPMN Modelling - Exception Handling -

© INB/INN /2011 – 19 September 2013 Simplest form of exception: Terminate event Exceptions are events that deviate a process from its “normal” course The simplest form of exception is to notify that there is an exception (negative outcome) This can be done via the Terminate end event: it forces the whole process to abort (“wipes off” all tokens left behind, if any)

© INB/INN /2011 – 19 September 2013 Example: terminate event Signal the negative outcome…

© INB/INN /2011 – 19 September 2013 Example 2: terminate event Abort the process by removing all tokens…

© INB/INN /2011 – 19 September 2013 Example: our PO handling process (see Week 8) A Purchase Order (PO) handling process starts when a PO is received. The PO is first registered. If the current date is not a working day, the process waits until the following working day before proceeding. Otherwise, an availability check is performed and a “PO response” is sent back to the customer. Anytime after the PO has been registered, the customer may send a “PO change request”. When such a PO change request is received, any processing related to the PO must be stopped. The PO change request is then registered. Thereafter, the process proceeds as it would do after a normal PO is registered. Further, if the customer sends a “PO cancelation request” after the PO registration, the PO processing must be stopped and the change request needs to be handled. 15

© INB/INN /2011 – 19 September 2013 Solution 16

© INB/INN /2011 – 19 September 2013 Exception handling Handling exceptions often involves stopping a sub-process and performing a special activity Types of exceptions for an activity (task/sub-process) in BPMN: Timeout: an activity takes too long and must be interrupted. Handled with the Timer event External: something goes wrong outside the process, and the execution of the current activity must be interrupted. Handled with the Message event Internal: something goes wrong inside an activity, whose execution must thus be interrupted. Handled with the Error event All these events stop the enclosing activity and start an exception handling routine.

© INB/INN /2011 – 19 September 2013 Internal exceptions: error event Must be attached to the activity’s boundary

© INB/INN /2011 – 19 September 2013 Example: error event Consider our “PO Handling process” example with the following extension: if an item is not available, any processing related to the PO must be stopped. Thereafter, the client needs to be notified that the PO cannot be further processed.

© INB/INN /2011 – 19 September 2013 Solution 20 Must catch an error event thrown from within the same activity

© INB/INN /2011 – 19 September 2013 Compensation Handling May be used as part of an exception handling procedure Rollback of completed process activities E.g.: Bookings for holidays have successfully been completed. However, it turns out that the given credit card details were incomplete. A booking rescission is necessary. Triggered by throwing Compensate Event Compensation Handler (triggered by a catching Compensate event) performs the rollback

© INB/INN /2011 – 19 September 2013 Compensate event Must be attached to the activity’s boundary

© INB/INN /2011 – 19 September 2013 Example: compensation event Let’s extend out PO Handling process. After a PO has been registered, checked, and a response has been sent back, a payment sub-process and a fulfilment sub-process are started in parallel. During these two sub-processes, a PO cancellation may be received from the customer. In this case, both sub- processes are stopped, and a compensation routine is performed for each of them (e.g. reimbursement and/or goods return may need to occur).

© INB/INN /2011 – 19 September 2013 Possible solution: compensation event Only one compensate activity must be linked from a catching compensate event, via a directed association

© INB/INN /2011 – 19 September 2013 Recap: Terminate, Error and Compensate events

© INB/INN /2011 – 19 September 2013 Non-interrupting boundary events Sometimes we may need to trigger a task/sub-process in parallel to the normal flow, i.e. without interrupting the normal flow. This can be achieved by using non-interrupting boundary events: –Double dashed border –Attached to the boundary of a task/sub-process

© INB/INN /2011 – 19 September 2013 Example: non-interrupting boundary events Again, our PO handling process… A Purchase Order (PO) handling process starts when a PO is received. The PO is first registered. If the current date is not a working day, the process waits until the following working day before proceeding. Otherwise, an availability check is performed and a “PO response” is sent back to the customer. Anytime after the PO has been registered, the customer may send a “PO change request”. When such a PO change request is received, any processing related to the PO must be stopped. The PO change request is then registered. Thereafter, the process proceeds as it would do after a normal PO is registered. Further, if the customer sends a “PO cancelation request” after the PO registration, the PO processing must be stopped and the chance request needs to be handled. The customer may send a “Customer address change request” after the PO registration. When such a request is received, it is just registered, without further action.

© INB/INN /2011 – 19 September 2013 Solution: non-interrupting boundary events

© INB/INN /2011 – 19 September 2013 An alternative: Event Sub-Process To handle events that may not refer to a particular task/sub- process within a process. Placed into a process or sub-process Depicted within a dotted rectangle with rounded corners Is activated when its start event is triggered It may or may not interrupt the parent process or sub- process, depending on the type of its start event: –Non-Interrupting: –Interrupting:

© INB/INN /2011 – 19 September 2013 Example: Event Sub-Process when the event sub-process is inside a sub-process, it can only be receptive of those events that occur during the execution of the enclosing sub-process

© INB/INN /2011 – 19 September 2013 Recap: Events

© INB/INN /2011 – 19 September 2013 References Required Sections and 4.5 of Chapter 4 of textbook “Fundamentals of BPM” Recommended OMG (2011): BPMN 2.0 Specification BPM Offensive (2011): BPMN 2.0 Poster OGM (2010): BPMN 2.0 By Example Web References OMG BPM Initiative BPMN Community Books on BPMN Silver B. (2011): “BPMN Method & Style” 2 nd Edition, Cody-Cassidy

© INB/INN /2011 – 19 September 2013 A/Prof. Marcello La Rosa IS School Academic Director (Corporate Programs and Partnerships) BPM Discipline, IS School Science & Engineering Faculty Queensland University of Technology 126 Margaret Street Brisbane QLD 4000 Australia p +61 (0) e w