essential business process modeling, michael havey, o

64
Business Processes - Modelling and Implementation (I) Helen Paik School of Computer Science and Engineering University of New South Wales References used for the lecture notes: Alonso Book (Chapter 3) Workflow Management:Models, Methods and Systems, van der Aalst, et al. (Chap 1,2) Essential Business Process Modeling, Michael Havey, O’Reilly Acknowledgement: Some materials is adapted from COMP9322 lectures in previous sessions and Dr. Marcello La Rosa from QUT for his Business Process Modelling course. Week 4 H. Paik (CSE, UNSW) BPM Week 4 1 / 64

Upload: others

Post on 11-Apr-2022

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Essential Business Process Modeling, Michael Havey, O

Business Processes - Modelling and Implementation (I)

Helen Paik

School of Computer Science and EngineeringUniversity of New South Wales

References used for the lecture notes:

Alonso Book (Chapter 3)

Workflow Management:Models, Methods and Systems, van der Aalst, et al. (Chap 1,2)

Essential Business Process Modeling, Michael Havey, O’Reilly

Acknowledgement: Some materials is adapted from COMP9322 lectures in previous sessions and Dr. Marcello La Rosafrom QUT for his Business Process Modelling course.

Week 4

H. Paik (CSE, UNSW) BPM Week 4 1 / 64

Page 2: Essential Business Process Modeling, Michael Havey, O

Business Processes - Modelling and Implementation

What is a business process?

The word “process” could mean: a program running in an OS, a procedureto handle ‘work’ (e.g., processing an error, message), a set of proceduresfor achieving a goal ... In each case, the connotations are movement, workand time.

Normally, we use the term “business process” to refer to the step-by-steprules specific to the resolution of of some business problem, e.g., travelbooking, hiring an employee, applying for a university, ...

More specifically:

A collection of activities performed by human users or softwareapplications that together form the different steps to becompleted to achieve a particular business objective.

H. Paik (CSE, UNSW) BPM Week 4 2 / 64

Page 3: Essential Business Process Modeling, Michael Havey, O

Business Processes - Modelling and Implementation

Of course ... this is also a business process ...

Mentioned earlier that we consider “business process” as glue to put Web servicestogether. For COMP9322 context, business process technology is the one thatimplements “’application integration logic”’

H. Paik (CSE, UNSW) BPM Week 4 3 / 64

Page 4: Essential Business Process Modeling, Michael Havey, O

Business Process Modelling - Core of BP Technology

A process model describes “how the process works” ... with this, you cansimulate, automate/monitor/re-engineer, etc.

H. Paik (CSE, UNSW) BPM Week 4 4 / 64

Page 5: Essential Business Process Modeling, Michael Havey, O

Static Modelling vs. Process Modelling

What does (or does not) an ER model tell you? (e.g., Insurance Claim)

Employee

Rate

Happened

Rater

Underwriter

Adjuster

Underwrite

Value

Happened Action

Policy

Coverage InsuredItem

Cover

Hold InsuredParty

Client

Against

Invest Claim

ClaimActionDetails

Lodge

d

Claiment

o

In a business process, there is a sense of “state” and changing state

H. Paik (CSE, UNSW) BPM Week 4 5 / 64

Page 6: Essential Business Process Modeling, Michael Havey, O

Processing Modelling: eg., insurance claim

1 recording the receipt of the claim

2 establishing the type of claim (eg., fire, motor vehicle, travel, etc)

3 check the client’s policy to confirm that it covers what has been claimed for

4 check the premium, to confirm that payments are up-to-date

5 rejection, if task 3 or 4 has a negative result

6 producing a rejection letter

7 estimate the amount to be paid

8 appointment of an assesor to research the circumstances of the damage

9 consideration of emergency measures to limit further damage or relieve distress

10 provision of emergency measures if approved as part of task 8

11 establishment or revision of amount to be paid and offer to client

12 recording of client’s reaction: acceptance or objection

13 assessment of objection and decision to revise (task 11) or to take legalproceedings (task 14)

14 legal proceedings

15 payment of claim

16 closure of claim, filing

H. Paik (CSE, UNSW) BPM Week 4 6 / 64

Page 7: Essential Business Process Modeling, Michael Havey, O

Processing Modelling: eg., insurance claim

Some observations:

the sixteen tasks do not necessarily need to be performed in the ordershown,

