CHAPTER FIVE BUSINESS PROCESS MODELS Dr. Rami Gharaibeh 1

advertisement
CHAPTER FIVE
BUSINESS PROCESS MODELS
Dr. Rami Gharaibeh
1
CHAPTER FIVE
Description
A business process model describes tasks and the
ordering of these tasks: what work is performed and
when it is performed. A business process model also
captures who performs the tasks.
Dr. Rami Gharaibeh
2
CHAPTER FIVE
Importance
smooth businesses vs. rough businesses ‫؟‬
The smooth businesses execute good business processes; the
rough businesses execute poor ones.
all restaurants pursue the same goals of serving food
for hungry customers, but they differ in the details of
their business processes. They greet customers
differently, they take reservations differently, and they
prepare dinners differently.
business models in general are used for eight purposes:....
Dr. Rami Gharaibeh
3
CHAPTER FIVE
Activities
An activity is a discrete chunk of work, something with a
beginning and an end, that is performed one or more
times.
Typically an activity is one step of a larger business
process. For example, Serve Appetizers is part of the
larger business process Serve Meal. There are other
activities within Serve Meal, including Serve Entrees
and Serve Desserts.
Dr. Rami Gharaibeh
4
CHAPTER FIVE
Activities
Every activity performs work.
when a call is made to a help desk, instead the call is a
trigger for the first help desk activity, Get Caller Info.
activities rarely appear by themselves. Instead, several
activities typically appear together as part of a larger
process.
Dr. Rami Gharaibeh
5
CHAPTER FIVE
Sequence flows
A sequence flow is a connection between two activities,
showing that one activity is performed before the other. A
sequence flow is shown as a solid line with an arrow, from
the activity performed first to the activity performed next.
A sequence flow means only that one activity occurs after
the other. An interaction is labeled by the deliverable that
one organization delivers to the other. A sequence flow is
usually unlabeled and is never labeled with a deliverable.
Dr. Rami Gharaibeh
6
CHAPTER FIVE
Activity attributes
Activity attributes capture details of the work.





Name
Description
Time
Resource (role)
Cost
Dr. Rami Gharaibeh
7
CHAPTER FIVE
Activity attributes
Activity Name
Activity names are short, typically no longer than four
words, and better when they are two or three words.
The name of an activity need not convey the details of
the way the activity is performed. Names start with a
verb.
Dr. Rami Gharaibeh
8
CHAPTER FIVE
Activity attributes
Activity Description
The description of an activity gives more detail about
the work, what it means, and how it is performed.
A description typically notes whether a software
application is used to perform the activity. If an
application is used, the description includes the way
the person interacts with the application.
Dr. Rami Gharaibeh
9
CHAPTER FIVE
Activity attributes
Activity Description
example
Check the reservation book to see whether the
reservation exists. Verify that the party arrived before
the reservation time.
Use the reservation system to check whether the
reservation exists, searching for the reservation by
name or by time. Verify that the party is not late, that
they have arrived before the reservation expires.
Dr. Rami Gharaibeh
10
CHAPTER FIVE
Activity attributes
Activity Time
Activities are temporal. Each activity takes time to
complete. Some activities are fast, taking seconds.
Other activities are slow, taking months.
Dr. Rami Gharaibeh
11
CHAPTER FIVE
Activity attributes
Activity Time
Often there are delays:
 delays before the work,
 delays during the work,
 delays because of the work.
