Modeling Workflows - PowerPoint PPT Presentation

1 / 52
About This Presentation
Title:

Modeling Workflows

Description:

Ex: a token represents a particular car ... A customer can take insurance for trip cancellation or/and for baggage loss. ... (3) Just baggage loss insurance. (4) ... – PowerPoint PPT presentation

Number of Views:31
Avg rating:3.0/5.0
Slides: 53
Provided by: misNc
Category:

less

Transcript and Presenter's Notes

Title: Modeling Workflows


1
Modeling Workflows
2
Outline
  • Workflow Concepts
  • Petri Nets
  • Mapping Workflow Concepts onto Petri Nets

3
Workflow Concepts
The case
  • The primary objective of a workflow system is to
    deal with cases.
  • Similar cases belong to the same case type.
  • Each case has a unique identity.
  • A case has a limited lifetime, between the
    appearance and disappearance of a case, it always
    has a particular state.
  • This state consists of three elements
    attributes, conditions, content.

4
Workflow Concepts The
case (cont.)
  • A range of variables can be associated with each
    case. These case attributes are used to manage
    it.
  • Conditions are used to determine which tasks have
    been carried out, and which still remain to be
    performed.

5
Workflow Concepts The
case (cont.)
  • We can regard a condition as a requirement that
    must be met before a particular task may be
    carried out.
  • The workflow system doesnt contain details about
    the content of the case, only those of its
    attributes and conditions.

6
Workflow Concepts
The task
  • A task is a logical unit of work. Its
    indivisible and thus is always carried out in
    full.
  • We can differentiate between manual, automatic
    and semi-automatic tasks.
  • A task refers to a piece of work, and not to the
    performance of an activity for one specific case.

7
Workflow Concepts The task
(cont.)
  • A work item is the combination of a case and a
    task which is just about to be carried out.
  • A activity refers to the actual performance of a
    work item. As soon as work begins upon the work
    item, it becomes an activity.

8
Workflow Concepts The
process
  • A process indicates which tasks need to be
    carried out and shows the order in which tasks
    should be done.
  • A process is constructed from tasks and
    conditions. In addition to these, a process may
    also consists of subprocesses.
  • Each process has a beginning and an end, which
    respectively mark the appearance and completion
    of case.

9
Workflow Concepts
Routing
  • Routing along particular branches determines
    which tasks need to be performed. Routing cases
    make use of four basic constructions.
  • Sequential
  • Parallel
  • Selective
  • iteration

10
Workflow Concepts
Enactment
  • A work item assignment can only be carried out by
    enactment.
  • Ex A work item is triggered by a employee.
  • Three types of triggers
  • Resource initiative (eg. Employee)
  • External event (eg. EDI message from supplier)
  • Time signal (eg. The generation of a list of
    orders at 6 oclock)

11
Petri Nets
  • Petri nets were devised in 1962 by Carl Adam
    Petri as a tool for modeling and analyzing
    processes.
  • Advantages
  • Graphically
  • Strong mathematical basis

12
Petri Nets Classical Petri nets
  • A Petri net consists of places and transitions.
    Place may contain tokens.

After pay fires
token
Pay fires
(3,0,0)
(2,1,0)
Record fires
After the transition record fires
A classic Petri net
13
Petri Nets Classical Petri nets (cont.)
  • Under consideration at the same time to a maximum
    of one.

free
ready
The modified Petri net
14
Petri Nets Classical Petri nets (cont.)
15
Petri Nets Classical Petri nets (cont.)
16
Petri Nets High-level Petri nets
  • Petri net becomes too large and inaccessible, or
    it isnt possible to model a particular activity
    in many practical situations.
  • High-level Petri nets have three most important
    extensions
  • Color extension
  • Time extension
  • Hierarchical extension

17
High-level Petri nets Color
extension
  • Color extension
  • Each token has a value.
  • By valuing tokens, they are given different
    colors.
  • We can distinguish different tokens form one
    another.
  • Ex a token represents a particular car
  • Notate a value for itbrand BMW
    registration J 144 NFX year 1995 color
    red owner Johnson
  • transitions precondition
  • logical requirement connected with the values of
    the token to be consumed.

18
High-level Petri nets Color
extension (cont.)
  • The number of tokens produced is determined by
    the values of those consumed.

19
?Classical Petri nets ??
free
ready
The modified Petri net
20
High-level Petri nets Color
extension (cont.)
  • synchronize (determined by precondition) a
    transition only fires if a particular combination
    of tokens can be consumed.

21
High-level Petri nets Color
extension (cont.)
  • For each color-extended transition, the following
    factors must be specified
  • Precondition must be defined precisely.
  • The number of tokens produced per output place
    depend on the values of the tokens consumed.
  • The values of the tokens produced may depend the
    values of the tokens consumed.

22
High-level Petri nets Time
extension
  • Petri net expected performance.
  • We also want to know the expected completion time
    and the capacity required.
  • Using this time extension, token receive a
    timestamp indicating the time from which the
    token is available.
  • The enabling time of a transition.
  • Tokens are consumed on a FIFO.
  • The token with the earliest timestamp ( The
    transition with the earliest enabling time )
    fires first .

23
High-level Petri nets Time
extension (cont.)
  • A transition fires and then produces tokens given
    a timestamp the time of firing delay.
  • delay is determined by the firing transition.
  • The length of the delay may depend upon the value
    of the tokens consumed.
  • Fixed value
  • At random
  • Firing itself is instantaneous and takes no time.