some tasks need to be performed in a strict order

(eg., task 1 & 2)

certain tasks do not need to be carried out

eg., appointment of an expert,

taking emergency measures,

objection, legal proceedings, etc.

ie., there is a choice betwen two or more tasks

H. Paik (CSE, UNSW) BPM Week 4 7 / 64

Page 8: Essential Business Process Modeling, Michael Havey, O

Processing Modelling: eg., insurance claim

some tasks can be performed in parallel

checking policy and checking premiums

some tasks need to wait for the completion of more than one previoustasks

rejection task can start only after the checkings of policy and premiumsare done.

some tasks need to be repeated

objection and revision of the amount to be paid

H. Paik (CSE, UNSW) BPM Week 4 8 / 64

Page 9: Essential Business Process Modeling, Michael Havey, O

Processing Modelling: basic terminology

tasks: a process that cannot be subdivided (unit of work)

sequence: some tasks need to be performed in a strict order

selection: certain tasks do not need to be carried out

parallel: some tasks can be performed in parallel

synchronisation: some tasks need to wait for the result of previoustasks

iteration: some tasks need to be repeated

H. Paik (CSE, UNSW) BPM Week 4 9 / 64

Page 10: Essential Business Process Modeling, Michael Havey, O

Workflow Management Systems

A business process automation tool ... - supports the automaticenactment of business activities ...

A workflow refers to a formal description of a business process ... Itdescribes control flow dependencies, resource strategies and data flow(explicitly).

A workflow management system is a software platform that supports:

design, development, deployment, executionand analysis of workflow processes

H. Paik (CSE, UNSW) BPM Week 4 10 / 64

Page 11: Essential Business Process Modeling, Michael Havey, O

Workflow Management Systems

Scheduling and work allocation are the basic tasks of a WfMS.

Resource Allocation Broker

Workflow Engine

Workflow EngineWorkflow EngineWorkflow Definitions

Workflow Designer

completed work items

outbound queue

inbound queue

resource 1

resource 2

resource n

H. Paik (CSE, UNSW) BPM Week 4 11 / 64

Page 12: Essential Business Process Modeling, Michael Havey, O

Workflow types: System Workflows

All workflow activities are automatically performed by software

No user interface/interaction required

Typical candidates: Enterprise Application Integrations

H. Paik (CSE, UNSW) BPM Week 4 12 / 64

Page 13: Essential Business Process Modeling, Michael Havey, O

Workflow types: Human Workflows

Workflow activities can be manual (or automated)

Humans are actively involved via user interfaces, roles andorganisation model are important

Typical candidates: Human-intensive domains (e.g., Logistics, HR)

H. Paik (CSE, UNSW) BPM Week 4 13 / 64

Page 14: Essential Business Process Modeling, Michael Havey, O

Workflow Management Systems: e.g., YAWL

A few screenshots:

http://www.cse.unsw.edu.au/~hpaik/9322/pics

H. Paik (CSE, UNSW) BPM Week 4 14 / 64

Page 15: Essential Business Process Modeling, Michael Havey, O

Basic Workflow Concepts

A task (or activity) is a logical unit of work. It is either complete it infull, or rollback to the start of the taskA process shows which tasks need to be carried out, and the order inwhich this should be done.A case is an instance of a processProcesses can be composed or decomposed. A process has a clearstart and ending

A process can make use of previously defined processes. This way, aprocess can be structured hierarchically ...

START FINISH

H. Paik (CSE, UNSW) BPM Week 4 15 / 64

Page 16: Essential Business Process Modeling, Michael Havey, O

Workflow Concepts: The Routing

Determining the path that a case takes in a process is called routing.

Simplest form of routing is the sequential execution of tasks:

They are carried out one after the other

There is usually a clear dependency between them

eg., the result of one task is input to the next

Example 1: FeetWear (sequence): When getting dressed, I put on mysocks (S) before pulling on my boots (B).

S B

H. Paik (CSE, UNSW) BPM Week 4 16 / 64

Page 17: Essential Business Process Modeling, Michael Havey, O

Workflow Concepts: The Routing

Parallel routing:

When two tasks can be performed simultaneously, or in any order, werefer to parallel routing.

the two tasks can be performed without the result of one affectingthe other

this situation is also referred to as AND-split.

Selective routing:

When there is a choice between two or more tasks

the choice may depend upon the case attributes