Dr. Rami Gharaibeh
12
CHAPTER FIVE
Activity attributes
Activity Time
It is important for subsequent process analysis to
capture these times. If the business process is
simulated, the activity times are used by the
simulation engine.
Dr. Rami Gharaibeh
13
CHAPTER FIVE
Activity attributes
Activity Resource (role)
Typically an activity is performed by a person, the
person who does the work of the activity. This person
is called the activity’s resource.
Of course different people perform the same activity
at different times. So the resource of an activity is not
a single person but a role.
a role is the responsibility a person assumes when he holds a
position in an organization. For example, the role Host is the
resource of the activity Check Reservations. When a particular
party arrives, their reservations are checked by a single person
who plays that role.
Dr. Rami Gharaibeh
14
CHAPTER FIVE
Activity attributes
Activity Cost
People do not work for free. Every resource has a
cost, and the cost varies from role to role and from
person to person. Details about costs of the resources
are useful to understand the end-to-end cost of a
process.(What is 'End To End') ?
Dr. Rami Gharaibeh
15
CHAPTER FIVE
Activity attributes
Manual vs. IT-supported
Some activities are manual work, performed by a
resource without any assistance (welcoming an
arriving party).
some activities are supported by technology (looking
up names in a reservations system).
We can then analyze how new technology could be used and
how the activity’s resource would interact with that new
technology in performing the activity.
Dr. Rami Gharaibeh
16
CHAPTER FIVE
Activity attributes
Software activities
Some activities are solely software, performed entirely
by a software application, with no person involved.
In this solely software activity, the application does not
support a (human) resource who is performing the
activity. Instead the application is the sole resource
performing the activity.
Dr. Rami Gharaibeh
17
CHAPTER FIVE
Activity attributes
Software activities
Business process modeling is not about modeling
software; it is about modeling the work that people do.
Solely software activities are uncommon in good
business process models.
Dr. Rami Gharaibeh
18
CHAPTER FIVE
Events
A business process has a beginning and an end. A
process begins with a start event and ends with an
end event. All the activities of the business process—
the actual work performed—occur after the start event
and before the end event.
Dr. Rami Gharaibeh
19
CHAPTER FIVE
Events
Activity names are typically imperative sentences;
they sound like commands. The verb is at the
beginning of the name. The name of a start event is
typically a declarative sentence, describing something
that happens. The verb is at the end.
Dr. Rami Gharaibeh
20
CHAPTER FIVE
Events
Most processes have multiple end events. Diners
might leave after eating and paying, or they might
leave early, disgruntled by long delays in their
restaurant experience. They might even leave before
they are seated, after waiting too long for a table, or
because they are called out to perform emergency
surgery. A process can also have multiple start
events, showing different ways that work begins.
Dr. Rami Gharaibeh
21
CHAPTER FIVE
Intermediate Events
Some processes have an intermediate event, an
event that happens after the process starts but before
it ends. Many intermediate events model delays. Like
start events, the name of an intermediate event is
also a declarative sentence.
Dr. Rami Gharaibeh
22
CHAPTER FIVE
Event Description
Events of all three varieties can have descriptions,
just as an activity can have a description.
Dr. Rami Gharaibeh
23
CHAPTER FIVE
Event Description
Events also support other attributes. Start events
record detail about when work starts.
For example, Diner Arrives includes attributes
modeling how often dining parties arrive, how many
on which night of the week, the sizes of the parties,
and so on.
These attributes are used for process simulation.
Dr. Rami Gharaibeh
24
CHAPTER FIVE
Lanes
A business process model graphically shows who
performs which activities. Each role that performs
activities in a business process has a lane.
When a customer is shown, the customer is usually
the top lane.
Putting the customer on top is a common convention
that makes business process models easier to read.
Dr. Rami Gharaibeh
25
CHAPTER FIVE
Lanes
Dr. Rami Gharaibeh
26
CHAPTER FIVE
Lanes
When a process model has more than two lanes, the
modeler must decide which lane is placed where.
A good rule of thumb is to place lanes to minimize
sequence flow
Dr. Rami Gharaibeh
27
CHAPTER FIVE
Gateways
1-Exclusive gateways
:
We use a gateway to model sequence flow
alternatives. A gateway is depicted as a diamond
shape. Multiple sequence flows exit a gateway.
Gateways are named. The name of a gateway is a
question, with the alternative answers to the question
as labels on the outgoing sequence flows.
Dr. Rami Gharaibeh
28
CHAPTER FIVE
Gateways
Dr. Rami Gharaibeh
29
Gateways
 5.20 Seating flow shows more of the same process. If the
