KEMBAR78
CH 04 AdvancedProcessModeling | PDF | Procurement | Insurance
0% found this document useful (0 votes)
75 views44 pages

CH 04 AdvancedProcessModeling

Chapter 4 covers advanced process modeling techniques within the BPM lifecycle, including handling rework, events, exceptions, and integrating business rules. It discusses structured loops, multi-instance activities, and the use of events to manage process flow and exceptions. The chapter emphasizes the importance of modeling various scenarios and exceptions effectively to enhance process efficiency.

Uploaded by

Mohamed Fouad
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
75 views44 pages

CH 04 AdvancedProcessModeling

Chapter 4 covers advanced process modeling techniques within the BPM lifecycle, including handling rework, events, exceptions, and integrating business rules. It discusses structured loops, multi-instance activities, and the use of events to manage process flow and exceptions. The chapter emphasizes the importance of modeling various scenarios and exceptions effectively to enhance process efficiency.

Uploaded by

Mohamed Fouad
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 44

Chapter 4: Advanced Process Modeling

Contents
1. More on Rework and Repetition
2. Handling Events
3. Handling Exceptions
4. Processes and Business Rules
5. Recap
Process Modeling in the BPM Lifecycle

Process
Management Processes

Define Vision Develop Strategy Implement Manage Risk


Strategy

identification Core Processes

Procure Procure Market Deliver


Manage
Customer
Materials Products Products Products
Service

Support Processes

Process architecture Manage Personnel


Manage
Information Manage Assets

Conformance and Process As-is process


performance discovery model
insights

Process Process
monitoring analysis

Executable Insights on
process weaknesses and
model their impact

Process Process
implementation To-be process redesign
model
Chapter 4: Advanced Process Modeling

Contents
1. More on Rework and Repetition
2. Handling Events
3. Handling Exceptions
4. Processes and Business Rules
5. Recap
More on rework and repetition

XOR-join: entry XOR-split: exit point


point

Structured
cycle (SESE
fragment)

SESE = Single Entry Single Exit fragment, i.e. a fragment delimited by a single entry
node and a single exit node (there are no other incoming arcs into the fragment or
outgoing arcs from the fragment)
Block-structured repetition: Loop Activity

BPMN also provides the loop activity construct to allow the repetition of a task or
sub-process

Task Sub-process
Loop Loop
Example: block-structured repetition
Completion
condition
Until Response is approved

Finalise
Assign Investigate
Ministerial
Ministerial Ministerial
Response
Enquiry Enquiry
Ministerial Ministerial
Enquiry Enquiry
received finilized

Prepare Review
Ministerial Ministerial
Response Response
Enquiry Response
investigated reviewed

Must have a
decision activity
Loop Activity or (Arbitrary) Cycle?
Arbitrary Cycles

Arbitrary = unstructured, i.e. it can have multiple entry and exit nodes (non-SESE).

entry point entry point exit point

A B C D

exit point

8
Exercise 4.1

 Identify the entry and exit points that delimit the unstructured cycles in the
process model shown below. What are the repetition blocks?
 Model the business process shown below using a loop activity.
Example: multi-instance activity

Procurement
In procurement, typically a quote is to be obtained from all preferred
suppliers (assumption: five preferred suppliers exist). After all quotes
are received, they are evaluated and the best quote is selected. A
corresponding purchase order is then placed.

10
Solution: without multi-instance activity

Procurement
Obtain Quote
from Supplier A

Obtain Quote
from Supplier B

Obtain Quote Select best ...


... Place PO
from Supplier C quote

Obtain Quote
from Supplier D

Obtain Quote
from Supplier E
11
Parallel repetition: multi-instance activity

Provides a mechanism to indicate that an activity is executed multiple


times concurrently

Multi-Instance Multi-Instance
Task Sub-process

Useful when the same activity needs to be executed for multiple entities
or data items, such as:
 Request quotes from multiple suppliers
 Check the availability for each line item in an order separately
 Send and gather questionnaires from multiple witnesses in the context of an
insurance claim

12
Solution: with multi-instance activity

Procurement

cardinality
For each supplier

... Select best ...


Obtain Quote Place PO
quote

13
Further example: multi-instance activity

Motor insurance claim lodgement


After a car accident, a statement is sought from the witnesses that were
present, in order to lodge the insurance claim. As soon as the first two
statements are received, the claim can be lodged to the insurance
company without waiting for the other statements.

14
Solution: multi-instance activity
Motor insurance claim lodgement
Multi-instance pool
Data collection denotes multiple
denotes a set of data participants of the
objects of the same type same type
(determines cardinality of
multi-instance activity)

Completion
condition indicates
minimum number of
instances required to
complete
(≤ cardinality)
Our order-to-cash example…
now with pools, messages and MI markers

16
Exercise 4.2

Model the following process fragment.

After a car accident, a statement is sought from two witnesses out of


the five that were present in order to lodge the insurance claim. As
soon as the first two statements are received, the claim can be
lodged with the insurance company without waiting for the other
statements
Chapter 4: Advanced Process Modeling

Contents
1. More on Rework and Repetition
2. Handling Events
3. Handling Exceptions
4. Processes and Business Rules
5. Recap
How do we model this scenario?