this situation is also referred to as OR-split.

H. Paik (CSE, UNSW) BPM Week 4 17 / 64

Page 18: Essential Business Process Modeling, Michael Havey, O

Workflow Concepts: The Routing

Selective routing represents a decision point

Example 2: Getting to work: If it’s raining, I take the car, otherwise Icatch a bus. The process of getting to work may be described as follows:

If I take a bus, then I have to walk tothe nearest bus-stop (W); but the bustakes me directly to work (B).

If I drive (D), then I have to park (P),and then I have a short walk (S).

D

S

P

W

B

H. Paik (CSE, UNSW) BPM Week 4 18 / 64

Page 19: Essential Business Process Modeling, Michael Havey, O

Workflow Concepts: The Routing

Synchronisation: AND-join

Example 3: At the end of the day: When my partner and I return home inthe evening, it’s my job to bathe the children (C); at the same time, hecooks the evening meal (T). When we are both finished, we sit down towatch the news (N). After that, one of us puts the kids to bed (B).

N

B

C T

H. Paik (CSE, UNSW) BPM Week 4 19 / 64

Page 20: Essential Business Process Modeling, Michael Havey, O

Workflow Concepts: The Routing

AND-join represents a “process synchronisation” point

Example 4: An insurance claim: Record the receipt of the claim (R),establish the type of claim (E), then check the client’s policy (P), at thesame time check the premium (M). After that, make a decision (D)

D

P M

R

E

H. Paik (CSE, UNSW) BPM Week 4 20 / 64

Page 21: Essential Business Process Modeling, Michael Havey, O

Workflow Concepts: The Routing

Another form of synchronisation: XOR-join

Example 5: Archive the claim (A) after either the payment of the damage(P) has been made, or the customer has been contacted (C)

A

P C

Example 6: After the payment is received (R) or the credit is granted (G)the car is delivered to the customer (D).

D

R G

H. Paik (CSE, UNSW) BPM Week 4 21 / 64

Page 22: Essential Business Process Modeling, Michael Havey, O

Workflow Concepts:The Enactment

Enactment: when a work item is assigned to a resource, it onlybecomes an activity when the resource accepts it from his “in tray”.

Other forms of enactment is possible. eg:

The arrival of an messagereaching a particular time (every 6 o’clock)

There are three types of triggers for work item enactment:

a resource initiative

an external event

a time signal

H. Paik (CSE, UNSW) BPM Week 4 22 / 64

Page 23: Essential Business Process Modeling, Michael Havey, O

Let us look back on the basic concepts here ...

One can say BPM starts with having a (...) It allows us to analyse,simulate, automate, monitor, improve/re-engineer business processes

What is the difference between static modelling and processmodelling?

Review some basic terms:

unit of work (a process that cannot be subdivided)?task routing options?

business processes can be automated/implemented using (....)

Can you name two workflow types?

H. Paik (CSE, UNSW) BPM Week 4 23 / 64

Page 24: Essential Business Process Modeling, Michael Havey, O

Modelling Workflows with Petri Nets

Originate from Carl Adam Petri’s PhD thesis (1962)

A technique for the description and analysis of concurrent systems

Graphical, formal notations

Based on a few simple concepts, yet expressive

Many analysis techniques exist

There are 2 main uses of Petri nets for workflows:

Specifications of workflows

Formal foundation for workflows (semantics, analysis of properties)

H. Paik (CSE, UNSW) BPM Week 4 24 / 64

Page 25: Essential Business Process Modeling, Michael Havey, O

Modelling Workflows with Petri Nets

Classical Petri Nets

A Petri Net consists of places (circle) and transitions (rectangle)

claim record underconsideration

pay

send_letter

ready

token transition place

Two types of arcs: a place → a transition, a transition → a place

These arcs determine input places and output places

Places hold tokens: tokens can be distributed among the places(through firing of a transition)

The firing of transitions is subject to strict rules

H. Paik (CSE, UNSW) BPM Week 4 25 / 64

Page 26: Essential Business Process Modeling, Michael Havey, O

Modelling Workflows with Petri Nets

The state of a Petri Net is indicated by the distribution of tokens(eg., the previous example – vector (3,0,0))

A transition may only fire if it is enabled, i.e., there is a token at eachof its input places.

A transition is enabled when there is at least one token at each of theinput places.

