Download presentation
Presentation is loading. Please wait.
Published byGwenda Armstrong Modified over 9 years ago
1
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@tm.tue.nl
2
2 Focus on "classical" workflow management systems, but... Four types of "workflow-like" systems: 1.Information systems with hard-coded workflows (process& organization specific). 2.Custom-made information systems with generic workflow support (organization specific). 3.Generic software with embedded workflow functionality (e.g., the workflow components of ERP, CRM, PDM, etc. systems). 4.Generic software focusing on workflow functionality (e.g., Staffware, MQSeries Workflow, FLOWer, COSA, Oracle BPEL, Filenet, etc.).
3
3 Basic idea Separation of control and execution. workflow management system application control (process logistics) execution (task oriented)
4
4 WfMC Reference model
5
5 Data inside a WFS
6
6 Interfaces Published in Handbook Demo’s Weak!
7
7 Potential problem workflow engine DBMS in-basket (worklist) applications serverclient
8
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
9 Users of a WFS
10
10 Examples of systems COSA (demo) Staffware FLOWer …
11
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-user’s view of Staffware, and –show the need for analysis.
12
12 WfMC reference model
13
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). register checkA checkB pay reject
14
14 Staffware: The designer’s view
15
15 Building blocks startstop step (i.e., task) event step automatic step wait (i.e., AND-join) condition (i.e., XOR- split) complex router (OR-join/AND-split)
16
16
17
17 Basic semantics of a step OR-join AND-split Same for complex routers, conditions (input: OR, output: each branch is AND), other types of steps, etc.
18
18 Advanced semantics time-out construct withdraw construct
19
19 Defining the process Double Check (DC)
20
20 Adding a step
21
21 Defining a step
22
22 Defining a step (2)
23
23 Defining forms and case variables
24
24 Building a sequence
25
25 Another step definition
26
26 Another form definition
27
27 Adding a set in parallel
28
28 Another step definition
29
29 Synchronizing two flows
30
30 Another step definition
31
31 Defining conditions
32
32 The alternative route
33
33 Another step definition
34
34 Managing users/groups Monitoring and managing processes and cases Staffware: The manager/administrator’s view
35
35 Managing users
36
36 Managing groups
37
37 Making backups
38
38 Managing Staffware tables
39
39 Managing processes and cases
40
40 Monitoring individual cases
41
41 Managing Staffware lists
42
42 Managing nodes
43
43 Releasing changes
44
44 The end-user’s view
45
45 Selecting and executing the first step
46
46 Executing one of the two parallel steps
47
47 Executing the other one
48
48 Executing the final step
49
49 Audit trail
50
50 Analysis of Staffware processes 6 runs (8 sequences) are possible!
51
51 Example audit trails Both OK One not OK
52
52 Example audit trails (2) Both not OK (seq) Both not OK (par)
53
53 Analysis using Woflan
54
54 Improved process
55
55 Possible scenario’s
56
56 Analysis using Woflan
57
57 Exercises Staffware
58
58 Translate to notation of book/course
59
59 Translate to notation of book/course
60
60 Model in Staffware
61
61 Model in Staffware
62
62 Model in Staffware
63
63 Some more examples...
64
64 Four types of "workflow-like" systems: 1.Information systems with hard-coded workflows (process& organization specific). 2.Custom-made information systems with generic workflow support (organization specific). 3.Generic software with embedded workflow functionality (e.g., the workflow components of ERP, CRM, PDM, etc. systems). 4.Generic software focusing on workflow functionality Oracle BPEL (Oracle) Staffware (TIBCO) COSA (COSA GmbH) FLOWer (Pallas Athena) SAP Business Workflow/Webflow (SAP AG)
65
65 Oracle BPEL (Oracle) Staffware (TIBCO) COSA (COSA GmbH) FLOWer (Pallas Athena) SAP Business Workflow/Webflow (SAP AG)
66
66 COSA (COSA GmbH)
67
67 COSA: Control flow perspective Based on Petri nets Lots of functionality
68
68 COSA: Resource perspective One of the most powerful tools on the market. Multiple dimensions and rules.
69
69
70
70 Oracle BPEL (Oracle)
71
71 Oracle: Control flow perspective Based on BPEL
72
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
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
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
75 SAP Business Workflow/Webflow (SAP AG)
76
76 SAP: Control flow perspective Two views: native view and EPC view. Block structured. e.g. sequence:
77
77 Routing elements
78
78 parallel routing three types of choices
79
79 join can hove a condition and/or lower bound two types of loops
80
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
81 Logging in SAP Workflow
82
82 FLOWer (Pallas Athena)
83
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
84 Partly block structured: choices, loops, etc. require an additional level
85
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
86 Forms
87
87
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.