Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
Dynamic Evolution by Constraint Orchestrationposition paper
Luuk Groenewegen
Leiden University
Formal Models and Notation for BPEx, SOC and CSCW
Copenhagen, October 20, 2007
joint work with Erik de Vink
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
Outline
Problem situation
Solution for Foreseen Coordination
Solution for Unforeseen Coordination
Outlook
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
Problem Situation
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
composite structure diagram
BA
C
pA
pC
pB1
pB2 pA
pC
pB1
pB2
A−B−C
in usual form as collaboration diagram
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
composite structure diagram
BA
C
A
B
C
pA
pC
pB1
pB2pA
pC
pB1
pB2
A−B−C
pApB1
pB2
pC
A−B−C
in combined form
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
dynamic consistency in stable situation
T1 T2 T3
dynamic
consistency
type−1
dynamic
consistency
type−2
dynamic
consistency
type−3
hidden
(in component)
role
(at port)2 roles
(at link)
protocol
(collaboration)
A B C DInAStable
Collaboration
DynamicTypes
three types of dynamic consistency problems
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
dynamic consistency and migration
During
Original
Situation
T2 T3T1
hidden
(in component)
role
(at port)2 roles
(at link)
protocol
(collaboration)
B C DA
? ? ? ?
more types of dynamic consistency problems
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
dynamic consistency and migration
During
Original
Situation
During
Migration
T2 T3T1
T2 T3T1
hidden
(in component)
role
(at port)2 roles
(at link)
protocol
(collaboration)
T5 T7T4 T6
A B C D
A B C D
four more dynamic consistency problem types
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
dynamic consistency and migration
During
Original
Situation
During
Situation
New
During
Migration
T2 T3T1
T2 T3T1
T2 T3T1
hidden
(in component)
role
(at port)2 roles
(at link)
protocol
(collaboration)
T5 T7T4 T6
T5 T7T4 T6
A B C D
A
A
B C D
DB C
seven dynamic consistency problem types
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
Solution for Foreseen Coordination
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
collaboration
Worker1 Worker2 Worker3
CSMcoll
CSM CSM CSM
CSMCoord
Scheduler
architectureand collaboration
critical section management
three workers and one scheduler
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
local processes
Asg3Chck3
Chck2
Asg1
Chck1continue
continue
continuedisallow
allow
disallow
allow
allowdisallowAsg2
SchedulerWorker1
Worker2
Worker3
PrePost
begin
occupy
finish
pickUplayDown
NCrFree
Crit
worker / scheduler STDsboth of type A dynamics
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
constraints and constraint composition
Free NCr
Post
Crit
Pre
done
OutCS OutBlck InCS
triv
notYetstarted
done
Free NCr
PrePosttriv
Free NCr
PrePost
notYet
started
OutBlckOutCS InCS
protocol role of worker: type B dynamicssubprocesses checked, enforcing traps
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
protocol as constraint orchestration
Asg2
Chck2
Worker2(CSM)Worker1(CSM) Worker3(CSM)
triv
started
OutCS
trivdone
Chck1
Chck3disallow
allow
continue
OutCS
OutCSOutCS InCS
OutCSOutCS
OutCS OutCS
?
SchedulerCSMCoord
OutBlck
OutBlcknotYet
OutBlck
traps checked, enforcing subprocessessynchronized roles: type D dynamics
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
consistency rules
Scheduler : Checkiallow→ Asgi ∗
Workeri(CSM) : OutBlockstarted→ InCS
Scheduler : Asgidisallow→ Checki+1 ∗
Workeri(CSM) : InCSdone→ OutCS,
Workeri+1(CSM) : OutCStriv→OutBlock
Scheduler : Checkicontinue→ Checki+1 ∗
Workeri(CSM) : OutBlocknotYet→ OutCS,
Workeri+1(CSM) : OutCStriv→OutBlock
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
Solution for Unforeseen Coordination
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
McPal, stand-by
Content StartMigr
JITting knowChange NewRuleSetObserving wantChange
giveOutphaseAuto
Content StartMigr
JITting knowChange NewRuleSetObserving wantChange
giveOutphaseAuto
during stable collaboration, when no migration occurs
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
McPal’s evolutionary constraints and protocol rolepartly unknown
Obs
Cntnt
JIT NRS
StMgready
Obs NRS
StMgCntnt
migrDone
ready
migrDone
StatPhase MigrPhase
StatPhase MigrPhase
alternating between foreseen and unforeseen phase
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
collaboration for evolution
McPal
EvolColl
Worker1
Worker2
Worker3
Scheduler
Evol
Evol
Evol
Evol
Evol
EvolCoord
McPal as manager of all components
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
consistency rules for McPal
McPal : ObservingwantChange→ JITting
McPal : JITtingknowChange→ NewRuleSet ∗
McPal [Crs : = Crs + Crsmigr + CrstoBe ]
McPal : NewRuleSetgiveOut→ StartMigr ∗
McPal(Evol) : StatPhaseready→ MigrPhase
McPal : ContentphaseOut→ Observing ∗
McPal(Evol) : MigrPhasemigrDone→ StatPhase,
McPal [ Crs : = CrstoBe ]
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
consistency rules for McPal
McPal : ObservingwantChange→ JITting
McPal : JITtingknowChange→ NewRuleSet ∗
McPal [Crs : = Crs + Crsmigr + CrstoBe ]
McPal : NewRuleSetgiveOut→ StartMigr ∗
McPal(Evol) : StatPhaseready→ MigrPhase
McPal : ContentphaseOut→ Observing ∗
McPal(Evol) : MigrPhasemigrDone→ StatPhase,
McPal [ Crs : = CrstoBe ]
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
migration coordination as constraint orchestration
Observing
Phase1Phase1Phase1Phase1 JITtingknowChange
NewRuleSetgiveOut
Phase1Phase1Phase1Phase1MigrPhase
StartMigr
?
Observing
W1−Phase2 W2−Phase2 W3−Phase2 Sch−Phase2
W1−Phase2 W2−Phase2 W3−Phase2 Sch−Phase2
wantChange
MigrPhase
McPal
McPal(Evol)Scheduler(Evol)Worker3(Evol)Worker1(Evol) Worker2(Evol)
StatPhase
Content
EvolCoord
ready
migrDone phaseAuto
StatPhase
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
Outlook
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
concluding remarks
Paradigm addresses coordination: T1 – T3
McPal addresses migration: T4 – T7
busines and software dynamics treated alike
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration
Problem SituationSolution for Foreseen Coordation
Solution for Unforeseen CoordinationOutlook
concluding remarks
process vs service oriented: collaborations forged
migration without quiescence: on-the-fly
migration is consistency-conserving: repeatable
emerging collaboration dynamics: deployable
future workaspect weaving, co-evolution, ArchiMate-UML,reorganization patterns, tool support
Luuk Groenewegen & Erik de Vink Dynamic Evolution by Constraint Orchestration