When a transition fires, it consumes a token and produces tokens forthe output place (a token is removed from each of its input placesand a token is produced for each of its output places)Transitions are the active components (the process shifts from onestate to another)

Often represent an event, an operation, a transportation

Places are passive (cannot change the process’s state)Often represent a location, phase, a condition, etc.

Tokens represent objects of the process (eg., insurance claim)

H. Paik (CSE, UNSW) BPM Week 4 26 / 64

Page 27: Essential Business Process Modeling, Michael Havey, O

Petri Nets (Firing)Assume that for some reason we want maximum one case underconsideration at a time:

The additional case free ensures that transition record is blocked as soonas a claim goes under consideration

H. Paik (CSE, UNSW) BPM Week 4 27 / 64

Page 28: Essential Business Process Modeling, Michael Havey, O

Mapping Workflow Concepts onto Petri Nets

Eg., Think of a process to handle complaints

An incoming complaint is recorded.

Then the client who has complained and the department affected bythe complaints are contacted.

The client is approached for more information.

The department is informed of the complaint and may be asked for itsinitial reaction.

These two tasks may be performed in parallel.

After this the data are gathered and a decision is taken.

Depending on the decision, either a compensation payment is madeor a letter is sent.

Finally the complaint is filed.

H. Paik (CSE, UNSW) BPM Week 4 28 / 64

Page 29: Essential Business Process Modeling, Michael Havey, O

Mapping Workflow Concepts onto Petri Nets

start

record

contact_client

contact_dept

collect

assess

positive

negative

pay

send_letter

file

end

c1

c2

c3

c4

c5

c6

c7

c8

Each complaint is represented by a token

H. Paik (CSE, UNSW) BPM Week 4 29 / 64

Page 30: Essential Business Process Modeling, Michael Havey, O

Mapping Workflow Concepts onto Petri Nets

start

record

contact_client

contact_dept

collect

assess

positive

negative

pay

send_letter

file

end

c1

c2

c3

c4

c5

c6

c7

c8

case 1case 5

case 4

case 3

case 2

Multiple cases of the process can be “in action”.

H. Paik (CSE, UNSW) BPM Week 4 30 / 64

Page 31: Essential Business Process Modeling, Michael Havey, O

Mapping Workflow Concepts onto Petri Nets

start

contact_client

assess

positive

negative

pay

send_letter

file

end

c1

c2

c3

record

contact_dept

collect

c4

c5

c6

c7

c8

phase1

c5

Hierarchical petri nets: the process contains a sub-process Phase 1

H. Paik (CSE, UNSW) BPM Week 4 31 / 64

Page 32: Essential Business Process Modeling, Michael Havey, O

Mapping Workflow Concepts onto Petri Nets

Routing (sequential):

c1 c2 c3task1 task2

Routing (parallel):

c1

c2 c4

t1

task1

c3 c5task2

c6t2

AND-split AND-join

H. Paik (CSE, UNSW) BPM Week 4 32 / 64

Page 33: Essential Business Process Modeling, Michael Havey, O

Mapping Workflow Concepts onto Petri Nets

c1

OR-split

OR-join

c2 task1

c3 task2

t1

c6

Selective Routing By Decision Rule

Selective Routing By Preconditions

c1

OR-join

Decision Rule

c2 task1

c3 task2

t11

c6

t12

OR-splitPreconditions

H. Paik (CSE, UNSW) BPM Week 4 33 / 64

Page 34: Essential Business Process Modeling, Michael Havey, O

Observations from the previous two diagrams:

Decision rule:

t1 is enabled (a token is at c1)

transition t1 contains a decision rule

the decision rule is based on the case attributes (the token representsthem)

only one out put (either c2 or c3) is produced (not both)

the decision is deterministic (ie., depending on the case attributes,you know which path will be chosen)

Preconditions:

t11 and t12 “can be” enabled (a token is at c1)

The question of which transition will be enabled can benon-deterministic. (eg., when the preconditions overlap) ordeterministic (when the preconditions are disjoint).

if the preconditions are disjoint, this model is the same as the decisionrule modelling ...

H. Paik (CSE, UNSW) BPM Week 4 34 / 64

Page 35: Essential Business Process Modeling, Michael Havey, O

New notations for frequently used constructs (by YAWL)

AND-split

AND-join

OR-split

OR-join

t

t

Notations Meaning

t

t(preconditions)

t

or