party has no reservations and no table is available, the
host looks for a way to arrange tables. If no such
rearrangement exists, the party will wait for a table,
perhaps waiting 20 minutes or an hour. Ideally the party
simply waits until a table is available, but in practice many
parties are impatient and ask periodically about the status
of their table. So the process in Figure 5.10 shows the
host checking for availability after a wait, only to
sometimes ask the party to wait some more. The activities
Check Availability, Check for Rearrangement, and Wait for
Table are part of a sequence flow loop, a cycle of
activities connected by sequence flow.
30
CHAPTER FIVE
5.20Seating flow
Gateways
Dr. Rami Gharaibeh
31
CHAPTER FIVE
2-Parallel Gateways
The previous gateways are exclusive gateways. With
an exclusive gateway, either one sequence flow is
taken or the other is taken.
But not every gateway is an exclusive gateway. A
parallel gateway starts parallel work—two (or more)
sequence flows that then progress at the same
time, perhaps to be later joined back together by
another parallel gateway.
Dr. Rami Gharaibeh
32
2-Parallel Gateways
Consider the process shown in Figure 5.11, with detail on the
preparation of appetizers, entrees, and desserts. In Figure 5.11,
the chef prepares the appetizers and the entrees at the same
time. The appetizers can be prepared quickly and are served to
the customers when they are ready. The parallel gateway Split
Order splits the work into two parallel flows, one traveling the
upper sequence flow to Prepare Entrees, and one traveling the
lower sequence flow to Prepare Appetizers.
After the appetizers and entrees are served, the sequence flows
arrive at the other (unnamed) parallel gateway. At this point
they are combined back together, and the subsequent activity
Serve Desserts is performed only once.
33
parallelCHAPTER
gateway
FIVE
mandates the use of
both sequence flows.
Parallel Gateways
Figure 5.11 says that
both entrees and
appetizers are
prepared.
Dr. Rami Gharaibeh
Figure 5.11
34
CHAPTER FIVE
Inclusive Gateways
A party can order just appetizers, just entrees, or both
appetizers and entrees.
Instead of using a parallel gateway, this situation can
be modeled with an inclusive gateway.
Dr. Rami Gharaibeh
35
CHAPTER FIVE
Inclusive Gateways
An inclusive gateway allows either outgoing
sequence flow to be taken or both to be taken in
parallel.
Dr. Rami Gharaibeh
36
CHAPTER FIVE
Inclusive Gateways
Dr. Rami Gharaibeh
37
CHAPTER FIVE
Inclusive Gateways
The behavior of the first gateway—Split Order—is a
bit complex. When a work arrives at Split Order,
sometimes it needs to travel the upper path,
sometimes the lower path, and sometimes work
needs to be split so that the two paths can occur in
parallel.
Dr. Rami Gharaibeh
38
CHAPTER FIVE
Inclusive Gateways
Chapter 11 describes how to simulate an inclusive
gateway, providing percentages (for example) for how
often the upper and lower paths are taken.
Dr. Rami Gharaibeh
39
CHAPTER FIVE
Default SF & Conditional SF
One of the outgoing sequence flows from a gateway
can be marked as a default. A default sequence flow
is the one taken if there is no reason to take another
sequence flow.
Dr. Rami Gharaibeh
40
CHAPTER FIVE
Default SF & Conditional SF
Dr. Rami Gharaibeh
41
conditional sequence flow
 conditional sequence flow. A conditional
sequence flow is a sequence flow that
includes a condition, a description of the
situation under which it is permissible to take
that sequence flow. The conditional sequence
flow is depicted with a miniature diamond
at its beginning.
42
 There is an alternative notation to using an
inclusive gateway
43
CHAPTER FIVE
Default SF & Conditional SF
There is an alternative notation to using an inclusive gateway
Dr. Rami Gharaibeh
44
CHAPTER FIVE
Sub-processes
Some activities are atomic; there is no more detail
about the activity than its name, its description, and its
attributes. Such activities are called tasks.
A sub-process is an activity that has this extra detail,
that can itself be described as a process.
Dr. Rami Gharaibeh
45
CHAPTER FIVE
Sub-processes
Dr. Rami Gharaibeh
46
CHAPTER FIVE
Sub-processes
referred to as the lower-level process and
What if we press on “seat party”?
Dr. Rami Gharaibeh
47
CHAPTER FIVE
Sub-processes
Dr. Rami Gharaibeh
upper-level process
48
CHAPTER FIVE
Sub-processes
The previous sub-process is “independent”
the sub-process could be “embedded
1-"what is the drawbacks of embedded processes ?
2-Subprocesses are also easier to maintain why?!
Dr. Rami Gharaibeh
49
CHAPTER FIVE
Compensation & other Conditions
A dining party might leave rather than wait for a table.
Actually, a party could leave at any time—just after
they arrive or when they learn of a wait, while waiting
or after they see a menu. They might leave during the
meal because their child is misbehaving or because
someone in the party becomes sick.
Dr. Rami Gharaibeh
50
CHAPTER FIVE
Compensation & other Conditions
There are many potential departures. It is possible to
model all these potential departures with gateways.
One could introduce a gateway after every activity,
asking whether the dining party leaves now. The
process model would then be full of gateways, all to
model the situation of a dining party leaving early.
Obviously, such a model is awkward.
Dr. Rami Gharaibeh
51
CHAPTER FIVE
Compensation & other Conditions
Instead of using dozens of gateways, we model the
potential for departure at any time with a single
exception flow.
An exception flow is a sequence flow triggered by an
exception—an intermediate event that occurs
sometime during the course of a sub-process.
Dr. Rami Gharaibeh
52
CHAPTER FIVE
Exception Flow
Dr. Rami Gharaibeh
53
CHAPTER FIVE
Practice
Dr. Rami Gharaibeh
54
CHAPTER FIVE
Business Transactions
Sometimes a business process includes a business
transaction. A business transaction is a collection of
activities that must either complete successfully or
must be rolled back in their entirety, as though none of
the activities had never been performed.
A business transaction can take hours, days, or even
weeks to complete. Business transactions are common
in business
Dr. Rami Gharaibeh
55
special
event rooms
Next fig. shows the process for reserving a special event
room. The normal process is quite simple. Mykonos takes a
reservation for a room in the activity Take Special Event
Room Reservation. Some customers want entertainment—a
comic or musicians—for their event. Rather than allow
customers to book their own entertainers, Mykonos prefers
to handle those reservations as well, to ensure that only
appropriate entertainment is performed at their restaurants.
So the next step of the process is optionally booking
entertainment in the activity Reserve Entertainment. Finally
the customer is charged, two weeks before the event.
56
Business Transactions
 Take Special Event Room Reservation and
