BP 10 PetriNetsNewLectureNotes
BP 10 PetriNetsNewLectureNotes
Workflow
Process Workflow Implementation =workflow
specification application
Executable
Business Process
Workflow model application code
Modelling/
& specification Enactment
Reengineering
language Service/ Run-
(BPM/R)
time Support
2
Workflows & Petri Nets (PNs)
WFMS give an explicit representation of the BP
logic thus allowing for computerized support
PNs are an established tool for modelling &
analyzing business processes:
Can be used as a design language for the specification of
complex WFs
PN theory provides for powerful analysis techniques for
verifying the correctness of WF procedures.
PN primarily used to study dynamic concurrent
behaviour of n/w-based systems with a discrete
flow.
CA4 BPM PetriNets 3
Workflows & Petri Nets (cont'd)
5
(W.M.P. van der Aalst)
Basics of Petri Nets
●
Petri nets comprise two types of nodes: places and
transitions. An arc exists only from a place to a
transition or from a transition to a place.
●
A place may have zero or more tokens.
●
Graphically, places, transitions, arcs, and tokens are
represented respectively by: circles, bars, arrows,
and dots.
p1 t1 p2
P1
Place T1
P2
or Transition T2
Arc P3 P4
Token T3
P5
9
Example – claims process
transition place
token
Pay
Claim Ready
Record
Under
consideration
Send letter
State:
(3,0,0)
(2,1,0)
(2,0,1)
(1,1,1)
(1,0,2)
10
Basics of Petri Nets (cont'd)
●
Below is an example Petri net with two places and
one transaction.
●
Transition node is ready to fire if & only if there
is at least one token at each of its input places
t1 p1 p2
state transition of form (1, 0) -> (0, 1)
p1 : input place p2: output place
13
Properties of Petri Nets
●
Sequential Execution
Transition t2 can fire only after
the firing of t1. This impose the
precedence of constraints "t2 p1 t1 p2 t2 p3
after t1."
●
Synchronization
Transition t1 will be enabled
only when a token there are at
least one token at each of its
input places.
t1
●
Merging
Happens when tokens from
several places arrive for
service at the same transition.
CA4 BPM PetriNets 14
Properties of Petri Nets
(contd)
●
Concurrency
t1 and t2 are concurrent.
With this property, Petri nets t1
can model systems of
t2
distributed control with
multiple processes executing
concurrently in time.
t1
t2
●
Conflict - (contd)
●
the resulting conflict may be resolved in a
purely non-deterministic way or in a
probabilistic way, by assigning appropriate
probabilities to the conflicting transitions. e.g:
t1 t2
free wait
end
busy documenting
free
wait
start inside chang treated
e
If a specialist always treats two patients at the same time ?
19
Example: Patients & a Specialist
(cont'd)
end
busy documenting
free
2 2 2 2
wait
start inside change treated
20
Example: In a Restaurant
Waiter
Customer 1 free Customer 2
Take Take
order order
eating eating
Tell
kitchen Serve food
Serve food
Scenario 1:
Waiter takes order from customer 1; serves customer 1;
takes order from customer 2; serves customer 2.
Scenario 2:
Waiter takes order from customer 1; takes order from
customer 2; serves customer 2; serves customer 1.
Take Take
order order
eating eating
Tell
kitchen Serve food
Serve food
Take Take
order order
eating eating
Tell
kitchen Serve food
Serve food
Deposit
0c 5c Deposit
5c Deposit
5c
Deposit 10c
10c 20c
Deposit 10c
Take 20c bar
Scenario 1:
Deposit 5c, deposit 5c, deposit 5c, deposit 5c, take
20c snack bar.
Scenario 2:
Deposit 10c, deposit 5c, take 15c snack bar.
Scenario 3:
Deposit 5c, deposit 10c, deposit 5c, take 20c snack
bar.
Deposit Deposit
0c 5c Deposit 5c
5c
Deposit 10c
10c 20c
Deposit 10c
Take 20c bar
●
1962 - Carl Petri originally proposed Petri Nets
without any notion of time. Concept of time was
intentionally avoided because addition of time
restricts the behavior of the net.
●
1970s ~ - Addition of time has been discussed in
order to analyze the performance of modelled
system.
●
Many properties are still undecided for Petri nets
extended with data and time.