/
Business Process Modelling Business Process Modelling

Business Process Modelling - PowerPoint Presentation

alexa-scheidler
alexa-scheidler . @alexa-scheidler
Follow
454 views
Uploaded On 2016-05-15

Business Process Modelling - PPT Presentation

922013 Marcello La Rosa Queensland University of Technology Brisbane 19 September 2013 Quick Repeat from Week 8 What is a process event What is the difference between a message and a timer event ID: 321337

event process events handling process event handling events registered bpmn customer received change activity exception request interrupting error boundary

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "Business Process Modelling" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

Business Process Modelling-9.2/2013 -

Marcello La RosaQueensland University of Technology

Brisbane,

19

September 2013Slide2

Quick Repeat from Week 8What is a process event?

What is the difference between a message and a timer event?How to interrupt an activity?Slide3

Event-based decisionWith 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 flowSometimes, 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

3Slide4

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.4Slide5

A possible solution

5Slide6

Quiz: find the bugs

not

Intermediate

Timer

Event

6Slide7

Solution: event-based decision

7Slide8

Remember the quiz from slide 23 of Week 8?

8Slide9

Interlude: multiple start eventsThe first such event that occurs, will trigger an instance of the process.

9Slide10

What is this process doing?

10Slide11

BPMN Modelling- Exception Handling -Slide12

Simplest form of exception: Terminate eventExceptions are events that deviate a process from its “normal” courseThe 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)Slide13

Example: terminate eventSignal the negative outcome…Slide14

Example 2: terminate eventAbort the process by removing all tokens…Slide15

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.

15Slide16

Solution

16Slide17

Exception handlingHandling exceptions often involves stopping a sub-process and performing a special activityTypes of exceptions for an activity (task/sub-process) in BPMN:

Timeout: an activity takes too long and must be interrupted. Handled with the Timer eventExternal: 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. H

andled with the Error event

All these events stop the

enclosing

activity and start an exception handling routine.Slide18

Internal exceptions: error event

Must be attached to the activity’s boundarySlide19

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.Slide20

Solution20

Must catch an error event

thrown from within the same

activitySlide21

Compensation HandlingMay be used as part of an exception handling procedureRollback 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 EventCompensation Handler (triggered bya catching Compensate event)

performs

the rollbackSlide22

Compensate event

Must be attached to the activity’s boundarySlide23

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).Slide24

Possible solution: compensation event

Only one compensate

activity must

be linked from a catching compensate event, via a directed associationSlide25

Recap: Terminate, Error and Compensate eventsSlide26

Non-interrupting boundary eventsSometimes 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 borderAttached to the boundary of a task/sub-processSlide27

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.Slide28

Solution: non-interrupting boundary eventsSlide29

An alternative: Event Sub-ProcessTo 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 cornersIs activated when its start event is triggeredIt may or may not interrupt the parent process or sub-process, depending on the type of its start event:Non-Interrupting:Interrupting: Slide30

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-processSlide31

Recap: EventsSlide32

References

RequiredSections 4.4.3 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-CassidySlide33

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)7 3138-9482

e

m.larosa@qut.edu.au

w www.marcellolarosa.com