(decision rule)

t

t

http://yawlfoundation.orgH. Paik (CSE, UNSW) BPM Week 4 35 / 64

Page 36: Essential Business Process Modeling, Michael Havey, O

Mapping Workflow Concepts onto Petri Nets

c1 c2 task2

Iterative Routing (1)

Iterative Routing (2)

c4 task3task1 c3

c1 c2

task2

c4 task3task1

c3

c5

Correction: The arrow between task2 and c3 should have its head pointing task 2 (not c3).

H. Paik (CSE, UNSW) BPM Week 4 36 / 64

Page 37: Essential Business Process Modeling, Michael Havey, O

Observations from the previous two diagrams

The first diagram:

task1 and task2 are performed successively. Once task2 is completed,OR-split determines whether or not it needs to be performed again.

task2 needs to be carried out at least once between task1 and task3

(ie., “repeat ... until ...”)

The second diagram:

Immediately after completing task1, OR-split determines whether ornot task2 needs to be carried out.

It is possible that task1 is directly followed by task3

(ie., “while ... do ...”)

H. Paik (CSE, UNSW) BPM Week 4 37 / 64

Page 38: Essential Business Process Modeling, Michael Havey, O

The Insurance Claim process

c1 c2

1

record

3policy

c3 c4establish_type

4 premium

reject?

c5 c6

c7

c116

reject

c8 c9

c19

c18

10

measures

emergency?

c20

amount?c10

8

expert

c1211

settlementc13

c1615

pay c1714

proceedingc15

objection?

c14reaction

close

5

5b7 9

1213

16

2

H. Paik (CSE, UNSW) BPM Week 4 38 / 64

Page 39: Essential Business Process Modeling, Michael Havey, O

Mapping Workflow Concepts onto Petri Nets

Enactment: A task in a process becomes a work item in a case. Whenthe work item is taken up by a resource, it becomes activity.

In petri net terms, a task corresponds with one or more transitions, a workitem with a transition being enabled, an activity with the firing of atransition ...

Various enactment triggers:

c1 c2

task4

c4 task5task1

c3

c6

task2

task3

c5

H. Paik (CSE, UNSW) BPM Week 4 39 / 64

Page 40: Essential Business Process Modeling, Michael Havey, O

Summary: BPM with Petri Nets

A classical Petri Net is a process; its main constructs: name threethings here.

Can you draw SEQUENCE in Petri Net?

Can you draw AND-SPLIT and AND-JOIN in Petri Net?

Can you draw OR-SPLIT and OR-JOIN in Petri Net?

H. Paik (CSE, UNSW) BPM Week 4 40 / 64

Page 41: Essential Business Process Modeling, Michael Havey, O

The need for a nicer process modelling notation

Earlier workflow modelling languages:dynamic behaviour and execution semantics (e.g., Petri Nets), butcould get quite complicated to comprehend

simple/conceptual processing modelling notation (e.g., conventionalflow charts, UML activity diagram), but not enough to fully expressclear execution semantics

each vendor using different notations

No ’formal’ notation that appeals to both technical and business usersand has clear execution semantics

⇒ BPMN (Business Process Modelling Notation) addresses this“niche”

OMG Spec 1.0 released in 2006

H. Paik (CSE, UNSW) BPM Week 4 41 / 64

Page 42: Essential Business Process Modeling, Michael Havey, O

What is BPMN, from www.bpmn.org/Documents

BPMN is flow-chart based notation for defining Business Processes

An agreement between multiple modelling tools vendors to use asingle notation for the benefit of end-user understand and training

It can generate an executable language (BPEL) from the businesslevel notation

A business process developed by a business analyst can be directlyapplied to a BPM engine, instead of going through humaninterpretations and translations

H. Paik (CSE, UNSW) BPM Week 4 42 / 64

Page 43: Essential Business Process Modeling, Michael Havey, O

What is BPMN, from www.bpmn.org/Documents

H. Paik (CSE, UNSW) BPM Week 4 43 / 64

Page 44: Essential Business Process Modeling, Michael Havey, O

BPMN Basics

BPMN diagram elements overview:

Flow Objects

EventsActivitiesGateways

Connecting Objects

Sequence FlowMessage FlowAssociation

Swimlanes

PoolsLanes

Artefacts

Data ObjectGroupAnnotation

H. Paik (CSE, UNSW) BPM Week 4 44 / 64