PO handling
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.

19
Events handling

In BPMN, events model something instantaneous happening during the execution


of a process

They affect the process flow:


 Start
 Intermediate
 End

20
Temporal events

Start Intermediate End

Start Timer Event – Indicates that an instance of the


process is created at certain date(s)/time(s), e.g. start
process at 6pm every Friday

Intermediate Timer Event – Triggered at certain date(s)/


time(s), or after a time interval has elapsed since the
moment the event is ³enabled´ (delay)
Example: temporal events

In a small claims tribunal, callovers occur once a month to set down the
matter for the upcoming trials. The process for setting up a callover starts
three weeks prior to the callover day, with the preparation of the callover
list containing information such as contact details of the involved parties
and estimated hearing date. One week prior to the callover, the involved
parties are notified of the callover date. Finally, on the callover day, the
callover material is prepared and the callover is held.

Prepare
Prepare Contact Hold
callover
callover list parties callover
material
3 weeks prior 1 week prior callover day callover
to callover to callover held
day day
Start Intermediate Intermediate
event catching event catching event
Coming back to our scenario…

PO handling
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.
Next working day
weekend/
holiday

weekday Check Send PO


Register PO
Availability Response
PO PO
Received fulfilled
Racing events: 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

Two types of XOR split:

data-driven event-driven
XOR-split XOR split

24
Example: Event-based decision

25
Exercise 4.6: Stock Renewal

Model the following process.


A restaurant chain submits a purchase order (PO) to replenish its warehouses
every Thursday. The restaurant chain’s procurement system expects to receive
either a “PO Response” or an error message. However, it may also happen that
no response is received at all due to system errors or due to delays in handling
the PO on the supplier’s side. If no response is received by Friday afternoon or if
an error message is received, a purchasing officer at the restaurant chain’s
headquarters should be notified. Otherwise, the PO Response is processed
normally.
Matching choices in different business parties
Lead-to-Quote

Matching a
data-driven
choice at
Client
What’s wrong with this collaboration diagram?
Auction creation

19
Solution
Auction creation
Exercise 4.7
Fix the following
collaboration diagram.
Recap: message and timer events

Start Intermediate End

Catching Throwing

Untyped: indicate start point,


state changes or final states.

Message: Receiving and


sending messages.

Timer: Cyclic timer events,


points in time, time spans or
timeouts.
Chapter 4: Advanced Process Modeling

Contents
1. More on Rework and Repetition
2. Handling Events
3. Handling Exceptions
4. Processes and Business Rules
5. Recap
Process abortion

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)

33
Example 1: terminate event

Signal the negative outcome…

34
Example 2: terminate event

Abort the process by removing all tokens…

35
Exercise 4.8

Revise the examples presented so far by using the terminate event


appropriately.
Recap: Events
Start Intermediate End

Boundary Non-
Interrupting

Interrupting

Throwing
Boundary
Catching
Untyped: indicate start point,
state changes or final states.

Message: Receiving and


sending messages.

Timer: Cyclic timer events,


points in time, time spans or
timeouts.
Signal: Signalling across
different processes. A signal
can be caught multiple times.

Error: Catching or throwing


named errors.

Compensate: Handling or
triggering compensation.

Terminate: Triggering the


immediate termination of a
process.

37
Chapter 4: Advanced Process Modeling

Contents
1. More on Rework and Repetition
2. Handling Events
3. Handling Exceptions
4. Processes and Business Rules
5. Recap
Processes and Business Rules

• Business rules implement organizational policies or practices

• Example: in an online shop platinum customers have a 20%


discount for purchases over EUR 250.

• In BPMN, business rules can be captured via:


• Decision activities

• Conditions on outgoing arcs of (X)OR-split

• Conditional events

39
Example: conditional event

Replenishment order

40
Exercise 4.14

Model the following business process snippet.

In a stock exchange, stock price variations are continuously monitored


during the day. A day starts when the opening bell rings and concludes when
the closing bell rings. Between the two bells, every time the stock price
changes by more than 10%, the entity of the change is first determined.
Next, if the change is high, a “high stock price” alert is sent, otherwise a “low
stock price” alert is sent.
Chapter 4: Advanced Process Modeling

Contents
1. More on Rework and Repetition
2. Handling Events
3. Handling Exceptions
4. Processes and Business Rules
5. Recap
Recap

1. Structured loops can be modelled with loop activities, but


arbitrary cycles cannot
2. Multi-instance activities model activities that need to be
executed multiple times without a-priori knowledge of their
number
3. Multi-instantiation extends to business objects and resources
4. Intermediate events can either be catching or throwing
5. Message events capture message exchange at the start,
during and at the end of a process
6. Timer events capture temporal events (absolute or periodic)
Recap (cont‘ed)

7. Exceptions can be technology or business based, and either internal,


external or activity timeouts
8. The simplest way to handle exceptions is via process abortion using
terminate events
9. Boundary error events capture internal extensions
10. Boundary message events capture external extensions
11. Boundary timer events capture activity timeouts
12. Signal events broadcast multiple messages and can be used to
capture complex exceptions
13. Compensation events are required to revert the effects of completed
activities
14. Conditional events are one way of capturing business rules

You might also like