Reserve Entertainment are contained within the
embedded subprocess Take Reservation. The
subprocess is a transaction, as shown by the
activity’s double hull
57
Not performed using the usual dining reservations
process
CHAPTER FIVE
Business Transactions
Dr. Rami Gharaibeh
58
CHAPTER FIVE
Business Transactions
TheGharaibeh
activity
Dr. Rami
is a transaction
59
the cancel trigger is only allowed within a
transaction activity.
CHAPTER FIVE
Business Transactions
Cancel trigger or compensation activity, meaning that it compensates for activities that have
already occurred, bringing the transaction back to the situation before anything happened
Dr. Rami Gharaibeh
60
CHAPTER FIVE
Business Transactions
Compensation activity
Dr. Rami Gharaibeh
61
CHAPTER FIVE
Business Transactions
Compensation trigger
Dr. Rami Gharaibeh
62
CHAPTER FIVE
Business Transactions
The intermediate event in Figure 5.19 is not a cancel trigger
but is instead an exception trigger. So when a dining party leaves,
no compensation activities will be performed.
cancel trigger vs. exception trigger
Compensation activity
No compensation activity
Dr. Rami Gharaibeh
63
CHAPTER FIVE
Pools
We model multiple processes and the interactions
between those processes using pools.
A pool is a horizontal container for other process
elements:
• activities
• events
• Gateways
A pool can contain lanes, and usually does.
Dr. Rami Gharaibeh
64
CHAPTER FIVE
Pools
Dr. Rami Gharaibeh
65
CHAPTER FIVE
Pools
The interaction between the pools occurs in message
flows, shown as dashed lines.
A message flow is different from a sequence flow. A
message flow is used to connect activities (or events)
that are in different pools.
Two activities in the same pool are never connected by a
message flow, because both activities have access to the same
information.
Message flows resemble faxes, emails,Web service
invocations, telephone calls, even in-person visits.
Dr. Rami Gharaibeh
66
CHAPTER FIVE
Pools
white box pool vs. black box pool
More page 125 ….
Dr. Rami Gharaibeh
67
CHAPTER FIVE
Pools
Dr. Rami Gharaibeh
68
CHAPTER FIVE
Pools
How do you decide whether a business process should
be modeled using multiple pools interacting with
message flows or as a single pool using sequence
flow? The key question to answer is: Who manages
the process? If the whole process is managed by a
single organization, a single pool is appropriate. If
multiple organizations manage their own processes
that then interact, multiple pools are important
•
should we consider the customer as a pool?
Dr. Rami Gharaibeh
69
CHAPTER FIVE
as-is and to-be models
It is common to have a single as-is process model
and several different to-be process models.
Several alternatives are evaluated to decide which is
the best business processes for the future. Depending
on the evaluation goals, we could decide on a to-be
model that takes the least amount of time to complete
the work. Alternatively, we might decide on the to-be
model that best improves customer quality.
Dr. Rami Gharaibeh
70
CHAPTER FIVE
Self-reading
The BPMN Standard
• watch this videos
1.
2.
https://www.youtube.com/watch?v=7QFwcFsSICQ
https://www.youtube.com/watch?v=WtOzW8Ck5LY
Dr. Rami Gharaibeh
71
CHAPTER FIVE
Case Study
U.S. Customs and Border Protection
Dr. Rami Gharaibeh
72
CHAPTER SEVEN
CREATING A GOOD MODEL
Dr. Rami Gharaibeh
73
Download