Introduction to ArtificiaI Intelligence in Higher Education
Undoing Event-driven Adaptation of Business Processes
1. Undoing Event-driven Adaptation
of Business Processes
Sébastien Mosser, Gabriel Hermosillo, Anne-Françoise Le Meur,
Lionel Seinturier, Laurence Duchien
INRIA Lille-Nord Europe, University Lille 1, LIFL (UMR CNRS 8022)
8th International Conference on Services Computing
Washington DC, July 5th 2011
8. Question: How To Unadapt? (e.g., remove )
only if
depends on
depends on and
... Tn-1 Tn System
3
9. Towards Unadaptation: From «Do» to «Undo»
• Goal:
• Produce a system «as it would be if this adaptation had never
happened»
• Challenges:
• Identify the «undo» trigger event
• Identify correlated adaptations (to be removed too)
• Yield the expected system
4
10. Outline
• Context:
• Business Process Adaptation & Complex Event Processing
• Contribution: From Adaptation to Automated Unadaptation
(1) Identifying the trigger event
(2) Identify correlated adaptations
(3) Yield the system, «as it would be if this adaptation had never happened»
• Demonstration
• Conclusions & Perspectives
5
12. Business Process
Activity
Login
Causal
Request
Relationship
Search
Display
Logout
Used to express behavior in the
Service-oriented Architecture paradigm
Industrial standard: BPEL
7
16. Running Example
1. «Fail» event detected (search service encounters errors):
‣ The system uses now a backup server, off-site
2. «Slow» event detected (bandwidth drops)
‣ «Cache» event is identified («fail; slow»)
‣ A cache is introduced
3. «Perf» event detected (CPU overload)
‣ Monitoring is inserted in the system
4. Search service is now ok ... What should we do?
11
23. Contribution #2:
Identify Correlated Adaptations
depends on depends on
and
only if
24. Idea: «prune the adaptation sequence»
• Identify in the adaptation history, for a given event ε:
• The correlated events (now irrelevant after ε vanishment)
• The orthogonal events (still relevant, even after ε vanishment)
17
37. Re-«play» Implies to Re-«adapt»
S7 = φ ( φ ( φ ( S2 )))
S2 S7
May adapt elements
introduced by other
adaptations
Impossible to «simply» replay the preexisting sequence 24
43. Conclusions
• Fact: naive unadaptation may lead to corrupted processes !
• Proposal: Automated unadaptation
• Identify the triggering event
• Identify the correlated adaptations
• Yield the system, «as it would be if this adaptation had never happened»
• Generic mechanisms (platform-independent implementation)
30
44. Upcoming Perspectives
• From processes to running instances
• Long-living processes will require unadaptation at instance level
• Instances must be adapted with care (e.g., execution pointer)
• Software Engineering & Software Evolution
• From refactoring to un-refactoring
• From pattern introduction to pattern removal
31
45. Graphics: sxc.hu & C.line
Thank You for Your Attention !
Undoing Event-driven Adaptation
of Business Processes
Sébastien Mosser, Gabriel Hermosillo, Anne-Françoise Le Meur,
Lionel Seinturier, Laurence Duchien