Page 45: Essential Business Process Modeling, Michael Havey, O

BPMN Basic Elements

H. Paik (CSE, UNSW) BPM Week 4 45 / 64

Page 46: Essential Business Process Modeling, Michael Havey, O

BPMN process support

BPMN example: private process

Business Process Modeling Notation, v1.1 13

If Swimlanes are used, then a private business process will be contained within a single Pool. The Sequence Flow of the Process is therefore contained within the Pool and cannot cross the boundaries of the Pool. Message Flow can cross the Pool boundary to show the interactions that exist between separate private business processes. Thus, a single Business Process Diagram may show multiple private business processes, each with separate mappings to BPEL4WS.

Figure 7.1 - Example of Private Business Process

Abstract (Public) ProcessesThis represents the interactions between a private business process and another process or participant (see Figure 7.2). Only those activities that are used to communicate outside the private business process, plus the appropriate flow control mechanisms, are included in the abstract process. All other “internal” activities of the private business process are not shown in the abstract process. Thus, the abstract process shows to the outside world the sequence of messages that are required to interact with that business process. A single abstract process may be mapped to a single BPEL4WS abstract process (however, this mapping will not be done in this version of the specification).

Abstract processes are contained within a Pool and can be modeled separately or within a larger BPMN Diagram to show the Message Flow between the abstract process activities and other entities. If the abstract process is in the same Diagram as its corresponding private business process, then the activities that are common to both processes can be associated.

Figure 7.2 - Example of an Abstract Business Process

Collaboration (Global) ProcessesA collaboration process depicts the interactions between two or more business entities. These interactions are defined as a sequence of activities that represent the message exchange patterns between the entities involved. A single collaboration process may be mapped to various collaboration languages, such as ebXML BPSS, RosettaNet, or the resultant specification from the W3C Choreography Working Group (however, these mappings are considered as future directions for BPMN).

Determine Orderis Complete

Check Record ofApplicant

DeterminePremium of Policy

Approve or RejectPolicy

Notify Applicant ofApproval orRejection

1) I want to see doctor

Send Appt.

5) Go see doctor

ReceiveSymptoms

6) I feel sick8) Pickup your medicine

and you can leave

ReceiveMedicineRequest

9) need my medicine

10) Here is your medicine

ReceiveDoctor

RequestSend Medicine

SendPrescription

Pickup

Patient

Doc

tor’s

Offi

ce

H. Paik (CSE, UNSW) BPM Week 4 46 / 64

Page 47: Essential Business Process Modeling, Michael Havey, O

BPMN process support

BPMN example: abstract process

Business Process Modeling Notation, v1.1 13

If Swimlanes are used, then a private business process will be contained within a single Pool. The Sequence Flow of the Process is therefore contained within the Pool and cannot cross the boundaries of the Pool. Message Flow can cross the Pool boundary to show the interactions that exist between separate private business processes. Thus, a single Business Process Diagram may show multiple private business processes, each with separate mappings to BPEL4WS.

Figure 7.1 - Example of Private Business Process

Abstract (Public) ProcessesThis represents the interactions between a private business process and another process or participant (see Figure 7.2). Only those activities that are used to communicate outside the private business process, plus the appropriate flow control mechanisms, are included in the abstract process. All other “internal” activities of the private business process are not shown in the abstract process. Thus, the abstract process shows to the outside world the sequence of messages that are required to interact with that business process. A single abstract process may be mapped to a single BPEL4WS abstract process (however, this mapping will not be done in this version of the specification).

Abstract processes are contained within a Pool and can be modeled separately or within a larger BPMN Diagram to show the Message Flow between the abstract process activities and other entities. If the abstract process is in the same Diagram as its corresponding private business process, then the activities that are common to both processes can be associated.

Figure 7.2 - Example of an Abstract Business Process

Collaboration (Global) ProcessesA collaboration process depicts the interactions between two or more business entities. These interactions are defined as a sequence of activities that represent the message exchange patterns between the entities involved. A single collaboration process may be mapped to various collaboration languages, such as ebXML BPSS, RosettaNet, or the resultant specification from the W3C Choreography Working Group (however, these mappings are considered as future directions for BPMN).

Determine Orderis Complete

Check Record ofApplicant

DeterminePremium of Policy

Approve or RejectPolicy

Notify Applicant ofApproval orRejection

