Workflow Management Systems: Functions, architecture, and products'

1 / 87
About This Presentation
Title:

Workflow Management Systems: Functions, architecture, and products'

Description:

Information systems with hard-coded workflows (process& organization specific) ... Staffware PLC is headquartered in Maidenhead UK and has offices in 19 countries. ... –

Number of Views:57
Avg rating:3.0/5.0
Slides: 88
Provided by: wilvand
Category:

less

Transcript and Presenter's Notes

Title: Workflow Management Systems: Functions, architecture, and products'


1
Workflow Management Systems Functions,
architecture, and products.
Wil van der Aalst
  • Eindhoven University of Technology
  • Faculty of Technology Management
  • Department of Information and Technology
  • P.O. Box 513
  • 5600 MB Eindhoven
  • The Netherlands
  • w.m.p.v.d.aalst_at_tm.tue.nl

2
Focus on "classical" workflow management systems,
but ...
  • Four types of "workflow-like" systems
  • Information systems with hard-coded workflows
    (process organization specific).
  • Custom-made information systems with generic
    workflow support (organization specific).
  • Generic software with embedded workflow
    functionality (e.g., the workflow components of
    ERP, CRM, PDM, etc. systems).
  • Generic software focusing on workflow
    functionality (e.g., Staffware, MQSeries
    Workflow, FLOWer, COSA, Oracle BPEL, Filenet,
    etc.).

3
Basic idea
workflow management system
control (process logistics)
execution (task oriented)
application
  • Separation of control and execution.

4
WfMC Reference model
5
Data inside a WFS
6
Interfaces
Weak!
Demos
Published in Handbook
7
Potential problem
8
  • The ACID-properties, known from transaction
    processing, should hold.
  • Atomicity(atomic, "everything or nothing",
    rollback if necessary)
  • Consistency(a completed task results in a proper
    state of the system)
  • Isolation(tasks do not affected each other, even
    if they are executed in parallel)
  • Durability(the result of a completed task may
    not get lost commit tasks)

9
Users of a WFS
10
Examples of systems
  • COSA (demo)
  • Staffware
  • FLOWer

11
Staffware
  • Leading workflow management system (typically 25
    percent of the global pure workflow market).
  • Staffware PLC is headquartered in Maidenhead UK
    and has offices in 19 countries.
  • Focus on performance and reliability rather than
    functionality (e.g., infinite scalability, fault
    tolerance, etc.)
  • In the remainder, we present a small case study
    that is used to
  • introduce the design tool and modeling language
    of Staffware,
  • show the management/administrator tools of
    Staffware,
  • demonstrate the end-users view of Staffware, and
  • show the need for analysis.

12
WfMC reference model
(1)
(2)
(3)
13
A small case study Double Check (DC)
  • Processing of insurance claims involving
    registration, two checks, and a payment of
    rejection
  • Five tasks
  • register (register insurance claim)
  • checkA (check insurance policy)
  • checkB (check damage reported)
  • pay (pay for the damage)
  • reject (inform customer about rejection)
  • Registration is followed by two checks which can
    be handled in parallel.
  • Each of the checks results in OK or not OK.
  • If both are OK, pay otherwise reject.
  • Three roles register (for task register), checks
    (for both checks), and pay/reject (for final
    tasks).

14
Staffware The designers view
15
Building blocks
start
stop
step (i.e., task)
wait (i.e., AND-join)
event step
condition (i.e., XOR-split)
complex router (OR-join/AND-split)
automatic step
16
(No Transcript)
17
Basic semantics of a step
AND-split
OR-join
Same for complex routers, conditions (input OR,
output each branch is AND), other types of
steps, etc.
18
Advanced semantics
withdraw construct
time-out construct
19
Defining the process Double Check (DC)
20
Adding a step
21
Defining a step
22
Defining a step (2)
23
Defining forms and case variables
24
Building a sequence
25
Another step definition
26
Another form definition
27
Adding a set in parallel
28
Another step definition
29
Synchronizing two flows
30
Another step definition
31
Defining conditions
32
The alternative route
33
Another step definition
34
Staffware The manager/administrators view
Monitoring and managing processes and cases
Managing users/groups
35
Managing users
36
Managing groups
37
Making backups
38
Managing Staffware tables
39
Managing processes and cases
40
Monitoring individual cases
41
Managing Staffware lists
42
Managing nodes
43
Releasing changes
44
The end-users view
45
Selecting and executing the first step
46
Executing one of the two parallel steps
47
Executing the other one
48
Executing the final step
49
Audit trail
50
Analysis of Staffware processes
6 runs (8 sequences) are possible!
51
Example audit trails
One not OK
Both OK
52
Example audit trails (2)
Both not OK (seq)
Both not OK (par)
53
Analysis using Woflan
54
Improved process
55
Possible scenarios
56
Analysis using Woflan
57
Exercises Staffware
58
Translate to notation of book/course
59
Translate to notation of book/course
60
Model in Staffware
61
Model in Staffware
62
Model in Staffware
63
Some more examples ...
64
  • Four types of "workflow-like" systems
  • Information systems with hard-coded workflows
    (process organization specific).
  • Custom-made information systems with generic
    workflow support (organization specific).
  • Generic software with embedded workflow
    functionality (e.g., the workflow components of
    ERP, CRM, PDM, etc. systems).
  • Generic software focusing on workflow
    functionality

