We think you have liked this presentation. If you wish to download it, please recommend it to your friends in any social system. Share buttons are a little bit lower. Thank you!
Presentation is loading. Please wait.
Published byMckenna Coppersmith
Modified about 1 year ago
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
Dive into WebRatio 6 BPM Milano, 09/11/2013 WebRatio Customer Services.
An Introduction to Object Modeling An Introduction to Object Modeling The approach of using object modeling during systems analysis and design is called.
WORKDAY TRAINING QUESTIONS AND ANSWERS. Position Management.
Use Cases 1. Question 1 Each waiter is assigned a group of tables, after taking orders for a table the waiters enter the orders (a list of dishes and.
Testing the Workflows of a System Vasil Chimev Junior QA Engineer Centaur Team Centaur Team Telerik QA Academy Telerik QA Academy.
Understanding an Apps Architecture ASFA Computer Science: Principles Fall 2013.
Information Systems Analysis and Design. Systems Modeling Enterprise Model graphically represents organizational entities and the relationships between.
Help Desk Procedures Topic: Tasks of the Help Desk Operator Written by Greg Webb while at Information Technology, Sydney Institute of Technology. Current.
The ESC-QuickBooks Integration For Use with ESC Version 12.
NBAJOBS Process Timing and. Agenda Monthly Process and Timing Time Entry related to NBAJOBS EPAF Timing Contacting Central Banner Dates Examples.
Adding User Interactions actionscript 3.0. Common event-handling tasks Writing code to respond to events Stopping code from responding to events Working.
The Centralized Performance System Medical Module CPS Basics.
Database System Concepts, 6 th Ed. ©Silberschatz, Korth and Sudarshan See for conditions on re-usewww.db-book.com Chapter 26: Advanced.
The CGA Program: Time to Succeed Exit Course Changes Resources Transfer Credit Courses Website Degree Requirement Financial Assistance Exams Online Learning.
IX- CONSTRUCTION PLANNING Basic Concepts in the Development of Construction Plans Choice of Technology and Construction Method Defining Work Tasks Defining.
Dynamic Forms Designing Forms – Forms Basics. Custom Logout/Timeout Clients now have the option to redirect the user to the url of their choice on logout.
Unit-V -SOFTWARE QUALITY. To develop and deliver robust system, we need a high level of confidence that Each component will behave correctly Collective.
Chapter 5: Distributed systems with JAVA: sockets, RMI, Threads Rufin Soh Wilfried Probst – Rufin Soh INE4481 DISTRIBUTED DATABASES & CLIENT-SERVER ARCHITECTURES.
The following 10 questions test your knowledge of client site assignment in Configuration Manager Configuration Manager 2007 Client Site Assignment.
©© 2013 SAP AG. All rights reserved. Scenario/Processes Service and Repair Scenario Overview Handling an Incoming Customer Inquiry Executing Services Creating.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 4, Requirements Elicitation.
4.1 What is new and what has changed? 4.1. Does H.E.L.P. 4.1 work differently? H.E.L.P. 4.1 looks the same It operates the same The icons are the same.
SCENARIO EXPLORER Introduction Basic Design Scenario Graphic Navigation Pane Content Area The Scenario Explorer provides you with comprehensive information.
Advanced SQL (part 1) CS263 Lecture 7. Processing Multiple Tables – Joins The real power of the relational model derives from its storage of data in many.
© Jim Gray, Andreas Reuter Transaction Processing - Concepts and Techniques WICS August 2 - 6, Transaction Models Chapter 4.
The. of and a to in is you that it he for.
What Makes Up a FAS Package A Final Account Statement (FAS) package must include the following items: 1.Signed FAS 2.Resident/Resident/Accounting View.
Computing Higher - SD Process – Topic 2 St Andrew’s High School Unit 2 Software Development Process.
Version 4.1 CCNA Discovery 2– Chapter 7. Contents 7.1: ISP Services : TCP / IP Protocols 7.2: 7.3: DNS 7.3: 7.4: Application Layer Protocols 7.4.
Project Management in Team Software Projects The primary challenge of project management is to achieve all of the goals of the project charter while adhering.
© 2016 SlidePlayer.com Inc. All rights reserved.