1) I want to see doctor

Send Appt.

5) Go see doctor

ReceiveSymptoms

6) I feel sick8) Pickup your medicine

and you can leave

ReceiveMedicineRequest

9) need my medicine

10) Here is your medicine

ReceiveDoctor

RequestSend Medicine

SendPrescription

Pickup

Patient

Doc

tor’s

Offi

ce

H. Paik (CSE, UNSW) BPM Week 4 47 / 64

Page 48: Essential Business Process Modeling, Michael Havey, O

BPMN process support

BPMN example: collaborative process

14 Business Process Modeling Notation, v1.1

The collaboration process can be shown as two or more abstract processes communicating with each other (see Figure 7.3). With an abstract process, the activities for the collaboration participants can be considered the “touch-points” between the participants. The actual (executable) processes are likely to have much more activity and detail than what is shown in the abstract processes.

Figure 7.3 - Example of a Collaboration Business Process

Types of BPD DiagramsWithin and between these three BPMN sub-models, many types of Diagrams can be created. The following are the types of business processes that can be modeled with BPMN (those with asterisks may not map to an executable language):

• High-level private process activities (not functional breakdown)*

• Detailed private business process

• As-is or old business process*

• To-be or new business process

• Detailed private business process with interactions to one or more external entities (or “Black Box” processes)

• Two or more detailed private business processes interacting

• Detailed private business process relationship to Abstract Process

• Detailed private business process relationship to Collaboration Process

• Two or more Abstract Processes*

• Abstract Process relationship to Collaboration Process*

• Collaboration Process only (e.g., ebXML BPSS or RosettaNet)*

Patie

ntR

ecep

tioni

st/

Doc

tor

Send DoctorRequest

1) I want to see doctor

IllnessOccurs

Send Appt.

Receive Appt.

5) Go see doctor

SendSymptoms

ReceiveSymptoms

6) I feel sick

ReceivePrescription

Pickup

8) Pickup your medicineand you can leave

Send MedicineRequest

ReceiveMedicineRequest

9) need my medicine

ReceiveMedicine

10) Here is your medicine

ReceiveDoctor

RequestSend Medicine

SendPrescription

Pickup

H. Paik (CSE, UNSW) BPM Week 4 48 / 64

Page 49: Essential Business Process Modeling, Michael Havey, O

BPMN Basics, from www.bpmn.org/Documents

Tasks:

A Task is an atomic activity that isincluded within a Process. A Task isused when the work in the Process isnot broken down to a finer level ofProcess Model detail

There are specialized types of Tasks forsending and receiving, or user-basedTasks, etc.

Markers or icons can be added to Tasksto help identify the type of T ask

H. Paik (CSE, UNSW) BPM Week 4 49 / 64

Page 50: Essential Business Process Modeling, Michael Havey, O

BPMN Basics, from www.bpmn.org/Documents

Events:

An Event is something that “happens” during the course of a businessprocess. These Events affect the flow of the Process and usually havea trigger or a result. They can start, interrupt, or end the flow

To show a few of them:

H. Paik (CSE, UNSW) BPM Week 4 50 / 64

Page 51: Essential Business Process Modeling, Michael Havey, O

BPMN Basics, from www.bpmn.org/Documents

Depending on where an event is placed:

Events that are placed within theprocess flow represent things thathappen during the normal operationsof the process (e.g., sending orreceiving msgs)

Events that are attached to theboundary of an activity indicate thatthe activity should be interruptedwhen the Event is triggered

H. Paik (CSE, UNSW) BPM Week 4 51 / 64

Page 52: Essential Business Process Modeling, Michael Havey, O

BPMN Basics, from www.bpmn.org/Documents

Gateways: Exclusive Gateway - most commonly used. The Gateway(Decision) creates alternative paths based on defined conditions (eitherwith X, or not)

H. Paik (CSE, UNSW) BPM Week 4 52 / 64

Page 53: Essential Business Process Modeling, Michael Havey, O

BPMN Basics, from www.bpmn.org/Documents

Gateways: Inclusive Gateways - when decisions may produce more thanone possible outcome. They are usually followed by a correspondingmerging Inclusive Gateway

H. Paik (CSE, UNSW) BPM Week 4 53 / 64

Page 54: Essential Business Process Modeling, Michael Havey, O

BPMN Basics, from www.bpmn.org/Documents

