Note basate sul libro di testo (Wil van der Aalst and Kees van Hee. Workflow
Management: Models, Methods, and Systems. The MIT Press, paperback edition,
...
Workflow and Resource Management
Note basate sul libro di testo (Wil van der Aalst and Kees van Hee. Workflow Management: Models, Methods, and Systems. The MIT Press, paperback edition, 2004) 1
Lecture Objectives
In this class, you are going to learn: • Resource Classification • Applying Resource Classification to Workflow • Task Assignment Methods • Task Ordering Disciplines
2
Wil van der Aalst.
1
Workflow management concepts A workflow definition is composed out of three parts: • process definition: a description of the process itself • resource classification: a classification of the resources to be used • resource management rules: how to map work onto resources
3
Why? • Avoid hard coding of resources (otherwise the process needs to be changed in case of personnel changes). • Organizations have structure (c.f. organigram) • Work distribution needs to be described: Who is doing what? • Ordering of work items: In what order do we need to do things?
Wil
Pete
4
Wil van der Aalst.
2
Resource classes • Resource (participant, actor, user, agent) A resource can execute certain tasks for certain cases. Human and/or non-human (printer, modem) • Resource class A set of resources with similar characteristic(s) and specialties.
5
Resource classes A resource class is typically based on: • Role (skill, competence, qualification) classification on what a resource can do – functionally-based . • Group (department, team, office, organizational unit) Classification according to the resources’ places in the organization. – Hierarchical structure, arranged by organization chart 6
Wil van der Aalst.
3
Example: 4 roles
Kees
Pim
Koos
M ies
Truus
Sjaak
Jan
Anita
Ivone Ad
Kevin
Secretary
Manager
Frank
Sales_clerk
Office_worker
7
Example: 4 groups Central
Purchase
Kees
Pim
Hung Hom
Sales
Koos
M ies
Truus
Sjaak
Jan
Anita
Ivone Ad
Kevin
Frank
8
Wil van der Aalst.
4
Result: 8 resource classes Central
Purchase
Kees
Pim
Hung Hom
Sales
groups
Koos
M ies
Truus
Sjaak
Ivone Ad
Kevin
Secretary
Jan
Anita
Manager
Frank
Sales_clerk
Office_worker
roles 9
• Resource classification
Mapping resources onto resource classes. A resource may belong to multiple resource classes.
roles groups resources
10
Wil van der Aalst.
5
The organigram can be used for resource classification
resources distributed over roles and groups
11
Lecture Objectives
In this class, you are going to learn: • Resource Classification • Applying Resource Classification to Workflow • Task Assignment Methods • Task Ordering Disciplines
12
Wil van der Aalst.
6
Mapping work items (task+case) onto resources Constraints: • A task is labeled with an expression in terms of resource classes. • A resource is placed in a number of resource classes. • Additional constraints: separation issues, case management.
While satisfying these constraints the WFMS-engine has to decide: • Who is doing what? Push and pull control, load balancing, specialization, flexibility.
• In what order?
FIFO, LIFO, SPT, EDD, priority control.
13
Convention used in this course
R,G
• Each task executed by a resource (worker) is labelled with one role and one goup.
R G 14
Wil van der Aalst.
7
A Simple Example
15
Complaints handling
• Each year travel agency Y has to process a lot of complaints (about 10,000). There is a special department for the processing of complaints (department C). There is also an internal department called logistics (department L) which takes care of the registration of incoming complaints and the archiving of processed complaints. The following procedure is used to handle these complaints.
16
Wil van der Aalst.
8
Complaints handling
• An employee of department L first registers every incoming complaint. After registration a form is sent to the customer with questions about the nature of the complaint. This is done by an employee of department C. • There are two possibilities: the customer returns the form within two weeks or not. If the form is returned, it is processed automatically resulting in a report which can be used for the actual processing of the complaint. • If the form is not returned on time, a time-out occurs resulting in an empty report. Note that this does not necessarily mean that the complaint is discarded. 17
Complaints handling (2) • After registration, i.e., in parallel with the form handling, the preparation for the actual processing is started. • First, the complaint is evaluated by a complaint manager of department C. Evaluation shows that either further processing is needed or not. Note that this decision does not depend on the form handling. If no further processing is required and the form is handled, the complaint is archived. • If further processing is required, an employee of department C executes the task ‘process complaint’ (this is the actual processing where certain actions are proposed if needed). • For the actual processing of the complaint, the report resulting from the form handling is used. Note that the report can be empty. • The result of task ´process complaint´ is checked by a complaint manager of department C. If the result is not OK, task ´process complaint´ is executed again. This is repeated until the result is acceptable. • If the result is accepted, an employee of department C executes the proposed actions. • After this the processed complaint is archived by an employee of department L.
18
Wil van der Aalst.
9
Solution (only control flow)
19
Roles and groups The following roles are identified: • Employee (E) • Complaint manager (CM) The following groups are identified: • Department C (DC) • Logistics department (LD)
Sam Mary Leon
20
Wil van der Aalst.
10
Resulting model
S am
Mary
Leon
Leon Mary
Sam
21
Assumptions so far ... • Eventually every work item is executed by a single resource. • Every resource is working on one activity at the same time. Some observations: • There may be a need to further limit the set of resources i.e., we need to be able to specify further constraints. • There may be many resources that have the right role/group combination, i.e., work distribution is needed. • There may be many work items that can be executed by the same resource at a given point in time, i.e., work items need to be ordered. 22
Wil van der Aalst.
11
Further Allocation Constaints • Exclusion of class(es) – e.g., for task execute, choose a staff who belongs to (E, DC) but not CM • Separation of Function: one member of staff is not allowed to perform two successive tasks on the same case – For accountancy purpose • Case Management: successive tasks need to be carried out by a single employee (case manager) – Better service and more efficient • Case Attribute Value Dependent – Dynamic allocation
Sam Mary Leon
23
Example
= Wil van der Aalst.
if compensation > 10000 HKD then role := manager else role := employee
=
24
12
Allocation Principles Process definition
routing task
case
resource
trigger condition
Resource classification
allocation
role
group
25
Entity-Relationship (ER) diagram
26
Wil van der Aalst.
13
Lecture Objectives
In this class, you are going to learn: • Resource Classification • Applying Resource Classification to Workflow • Task Assignment Methods • Task Ordering Disciplines
27
Push versus pull
28
Wil van der Aalst.
14
Push control
workflow enactment service
push to a selected "victim"
29
Pull control workflow enactment service
pull selected work items 30
Wil van der Aalst.
15
pull control
31
Mosts WFM systems are hybrid, e.g., Staffware personal queue
group queue
32
Wil van der Aalst.
16
Who is doing what? • Pull control – Determined by people, i.e., a "race" among resources. – Select to start and/or select to allocate work item. • Push control – Round robin. – Weighted round robin. – Shortest queue. – Select the most specialized resource (i.e., do not allocate "generalists" unless needed).
33
Lecture Objectives
In this class, you are going to learn: • Resource Classification • Applying Resource Classification to Workflow • Task Assignment Methods • Task Ordering Disciplines
34
Wil van der Aalst.
17
In what order? • Pull control – Determined by people, i.e., a "race" for attention. – System may "suggest" urgent work items or offer multiple view on the work available. • Push control – System decides whether the worker can view and/or select multiple work items, i.e., order may be enforced or suggested. • In both cases possible queueing disciplines are: – FIFO (First In First Out) – LIFO (Last In First Out) – SPT (Shortest Processing Time) – EDD (Earliest Due Date) – PRIO (Prioritization based on case attributes) 35
Example
(taken from "Operations Management" by Roberta Russell & Bernard W. Taylor)
PROCESSING WorkItem TIME
A B C D E
5 10 2 8 6
DUE DATE
10 15 5 12 8
Note that unlike most scheduling problems work items emerge on the fly! 36
Wil van der Aalst.
18
FIFO (also known as FCFS)
FIFO START SEQUENCE TIME
A B C D E
0 5 15 17 25
PROCESSING COMPLETION DUE TIME TIME DATE
5 10 2 8 6
5 15 17 25 31
TARDINESS
10 15 5 12 8
0 0 12 13 23
37
EDD EDD START SEQUENCE TIME
C E A D B
0 2 8 13 21
PROCESSING COMPLETION DUE TIME TIME DATE
2 6 5 8 10
2 8 13 21 31
TARDINESS
5 8 10 12 15
PROCESSING WorkItem TIME
A B C D E
5 10 2 8 6
0 0 3 9 16 DUE DATE
10 15 5 12 8 38
Wil van der Aalst.
19
SPT SPT START SEQUENCE TIME
C A E D B
0 2 7 13 21
PROCESSING COMPLETION DUE TIME TIME DATE
2 5 6 8 10
2 7 13 21 31
TARDINESS
5 10 8 12 15
0 0 5 9 16
PROCESSING WorkItem TIME
A B C D E
DUE DATE
5 10 2 8 6
10 15 5 12 8 39
Comparison
RULE
FIFO EDD SPT
AVERAGE COMPLETION TIME
18.60 15.00 14.80
AVERAGE TARDINESS
9.6 5.6 6.0
NO. OF WI TARDY
3 3 3
MAXIMUM TARDINESS
23 16 16
We will return to the topic of workflow analysis and simulation... 40
Wil van der Aalst.
20
Designing a workflow begin
analyze
What? analyze
objectives text
How?
analyze
tasks and processes process definition
By whom? resources and scheduling
realization
resource classification allocation rules
41
Conclusions • • • • •
Important to allocate suitable resources to enact a process Resource classification based on roles and groups Task assignment discipline: push and pull Task ordering discipline: FIFO, LIFO, SPT, EDD, PRIO Next, we analyze correctness and performance of workflow
42
Wil van der Aalst.
21