Chapter 18 Process Configuration

33
a university for the world real R W W L L L Y Y Y A A © 2009, www.yawlfoundation.org Y Y Chapter 18 Process Configuration Florian Gottschalk Marcello La Rosa

description

Chapter 18 Process Configuration. Florian Gottschalk Marcello La Rosa. Overview. Introduction to Configurable Process Models Process Configuration in YAWL Questionnaire-driven Approach for Process Configuration Tool Support Conclusions. What is a configurable process model?. - PowerPoint PPT Presentation

Transcript of Chapter 18 Process Configuration

Page 1: Chapter 18 Process Configuration

a university for the worldrealR

WW LLLYYY AA

© 2009, www.yawlfoundation.org YYY

Chapter 18Process Configuration

Florian Gottschalk

Marcello La Rosa

Page 2: Chapter 18 Process Configuration

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

Page 3: Chapter 18 Process Configuration

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

Page 4: Chapter 18 Process Configuration

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

Page 5: Chapter 18 Process Configuration

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

Page 6: Chapter 18 Process Configuration

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:

Page 7: Chapter 18 Process Configuration

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

Page 8: Chapter 18 Process Configuration

a university for the worldrealR

8WW LLLYYY AA

YYYYY

© 2009, www.yawlfoundation.org

Port Configuration

TaskPorts

enabled

blocked

hidden (skipped)

Page 9: Chapter 18 Process Configuration

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

Page 10: Chapter 18 Process 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

Page 11: Chapter 18 Process Configuration

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

Page 12: Chapter 18 Process Configuration

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)

Page 13: Chapter 18 Process Configuration

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

Page 14: Chapter 18 Process Configuration

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

Page 15: Chapter 18 Process Configuration

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

Page 16: Chapter 18 Process Configuration

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

Page 17: Chapter 18 Process 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

Page 18: Chapter 18 Process 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

Page 19: Chapter 18 Process Configuration

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

Page 20: Chapter 18 Process Configuration

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

Page 21: Chapter 18 Process Configuration

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

Page 22: Chapter 18 Process Configuration

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.

Page 23: Chapter 18 Process Configuration

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

Page 24: Chapter 18 Process Configuration

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

Page 25: Chapter 18 Process Configuration

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

Page 26: Chapter 18 Process Configuration

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

Page 27: Chapter 18 Process Configuration

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

Page 28: Chapter 18 Process Configuration

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

Page 29: Chapter 18 Process Configuration

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

Page 30: Chapter 18 Process Configuration

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

Page 31: Chapter 18 Process Configuration

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”?

Page 32: Chapter 18 Process Configuration

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

Page 33: Chapter 18 Process Configuration

a university for the worldrealR

34WW LLLYYY AA

YYYYY

© 2009, www.yawlfoundation.org

For more information…

…visit www.processconfiguration.com