Gateways: Parallel Gateways - multiple parallel paths are defined. TheGateway is also used to synchronize (wait for) parallel paths

H. Paik (CSE, UNSW) BPM Week 4 54 / 64

Page 55: Essential Business Process Modeling, Michael Havey, O

BPMN Basics, from www.bpmn.org/Documents

Connectors:Sequence Flow - the order that activities will be performed in a Process

Message Flow - flow of messages between two Participants of Process

H. Paik (CSE, UNSW) BPM Week 4 55 / 64

Page 56: Essential Business Process Modeling, Michael Havey, O

BPMN Basics, from www.bpmn.org/Documents

Connectors:

Association is used to associate objects to one another (such as Artifactsand Activities)

Used to show how data is input to and output from Activities

Text Annotations can be Associated with objects

H. Paik (CSE, UNSW) BPM Week 4 56 / 64

Page 57: Essential Business Process Modeling, Michael Havey, O

BPMN Basics, from www.bpmn.org/Documents

Swimlanes:

BPMN uses the concept known as “swimlanes” to help partitionand/organize activities

Pools represent Participants in an interactive (B2B) Business ProcessLanes represent sub-partitions for the objects within a Pool

H. Paik (CSE, UNSW) BPM Week 4 57 / 64

Page 58: Essential Business Process Modeling, Michael Havey, O

BPMN Basics, from www.bpmn.org/Documents

Pools: A Participant may be a business role (e.g., buyer or seller) or may abusiness entity (e.g., IBM or UNSW)

A Pool may be a black box or may contain a ProcessInteraction between Pools is handled through Message FlowSequence Flow cannot cross the boundary of a Pool (i.e., a Process isfully contained within a Pool)

H. Paik (CSE, UNSW) BPM Week 4 58 / 64

Page 59: Essential Business Process Modeling, Michael Havey, O

BPMN Basics, from www.bpmn.org/Documents

Lanes represent sub-partitions for the objects within a Pool

They often representorganization roles (e.g.,Manager, Associate),but can represent anydesired Processcharacteristic

Sequence Flow can crossLane boundaries

H. Paik (CSE, UNSW) BPM Week 4 59 / 64

Page 60: Essential Business Process Modeling, Michael Havey, O

BPMN Basics, from www.bpmn.org/Documents

Artifacts: Artifacts provide the capability to show information beyond thebasic flow-chart structure of the Process. Three types: Data Objects,Annotations and Groups

Data Objects - show howdata and documents are usedwithin a Process

can be used to defineinputs and outputs ofactivities

can be given a state thatshows how a documentmay be changed orupdated within theProcess

H. Paik (CSE, UNSW) BPM Week 4 60 / 64

Page 61: Essential Business Process Modeling, Michael Havey, O

BPMN Basics, from www.bpmn.org/Documents

Groups are Artifacts that are used to highlight certain sections of aDiagram without adding additional constraints for performance. Groupsare not constrained by restrictions of Pools and Lanes

H. Paik (CSE, UNSW) BPM Week 4 61 / 64

Page 62: Essential Business Process Modeling, Michael Havey, O

BPMN Basics, from www.bpmn.org/Documents

Text Annotations

Text Annotations are a mechanism for a modeler to provide additionalinformation about a Process

Text Annotations can be connected to a specific object on theDiagram with an Association

H. Paik (CSE, UNSW) BPM Week 4 62 / 64

Page 63: Essential Business Process Modeling, Michael Havey, O

Exercise ... from www.bpmn.org/Documents

Claims Handling process at a car insurer1

The process starts when a customer submits a claim by sendingin relevant documentation. The Notification department at thecar insurer checks the documents upon completeness andregisters the claim. Then, the Handling department picks up theclaim and checks the insurance. Then, an assessment isperformed. If the assessment is positive, a garage is phoned toauthorise the repairs and the payment is scheduled (in thisorder). In any case (whether the outcome is positive ornegative), a letter is sent to the customer and the process isconsidered to be complete.

Find a way to visualize the different roles included in the processdescription.

1by Dr. Marlon Dumas’ BPM course: http://courses.cs.ut.ee/2011/bpm/H. Paik (CSE, UNSW) BPM Week 4 63 / 64

Page 64: Essential Business Process Modeling, Michael Havey, O

The idea is a model to execution ...

H. Paik (CSE, UNSW) BPM Week 4 64 / 64