Process Variability through Automated Late Selection of · PDF file ·...
Transcript of Process Variability through Automated Late Selection of · PDF file ·...
Aitor [email protected]
IK4-Ikerlan, Research Centerhttp://www.ikerlan.es
Information Technologies Area
Process Variability through Automated Late Selection of Fragments
VALENCIA 06.17.2013
CAiSE’13
Private not-for-profit institution
Created in 1964, Mondragon CoorporationTransfer and dissemination to enterprises6 research lines
Members of Innobasque
Members of IK4 alliance
WE ARE IK4-IKERLAN
1 INTR
2 VARI
3 LATV
4 CONC
MOTIVATING EXAMPLEDYNAMIC ENVIRONMENTS
PROCESS FLEXIBILITYPROCESS (RUNTIME) VARIABILITY
CONCLUSIONSFUTURE WORK
| OPERATION CONTRACTS
Elevators remote predictive maintenance and monitoring process
INTR - MOTIVATION #5
«VarPoint»Door
Save data «VarPoint»Pulley
Verify elevator status
Schedule maintenance
date
Check appoitment
maintenance not included
no errors
MOTIVATING EXAMPLE
EQUITMENT | STAKEHOLDERS|ELEVATORS TYPE
...VARIABILITY
INTR - MOTIVATION #2
DYNAMIC ENVIRONMENTSRuntime variability is required
WHEN:ComplexityLarge number of process instances are requiredDynamic data Fragment selection depends on context data only available at runtimeAvailabilityProcess execution may not be interrupted (24x7 is required)ExperienceEnactment and historical data become crucial for variant configuration
INTR - DYNAMIC ENVIRONMENTS #3
1 INTR
2 VARI
3 LATV
4 CONC
MOTIVATING EXAMPLEDYNAMIC ENVIRONMENTS
PROCESS FLEXIBILITYPROCESS (RUNTIME) VARIABILITY
CONCLUSIONSFUTURE WORK
Which are such process flexibility and variability techniques?
Murguzur, A., Makhani, R., Tao, B., Zambon, D.: Flexible Processes and Process Mining: A Brief Survey. IBM Report (2013)
Murguzur, A., Intxausti, K., Urbieta, A., Sagardui, G.: Business Process Flexibility In Service Orchestration: A Systematic Literature Survey For Dynamic Business Environments. IJCIS (2013)
(on submission)
HEINL ET AL.1999
SCHONENBERG ET AL.2008
REICHERT AND WEBER2012
Flexibility by Selection Flexibility by Design Variability
-- Flexibility by Deviation Planned Adaptation
Instance adaptation Flexibility by Change Unplanned Adaptation
Type adaptation Flexibility by Change Evolution
Late ModellingFlexibility by
UnderspecificationLooseness
Classification
PROCESS FLEXIBILITY
Main proposals:
Others:- REGEV ET AL. 2006 | Regev, G., Soffer, P., Schmidt, R.: Taxonomy of flexibility in business processes. In: BPMDS. (2006) - BALKO ET AL. 2010 | Balko, S., ter Hofstede, A., Barros, A., La Rosa, M., Adams, M.: Business process extensibility. Enterprise Modelling and Information Systems Architectures (2010)
Main Proposals:- Heinl, P., Horn, S., Jablonski, S., Neeb, J., Stein, K., Teschke, M.: A comprehensive approach to flexibility in workflow management systems. ACM SIGSOFT Software Engineering Notes (1999) - Schonenberg, M.H., Mans, R., Russell, N., Mulyar, N., van der Aalst, W.M.P.: Process flexibility: a survey of contemporary approaches. In: CAiSE. (2008) - Reichert, M., Weber, B.: Enabling Flexibility in Process-Aware Information Sys- tems: Challenges, Methods, Technologies. Springer (2012)
VARI - PROCESS FLEXIBILITY #7
PROCESS VARIABILITYProcess flexibility: a taxonomy
BP variability handles different process variants (share a common part of core process whereas, concrete parts fluctuate from variant to variant ) depending on the particular context.
Drivers: product and service variability, difference in regulations, different customer groups,...
A
B
C
D
E
Process Variant PV1
A
E
C
D
H
Process Variant PV2
A
D
C
D
Y
Process Variant PV3
A
H
C
D
Z
Process Variant PV4
B E D H
A
...
A configurable process model
VARI - PROCESS FLEXIBILITY #9
PROCESS ADAPTATIONProcess flexibility: a taxonomy
BP adaptation represents the ability to deal with changes and consequently adapt process behavior and its structure.
Drivers: Exceptions (planned) | Special situations (unplanned)
A
B
C
D
E
Process Instance PI1
A
E
C
D
H
Process Instance PI2
Gskip
EXCEPTIONS (PLANNED CHANGES)
invoke new activiti
SPECIAL SITUATIONS (UNPLANNED CHANGES)
VARI - PROCESS FLEXIBILITY #10
PROCESS EVOLUTIONProcess flexibility: a taxonomy
BP evolution represent the ability of process instances to change when the corresponding process schema evolves.
Drivers: Internals (e.g., design errors) | Externals (e.g., change of tech context)
Figure from: Weber, B., Sadiq, S.,Reichert, M., : Beyond rigidity - dynamic process lifecycle support. CSRD (2012)
VARI - PROCESS FLEXIBILITY #11
RUNTIME VARIABILITY
PROCESS LOOSENESSProcess flexibility: a taxonomy
BP looseness represents the ability of a process to execute on the basis of a partially specified model, where the full specification of the model is made at runtime.
Drivers: Unpredictability, non-repeatability, and emergence
Late Binding or Selection:Defer the selection of a placeholder activity to runtime
Late Modeling:Defer the modeling of a placeholder activity to runtime
Late Composition:Defer the whole composition plan creation to runtime
DESIGN-TIME
RUNTIME
VARI - PROCESS FLEXIBILITY #12
Smart environments (e.g., SGBs, smart cities) in dynamic conditions
DYNAMIC ENVIRONMENTS
DYNAMIC
degr
ee o
f cha
nge
pred
icta
bilit
y
degree of change of the environment
DYNAMIC
DYNAMICSTATICDES
IGN
-TIM
ERU
NTI
ME
phase of decision making
RUNTIME VARIABILITY
DESIGN-TIME VARIABILITY
flexibility for loosely-specified processes
flexibility for pre-specified processes
LATE MODELING LATE COMPOSITION
ADAPTATION
EVOLUTION
VARI - PROCESS VARIABILITY #13
1 INTR
2 VARI
3 LATV
4 CONC
MOTIVATING EXAMPLEDYNAMIC ENVIRONMENTS
PROCESS FLEXIBILITYPROCESS (RUNTIME) VARIABILITY
CONCLUSIONSFUTURE WORK
A preliminary architecture
LateVa
LateVaMODELER
MODELSrepository
Hist. datarepository
LateVaEXPLORER
ProcessENGINE
FragmentSELECTOR
FragmentRECOMMENDER
LateVaRUNTIME ENGINE
BASE MODELFRAGMENTSVARIABILITY MODEL
Context-monitor
Murguzur, A., Sagardui, G., Intxausti, K., Trujillo, S.: Process Variability through Automated Late Selection of Fragments. In: VarIS workshop, collocated at CAiSE. (2013)
LATV #17
A variability model (VM)
LateVa: Modeler
Process individualities | Variability and constraint sub-models
- Variability modeling: feature models, decision trees, CVL, etc.- Process variability related to domain variability (context-aware variability)- VM translation into a CSP - CSP solvers: JaCoP, Choco, Copris, OscaR, etc.
LATV - MODELER #18
A base model (BM)+fragments
LateVa: Modeler
STATIC
PARTIAL
DYNAMIC
Process commonalities, fragments and variation points
Types of Variation Points
[Design-time resolution]
[Design-time/Runtime resolution]
[Runtime resolution]
- Business process modeling language: BPMN, BPEL, EPC, UML Activity diagrams, Petri Nets- Control-flow perspective- Fragments and base model complexity- Variation points related to a variability model
Base model
Fragments
LATV - MODELER #19
LateVa: Runtime EngineFragment selector
Context-monitor
Process.id = P01XZElevator.id = 000001Elevator.type = El4056Elevator.door.type = D01XCElevator.pulley.type = P02TR
ElA_Door ElA_Pulley
F1 ü û
F2 û ü
F3 ü û
F4 ü û
F5 û ü
first stage second stageElA_Door ElA_Pulley
ü û
û ü
û û
ü û
û ü
MODELSrepository
ProcessENGINE
deploy
save
FRAGMENT selector
resolvestart instance
resolve
get modelsupdate RM
MORE THAN ONE ALTERNATIVES...HOW TO SOLVE THAT?
LATV - RUNTIME ENGINE #20ST
ATIC
D
ATA
«VarPoint» Door = F1 + F3 + F4«VarPoint» Pulley = F2 + F5
DYN
AMIC
D
ATA
Elevator.door.paramA = 0.95089Elevator.door.paramB = 0.395889Elevator.pulley.paramX = 347Elevator.pulley.paramY = 0.21254«VarPoint» Door = F1 + F3 + F4«VarPoint» Pulley = F2 + F5
LateVa: Runtime EngineFragment recommender
Context-monitor
MODELSrepository
ProcessENGINE
saveresolve
start instanceresolve
get modelsupdate RM
FRAGMENTselector
Hist. datarepository
FRAGMENT recommender
second stage’’ElA_Door ElA_Pulley
ü û
û ü
û û
û û
û û
Properties:-source-status-dimension
resolve
-functional data-non-functional data
get data
solvedsolved
get fragments
WE GOT IT!
LATV - RUNTIME ENGINE #21
deploy
Process.id = P01XZElevator.id = 000001Elevator.type = El4056Elevator.door.type = D01XCElevator.pulley.type = P02TR
STAT
IC
DAT
A
«VarPoint» Door = F1 + F3 + F4«VarPoint» Pulley = F2 + F5
DYN
AMIC
D
ATA
Elevator.door.paramA = 0.95089Elevator.door.paramB = 0.395889Elevator.pulley.paramX = 347Elevator.pulley.paramY = 0.21254«VarPoint» Door = F1 + F3 + F4«VarPoint» Pulley = F2 + F5
Variability management
Variability monitoring
LateVa: Explorer
Instance inspection
Data monitoring and analysis
- Dynamic reconfiguration of variability model(s)- Fragments repository management
- Inspect and filter running process base model instances and fragment instances
- Analyze previous process executions- Customize recommender and fragment selector properties
LATV - EXPLORER #22
THE END IS NIGH...
1 INTR
2 VARI
3 LATV
4 CONC
MOTIVATING EXAMPLEDYNAMIC ENVIRONMENTS
PROCESS FLEXIBILITYPROCESS (RUNTIME) VARIABILITY
CONCLUSIONSFUTURE WORK
Some thoughts for discussion
CONCLUSIONS
Managing process (runtime) variability could bring benefit to both multiple stakeholders working in dynamic environments (e.g., smart cities, SGBs, smart healthcare, smart logistics) and process designers and administrators who are dealing with large collections of process variants
1Existing attempts do not well covered runtime process variability needs2We have introduced the foundations of the LateVa approach to provide an end-to-end solution for process runtime variability management by means of:
- Separation of concerns in process (multi-level) variability management- Automatically selecting process fragments using CSP and context data- Making decisions by relying on past experiences made in similar context
3
CONC #24
SMART ENVIRONMENTS
CONC #25
Murguzur, A., Truong, H-l, Dustdar, S.: Modeling Multi-level Process Variability in Smart Environments. In: CoopIS. (2013) (on submission)
VARIABILITY?
THANKS
Aitor [email protected]
IK4-Ikerlan, Research Centerhttp://www.ikerlan.es
Information Technologies Area
FOR YOUR ATTENTION!
http://aitormurguzur.com | @amurguzur