24
High-level Petri nets Time
extension (cont.)
60
30
The two sets of traffic lights with time
25
High-level Petri nets Hierarchical extension
  • The hierarchical extension ensures that it adds
    hierarchical structure of the process to the
    Petri net model.
  • A new building block a double-bordered square
    process.
  • It represents a subnetwork comprising places,
    transition, arcs, and subprocess.
  • top-down approach (repeat decomposition)
  • bottom-up approach (repeat composition)
  • divide-and-conquer strategy overcome the
    complexity
  • reuse previously defined processes

26
fault
The process solve fault contains one
subprocess repair
27
Mapping Workflow Concepts onto Petri Nets
The process
  • The process consist of tasks conditions.
  • conditions - places (passive components)
  • tasks transitions (active components)
  • Each process should fulfill two requirements
  • (1)It should at any time be possible to reach
  • (2)When there is a token in end, all the others
    should have disappeared.
  • These two requirements ensure that every case
    that begins at the place start will eventually be
    completed properly.

28
Mapping Workflow Concepts onto Petri Nets
The process (cont.)
assess
pay
contact_client
c6
c3
positive
c1
end
c5
file
start
record
c8
collect
c7
c2
negative
c4
send_letter
contact_department
The process handle complaint modeled as a
Petri net
29
Mapping Workflow Concepts onto Petri Nets
The process
  • The case may have one or more attribute.
  • The value of token contains information about the
    attributes of the case in question.
  • Tokens belonging to different cases cannot
    influence one another.
  • A separate copy of the Petri net for each case.
  • Provide each token with a value from which it is
    possible to identify the case. (???)

30
Mapping Workflow Concepts onto Petri Nets
The process (cont.)
case 5
case 4
case 3
case 2
case 1
assess
pay
contact_client
c6
c3
positive
c1
end
c5
file
record
c8
start
collect
c7
c2
negative
c4
send_letter
contact_department
Each case is illustrated using one or more tokens
31
A process may be constructed from subprocesses.
32
Mapping Workflow Concepts onto Petri Nets
Routing (a) Sequential routing
  • Sequential routing tasks have to be carried
    out one after another.

Sequential routing
33
Mapping Workflow Concepts onto Petri Nets
Routing (b) Parallel routing
  • If more than one task can be carried out at the
    same time or in any order, then we refer to
    parallel routing.
  • AND-split allow more than one task to be
    managed at the same time.
  • AND-join a task added to synchronize two or
    more parallel flows.

34
Mapping Workflow Concepts onto Petri Nets
Routing (b) Parallel routing (cont.)
AND-split
AND-join
Parallel routing
35
Mapping Workflow Concepts onto Petri Nets
Routing (c) Selective routing
OR-split
OR-join
36
Mapping Workflow Concepts onto Petri Nets
Routing (c) Selective routing (cont.)
37
Mapping Workflow Concepts onto Petri Nets
Routing (c) Selective routing (cont.)
OR-split
Decision rule
OR-join
c2
task1
c1
c6
c3
task 2
Figure 2.19 Selective routing (3)
38
Mapping Workflow Concepts onto Petri Nets
Routing (c) Selective routing (cont.)
39
Mapping Workflow Concepts onto Petri Nets
Routing (d) Iterative routing
40
Mapping Workflow Concepts onto Petri Nets
Routing (d) Iterative routing (cont.)
  • Repeatuntil

Figure 2.22 Iterative routing (1)
  • Whiledo

Figure 2.23 Iterative routing (2)
41
Mapping Workflow Concepts onto Petri Nets
Enactment (cont.)
  • Three types of triggers
  • (1) Resource initiative
  • (2) External event
  • (3) Time signal
  • The notion of triggering is of major importance.
  • It is not the workflow system that is in charge,
    but the environment.

?
?
42
Mapping Workflow Concepts onto Petri Nets
Enactment (cont.)
43
Mapping Workflow Concepts onto Petri Nets
Enactment (cont.)
44
Mapping Workflow Concepts onto Petri Nets
Example Travel agency
  • The customer is registered.
  • The customer will be contacted to find out
    whether she or he is still interested in the trip
    of this agency and whether more alternatives are
    desired.
  • (1) The customer is not interested at all.
  • (2) The customer would like to see more
    alternatives.
  • (3) The customer selects an opportunity.
  • If the customer selects a trip, the trip is
    booked.

45
Mapping Workflow Concepts onto Petri Nets
Example Travel agency (cont.)
  • A customer can take insurance for trip
    cancellation or/and for baggage loss.
  • (1) Not to take any insurance.
  • (2) Just trip cancellation insurance.
  • (3) Just baggage loss insurance.
  • (4) Both types of insurance.
  • Two weeks before the start data of the trip the
    documents are sent to the customer.
  • A trip can be cancelled at any time after
    completing the booking process and before the
    start data.

46
Mapping Workflow Concepts onto Petri Nets
Example Travel agency
47
Mapping Workflow Concepts onto Petri Nets
Enactment (cont.)
48
Mapping Workflow Concepts onto Petri Nets
OR-join tasks should be avoided as much as
possible.
49
Mapping Workflow Concepts onto Petri Nets
Task cancel is suitable to expressed as an
OR-joint task.
50
Mapping Workflow Concepts onto Petri Nets
  • The use of triggers for the first task in the
    process
  • Identify the start and the end places for a
    process.

51
Conclusion
  • Learn the concepts of workflow
  • Learn the components and types of Petri net
  • Use the Petri net to describe a process

52
Exercises
  • 2.2
  • 2.5
  • 2.7
  • 2.8
Write a Comment
User Comments (0)
About PowerShow.com