chapter 18 process configuration
Post on 12-Jan-2016
32 Views
Preview:
DESCRIPTION
TRANSCRIPT
a university for the worldrealR
WW LLLYYY AA
© 2009, www.yawlfoundation.org YYY
Chapter 18Process Configuration
Florian Gottschalk
Marcello La Rosa
a university for the worldrealR
2WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
Overview
1. Introduction to Configurable Process Models
2. Process Configuration in YAWL
3. Questionnaire-driven Approach for Process Configuration
4. Tool Support
5. Conclusions
a university for the worldrealR
3WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
Tape variant Film variant
ConfigurableProcess Model
Prepare footage for edit
Offline edit
NegmatchingOnline edit
Tape Film
What is a configurable process model?
commonality
=variability
+variation point
common practice forTape shooting
Prepare footage for editing
Offlineediting
Onlineediting
Integrated representation of multiple variants of a same process in a given domain, which can be configured for a specific setting, leading to an indivi-dualized process model.
common practice forFilm Shooting
Prepare footage for editing
Offlineediting
Negmatching
a university for the worldrealR
4WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
Prepare footage for edit
Offline edit
NegmatchingOnline edit
Tape Film
Configurable Process Models in the Process Lifecycle
design configuration individualization implementation execution
Prepare footage for edit
Offline edit
Prepare footage for edit
Offline edit
Online edit
Prepare footage for edit3
Offline edit3
Online edit3
Prepare footage for edit2
Offline edit2
Online edit2
Prepare footage for edit1
Offline edit1
Online edit1
Configurableprocess model
Online edit
Tape
Negmatching
Film
Configured process model(Tape shooting)
Derived model(Tape shooting)
Derived instances(Tape shooting)
configurable model designdiagnosis
configuration and individualization
implementation
execution
design
implementationexecution
diagnosis
a university for the worldrealR
5WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
Features of a Configurable Process Model
• should guide the user to a model that fits his requirements
• must be able to generate all possible process variants
• must be a complete, integrated set of all possible process variants
• is the least common multiple of all process variations
a university for the worldrealR
6WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
Variant BSuperclassSuperclass Configurable ModelVariant A
a
c
d e
f g
h i
o
a b
c
e
g
i
j
k m
n
o p
l
a b
c
d e
f g
h i
j
k m
n
o p
l
a
c
d e
f g
h i
o
a b
c
d e
f g
h i
j
k m
n
o p
l
a b
c
e
g
i
j
k m
n
o p
l
a b
c
e
g
i
j
k m
n
o p
l
a
c
d e
f g
h i
o
Inheritance Inheritance
Subclass
Configuration Configuration
A Theoretical explanation
Inheritance of workflow behavior:
a university for the worldrealR
7WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
• Blocking
• Hiding– also called skipping
Configuration Techniques
a
c
e
i
g
i
b
p
d
f
h
l
m
n
j
k
l
blockblock
o
a b
c
d e
f g
h i
j
k m
n
o p
l
τ
ττhidehide
hide
a university for the worldrealR
8WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
Port Configuration
TaskPorts
enabled
blocked
hidden (skipped)
a university for the worldrealR
9WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
Port types in YAWL
Flow of tokens is determined by functions assigned to a YAWL task:•join input ports•split output ports•rem cancellation port•nofi multiple instance configuration
a university for the worldrealR
10WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
Input ports (inflow)
• XOR-join• Task is enabled if a token arrives from any arc
One input port for each incoming arc
• AND-join• Task is enabled if tokens are arriving from all arcs
One input port for the whole task
• OR-join• Task is enabled if tokens are arriving from all arcs from which
a token can potentially arrive
One input port for the whole task
a university for the worldrealR
11WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
Output ports (outflow)
• XOR-split• Task releases one token via one of the arcs
One output port for each outgoing arc
• AND-split• Task releases tokens via all arcs only
One output port for the whole task
• OR-split• Task can release tokens via any combination of outgoing arcs
One output port for every combination of outgoing arcs
a university for the worldrealR
12WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
Configuration Example
(A, B, C, E) or (A, B, D, E)(A, B, C, E)(B, C, E)
a university for the worldrealR
13WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
Cancellation ports (inflow)
• Cancellation also represents an inflow of tokens, but can also take 0 tokens
• Takes the maximum number of available tokens, similar to the OR-joinOne cancellation port for the whole task
• Hiding of Cancellation ports makes no senseNo skippable action between the activation of the cancellation
port and the outflow of tokens
a university for the worldrealR
14WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
Multiple Instance configuration
1. Increase of the minimal number of instances to be started
2. Decrease of the maximal number of instances to be started
3. Increase of the threshold value
4. Restrict dynamic creation of instances to static creation
a university for the worldrealR
15WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
[1 , 3 , inf, static]
Multiple Instance configuration
1. Increase of the minimal number of instances to be started
2. Decrease of the maximal number of instances to be started
create Instances
thresholdInstance
2
a1
a2
b1
b2
Instance 1
Instance 3
a3 b3
1 1
123
1,21,32,3
1,2,3
123
1,21,32,3
1,2,3
a university for the worldrealR
16WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
[3, 3, 2 , static]
3. Increase of the threshold value
create Instances
threshold 3
Instance 2
a1
a2
b1
b2
Instance 1
Instance 3
a3 b3
1,2,3
threshold 2
threshold 2
threshold 2
1
Multiple Instance configuration
a university for the worldrealR
17WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
[1 , 3 , inf, dyn]
4. Restrict from dynamic to static instance creation
create Instances
thresholdInstance
2
a1
a2
b1
b2
Instance 1
Instance 3
a3 b3
dyn
dyn
Multiple Instance configuration
a university for the worldrealR
18WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
Transforming a port configuration
c
d
Task A
ab
e
Task A
eτTask A
a
b
cd
c
d
a
bf
gefg
f
a university for the worldrealR
19WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
cTask B
bc
d
a
b
db,cb,dc,db,c,d
cTask B
d
a
b
Example 1
Transforming a port configuration: the OR-split
a university for the worldrealR
20WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
cTask C
bc
d
a
b
db,cb,dc,db,c,d
cTask C
d
a
b
Example 2
Transforming a port configuration: the OR-split
a university for the worldrealR
21WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
cTask D
bc
d
a
b
db,cb,dc,db,c,d
cTask D
d
a
b
Example 3
Transforming a port configuration: the OR-split
a university for the worldrealR
22WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
Questionnaire-driven configuration
• Configuring a process model can be difficult and time-consuming, due to:
– size of the variability space,– complexity of the domain.
• Domain experts usually have little or no knowledge about modeling notations (e.g. in the screen business).
• Need to facilitate the configuration of process models by domain experts, without requiring process modeling knowledge.
a university for the worldrealR
23WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
Questionnaire-based approach
• Configuration can be simplified if carried out by answering a set of questions no need to be aware of modeling notations.
• The basic concepts of the approach are questions and domain facts:– a question is composed of a set of domain facts;– a domain fact encodes a business choice and can be set to “true” or “false”.
• Variation points in the process model are mapped to boolean expressions over domain facts.
• Questions may affect one or multiple variation points:
Online cut Negmatching
c2
SEQa SEQbV
a2 b2
2 2
q1: What is the allocated budget for the project?
f1: Low
f2: Medium
f3: High
q4: How is the Picture Cut to be performed?
f12: Negmatching
f11: Online cut
a university for the worldrealR
24WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
Domain constraints
• The configuration space of the domain is restricted by a set of propositional logic domain constraints over the domain facts.
• By means of domain constraints, answers to questions may be determi- ned by previous answers.
q4: How is the Picture Cut to be performed?
f12: Negmatching
f11: Online cut
DC10: f11 f12
DC11: f10 ⇒ f12
q4: How is the Picture Cut to be performed?
f12: Negmatching
f11: Online cut
q3: Which shooting media have been used?
f10: Film shooting
f9: Tape shooting
DC10
DC11
a university for the worldrealR
25WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
q4: How is the Picture Cut to be performed?
f12: Negmatching
f11: Online
q5: Which are the expected deliverables?
f13: Tape finish
f14: Film finish
f15: New media finish
q1: What is the allocated budget for the project?
f1: Low
f2: Medium
f3: High
q2: What are the primary distribution channels?
f4: Cinema
f5: TV
f6: Home
f7: Mobile
f8: Internet
q3: Which shooting media have been used?
f10: Film shooting
f9: Tape shooting
mapping question-d. fact
domain fact
question
Questionnaire model
a university for the worldrealR
26WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
q4: How is the Picture Cut to be performed?
f12: Negmatching
f11: Online
q5: Which are the expected deliverables?
f13: Tape finish
f14: Film finish
f15: New media finish
q1: What is the allocated budget for the project?
f1: Low
f2: Medium
f3: High
q2: What are the primary distribution channels?
f4: Cinema
f5: TV
f6: Home
f7: Mobile
f8: Internet
q3: Which shooting media have been used?
f10: Film shooting
f9: Tape shooting
mapping question-d. fact
domain fact
question
Order dependencies
mapping question-d. fact
domain fact
question x y
x y
x partially depends on y
x fully depends on y
a university for the worldrealR
28WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
Process ModelQuestionnaire Model
Mapping
Mapping process models to questionnaire models
A mapping links process facts to domain facts:
The mapping ensures domain compliance and process model correctness.
C-EPC
C-YAWL
a university for the worldrealR
29WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
Post-production
finished
New mediafinish e
b4
V
Filmfinish
c4
a4
dTapefinish
Telecinetransfer
Record DFM
SEQa4V
SEQb4
Tape finish
Constraints in action
f6: Home
f4: Cinema
f5: TV
f7: Mobile
f8: Internet
q2:What are the primary distribution channels?
f15: New media finish
f13: Tape finish
f14: Film finishq5: Which are the expected
deliverables?
DC6 DC8
MC22
MC25
PC4
DC6: f5 ⇒ f13
DC8: f8 ⇒ f15
MC22: pON ⇔ f13d
MC25: pON ⇔ f15e
PC4: pON ⇒ pSEQd
c4
b4
Domain constraints Mapping Process constraints
New mediafinish
a university for the worldrealR
30WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
=
Application of the approach
Interactive Questionnaire Configurable Process Model
Individualized Model
answers
input to
Questionnaire model Mapping
+q7: What Film format has
been shot?
f19: 16mm film
f20: 35mm film
f21: 65mm film
q4: How is the Picture Cut to be performed?
f12:Negmatching
f11: Online cut
q5: Which are the expected deliverables?
f13: Tape finish
f14: Film finish
f15: New Media finish
q1: What is the allocated budget for the project?
f1: Low (≤ 250,000 US)
f2: Medium (> 250,000 US, ≤ 1.5mil US)
f3: High (> 1.5mil US)
q2: What are the primary distribution channels?
f4: Cinema
f5: TV
f6: Home
f7: Mobile
f8: Internet
q3: Which shooting media have been used?
f10: Film shooting
f9: Tape shooting
q6: What Tape formathas been shot?
f16: Analogue tape
f17: SD digital tape
f18: HD digital tape
T M
M
M
T
T
T
M
T M
T M
M
T M
T
Tape shoot finished
Film shoot finished
Prepare tape for edit
Prepare filmfor edit
Offline
Online suite cut
V
Film-based cut
V
Post-production
finished
Footage preparedfor edit
Edit finished
1
2
3
4
5
SEQ4a SEQ4b
SEQ2a SEQ2b
SEQ1a SEQ1b
Film finishTape finish
Telecine transfer
V
V
Record Digital Film Master
V
New media finish
2a 2b
1a 1b
4a 4b
Tape shoot finished
Prepare tape for edit
Offline edit
Online edit
Post-production
finished
Footage preparedfor edit
Edit finished
New media finish
2a
1a
a university for the worldrealR
31WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
Tool support: Synergia
• Open-source• Modular: 6 standalone applications,• Provides end-to-end support for process model configuration,• Independent of specific modeling notations,• Supports C-EPC and C-YAWL.
Mapping(.cmap)
C-EPC model(.epml)
ConfiguredC-EPC (.epml)
EPC(.epml)
Questionnaire Model (.qml)
ConfiguredC-YAWL (.yawl)
YAWL Engine spec. (.yawl)
C-YAWL model(.yawl)
Quaestio
Mapper ProcessConfigurator
ProcessIndividualizer
C-EPC Designer
Configurationmodel (.cml)
QuestionnaireDesigner
a university for the worldrealR
32WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
Discussion
• Is there a need for configurable models?– Do you have the same experience that highly-standardized
processes (such as the Order Fulfillment example) are still adapted to individual needs?
• Is it feasible to create configurable models?– What do you think about how we individualized the Order Fulfillment
model compared to the intended use of your software?
• Are configurable models useful?– Can you imagine that you provide similar models which can be
adapted “without drawing arcs and nodes”?
a university for the worldrealR
33WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
Conclusions
• Process Configuration is a viable mechanism to automate the derivation of customized models from a reference model in a specific domain
• Process Configuration in YAWL is grounded in the concept of Inheritance of Workflow Behavior and is achieved via 2 operators: hide, block
• The Questionnaire-based approach facilitates the configuration of (complex) process models such as the Order Fulfillment example by non-modeling experts
• Tool support is available with the Synergia toolset
a university for the worldrealR
34WW LLLYYY AA
YYYYY
© 2009, www.yawlfoundation.org
For more information…
…visit www.processconfiguration.com
top related