SAP Business Workflow/Webflow (SAP AG)
FLOWer (Pallas Athena)
Oracle BPEL (Oracle)
Staffware (TIBCO)
COSA (COSA GmbH)
65
SAP Business Workflow/Webflow (SAP AG)
Staffware (TIBCO)
Oracle BPEL (Oracle)
COSA (COSA GmbH)
FLOWer (Pallas Athena)
66
COSA (COSA GmbH)
67
COSA Control flow perspective
  • Based on Petri nets
  • Lots of functionality

68
COSA Resource perspective
  • One of the most powerful tools on the market.
  • Multiple dimensions and rules.

69
(No Transcript)
70
Oracle BPEL (Oracle)
71
Oracle Control flow perspective
  • Based on BPEL

72
BPEL(4WS) Business Process Execution Language
for Web Services
  • Compromise between IBM and Microsoft.
  • Merges WSFL and XLANG.
  • Two styles of working graph based and
    structured.
  • Expressive but complex language.
  • Support by many vendors IBM Websphere, Oracle
    BPEL, and at least 16 more products.
  • In April 2003, BEA Systems, IBM, Microsoft, SAP
    AG and Siebel Systems submitted BPEL4WS 1.1 to
    OASIS.
  • Version 2.0 will have subtle but significant
    differences.
  • Two flavors executable and abstract
    (non-executable)

73
Constructs
  • Primitive activities
  • invoke, invoking an operation on some web
    service
  • receive, waiting for a message from an external
    source
  • reply, replying to an external source
  • wait, waiting for some time
  • assign, copying data from one place to another
  • throw, indicating errors in the execution
  • terminate, terminating the entire service
    instance and
  • empty, doing nothing.
  • Structured activities
  • sequence, for defining an execution order
  • switch, for conditional routing
  • while, for looping
  • pick, for race conditions based on timing or
    external triggers
  • flow, for parallel routing and
  • scope, for grouping activities to be treated by
    the same fault-handler.
  • Activities can be nested.
  • Can be connect though links.

74
Oracle Resource perspective
  • Not part of BPEL (cf. BPEL4people).
  • Oracle specific task implementations.
  • Close to programming.

See Pattern-based Evaluation of Oracle-BPEL
(v.10.1.2), N.A. Mulyar, 2005.
75
SAP Business Workflow/Webflow (SAP AG)
76
SAP Control flow perspective
  • Two views native view and EPC view.
  • Block structured.
  • e.g. sequence

77
Routing elements
78
parallel routing
three types of choices
79
join can hove a condition and/or lower bound
two types of loops
80
SAP Resource perspective
  • Organizational units have positions that may or
    may not be occupied.
  • Positions may be associated to multiple jobs
    (kind of role).
  • You can assign a task to
  • an organizational unit, if it is to apply to all
    subordinate positions
  • a job, if it is to apply to all positions
    described by the job
  • a position, if it is to apply to those persons
    (employees) or users who hold the position
  • a person (employee), if it is to apply to this
    person

81
Logging in SAP Workflow
82
FLOWer (Pallas Athena)
83
FLOWer Control flow perspective
  • Block structured (similar to BPEL) but with
    excellent support for multiple instances.
  • Can be generated from Protos.
  • Case handling principle.

84
Partly block structured choices, loops, etc.
require an additional level
85
FLOWer Resource perspective
  • Three roles for step in the process (execute,
    redo, skip).
  • Hierarchies can be defined independent of
    process.
  • Various was to view/distribute work.

86
Forms
87
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com