SlideShare a Scribd company logo
Correcting Choreographiesusing Graph SimilaritiesNiels LohmannBPM 2008 ▪ Milan ▪ 2 September 2008http://service-technology.org/bpm2008UNIVERSITÄT ROSTOCK
2a deadlock in a choreographyHow can weavoid this?What wentwrong?Who is toblame?http://thisboyissmooth.wordpress.com/2008/02/12/sistemas-operativos-e-deadlocks/
State-of-the-art choreography analysis 3translate BPEL choreography into formal modelcheck for deadlocksif deadlock found:choose a "scapegoat" participantremove it from the choreographysynthesize a corrected version (if possible)retranslate synthesized participant back to BPELFull tool support available! [WS-FM2007]
Problem with that approach4the synthesized serviceis built independently from the scapegoatgives no information what was changedis correct, yet might not cover the original intention
Example choreography5✓
Example choreography6✗
Fix the customer service7✗scapegoat✓✓better choice
Setting8given:a service (the scapegoat)a set ofcandidatesfind:the candidate that is most similar to the scapegoat…without sequentially checking all candidates
Operating Guidelines in a Nutshell9automaton annotated with Boolean formulaecharacterizes all partners of a service [ATPN2007]partner iffsimulated by OG + fulfilling the annotations
OG characterizes all possible corrections10and 2001 additional candidates✓✗✓
Setting (refined)11given:a service automaton (the scapegoat)an operating guideline characterizing allcandidatesfind:the candidate that is most similar to the scapegoat…without sequentially checking all candidates
Graph edit distancea measure to compare graphs: edit distance= no. of needed actions to achieve graph isomorphismmaybe associated with a cost functionbamodify b to aad0,5adadd c branchecdcde0,7delete e branche0,312
Graph edit distance vs. behavior!a?b!c?b!alow edit distanceunsimilar behaviorhigh edit distanceequivalent behavior!c!a?b?b!ahigh edit distanceunsimilar behavior!c13
Simulation-based graph similarityIdea: find a similarity that respects simulationcompare two states and find best transitionsw.r.t. successor states  [TACAS2006]aabccbddd14
Simulation-based graph similarityMismatches are treated with stuttering stepspenalize stuttering by label similarity functionchoose best pairs by maximizing label similarityaabccbedεf15
Simulation-based edit distancelabel similarity function defines an edit distance(a,a)	➙keep a(e,d)	➙change e to d(ε,x)	➙insert x(f,ε)	➙delete fvalues can be derived from semantic Webinformation(!€,!$) or (?receipt,?confirmation) rather high(!login,?invoice) rather lowaabcbcedεf16
Simulation and OG matching17Simulation is only one part of the OG matchingnext step: make edit distance aware of formulas✗
Respect formulas18instead of comparison with the OG's structure…compare with satisfying assignments of the formulaworst-case complexity: O(|QSA|⋅|QOG|⋅2|I|⋅|I|!)assignmentsedge permutations
Experimental results19Simulation- and matching-based edit distance implemented in tool RAChELDynamic programming exploits structure of the problem Most results within few secondsExceptions have near-worst-case structure/formulasRepairing Automata forChoreographies by Editing Labels
20edit actions can be mapped back to original serviceresult can be influenced by adjusting label similarities Fixing the example with Rachel
21choreographies can be fixed using the edit distancecan help to only change little partsof the scapegoatprototype shows that fixing of real-life processesworks(tool + slides at http://service-technology.org/bpm2008)Open questions:Which service to fix?What about cyclic or nondeterministic services?How does the mapping backto BPEL really work?Can we support more elaborate edit actions?Can heuristics help to improve performance? Take home pointsThank you!Any questions?
22[TACAS2006] Oleg Sokolsky, SampathKannan, and Insup Lee. Simulation-based graph similarity. In TACAS 2006, volume 3920 of LNCS, pages 426–440. Springer, 2006.[WS-FM2007] Niels Lohmann, Oliver Kopp, Frank Leymann, and Wolfgang Reisig. Analyzing BPEL4Chor: Verification and participant synthesis. In WS-FM 2007, volume 4937 of LNCS, pages 46–60. Springer, 2008.[ATPN2007] Niels Lohmann, Peter Massuthe, and Karsten Wolf. Operating guidelines for finite-state services. In ICATPN 2007, volume 4546 of LNCS, pages 321-341. Springer, 2007.References

More Related Content

PPTX
License Plate Recognition System
PDF
Eat Drink London
PDF
Nl have you discovered its real beauty
PDF
Dossier avocado - Fermac Cargo España (EN)
DOCX
EVIDENCIA DE BASE DE DATOS
DOCX
Resume-Jaseela
PPTX
Mest 4 pitch
PPT
If you do only two things on linked in..
License Plate Recognition System
Eat Drink London
Nl have you discovered its real beauty
Dossier avocado - Fermac Cargo España (EN)
EVIDENCIA DE BASE DE DATOS
Resume-Jaseela
Mest 4 pitch
If you do only two things on linked in..

Viewers also liked (9)

PPTX
Matter1
PPTX
Assigning a static ip address
PPT
Set Algebra for Service Behavior
PPTX
Experiment conclusion
PDF
rockIT Fashion Visual Marketing Plan
PPTX
Skydiving Information
PPT
Age of Acquisition
PPT
Software Quality Assurance
PPTX
Software Quality Assurance
Matter1
Assigning a static ip address
Set Algebra for Service Behavior
Experiment conclusion
rockIT Fashion Visual Marketing Plan
Skydiving Information
Age of Acquisition
Software Quality Assurance
Software Quality Assurance
Ad

Similar to Correcting Deadlocking Service Choreographies Using a Simulation-Based Graph Edit Distance (20)

PPTX
Scalable Conformance Checking of Business Processes
PPTX
Trusted Automatic Programming - November 2024
PPTX
Repair dagstuhl jan2017
PPT
A Theory of Service Behavior
PDF
Flowchart Question and Answer (Algorithm MCQ)
DOCX
IEEE 2014 MATLAB IMAGE PROCESSING PROJECTS Compressed domain video retargeting
PDF
Dag amendment lowres
PPT
Patching the gap in collaborating on models
PDF
Crude-Oil Scheduling Technology: moving from simulation to optimization
PPTX
APSEC2020 Keynote
PPT
Boetticher Presentation Promise 2008v2
PDF
result analysis for deep leakage from gradients
PPTX
Incremental and Interactive Process Model Repair
PPTX
Do I need tests when I have the compiler - Andrzej Jóźwiak - TomTom Dev Day 2020
PDF
Generative AI for Reengineering Variants into Software Product Lines: An Expe...
PDF
Breathe Life Into Your IDE
PPTX
Fool me twice
PPT
Travelling Salesman Problem, Robotics & Inverse Kinematics
PPTX
16May_ICSE_MIP_APR_2023.pptx
PDF
SiriusCon 2015 - Breathe Life into Your Designer!
Scalable Conformance Checking of Business Processes
Trusted Automatic Programming - November 2024
Repair dagstuhl jan2017
A Theory of Service Behavior
Flowchart Question and Answer (Algorithm MCQ)
IEEE 2014 MATLAB IMAGE PROCESSING PROJECTS Compressed domain video retargeting
Dag amendment lowres
Patching the gap in collaborating on models
Crude-Oil Scheduling Technology: moving from simulation to optimization
APSEC2020 Keynote
Boetticher Presentation Promise 2008v2
result analysis for deep leakage from gradients
Incremental and Interactive Process Model Repair
Do I need tests when I have the compiler - Andrzej Jóźwiak - TomTom Dev Day 2020
Generative AI for Reengineering Variants into Software Product Lines: An Expe...
Breathe Life Into Your IDE
Fool me twice
Travelling Salesman Problem, Robotics & Inverse Kinematics
16May_ICSE_MIP_APR_2023.pptx
SiriusCon 2015 - Breathe Life into Your Designer!
Ad

More from Universität Rostock (20)

PDF
Pragmatic model checking: from theory to implementations
PDF
Where did I go wrong? Explaining errors in process models
PDF
Decidability Results for Choreography Realization
PDF
Artifact-centric modeling using BPMN
PDF
Compliance by Design for Artifact-Centric Business Processes
KEY
Verification with LoLA
KEY
Verification with LoLA: 7 Implementation
KEY
Verification with LoLA: 6 Integrating LoLA
KEY
Verification with LoLA: 5 Case Studies
KEY
Verification with LoLA: 4 Using LoLA
KEY
Verification with LoLA: 3 State Space Reduction
KEY
Verification with LoLA: 1 Basics
KEY
Verification with LoLA: 2 The LoLA Input Language
PDF
Saarbruecken
PDF
Ws4 dsec talk @ Kickoff RS3
PDF
Internal Behavior Reduction for Services
PDF
Karsten Wolf @ Carl Adam Petri Memorial Symposium
PDF
Implementation of an Interleaving Semantics for TLDA
PDF
Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...
PDF
Demonstration of BPEL2oWFN and Fiona
Pragmatic model checking: from theory to implementations
Where did I go wrong? Explaining errors in process models
Decidability Results for Choreography Realization
Artifact-centric modeling using BPMN
Compliance by Design for Artifact-Centric Business Processes
Verification with LoLA
Verification with LoLA: 7 Implementation
Verification with LoLA: 6 Integrating LoLA
Verification with LoLA: 5 Case Studies
Verification with LoLA: 4 Using LoLA
Verification with LoLA: 3 State Space Reduction
Verification with LoLA: 1 Basics
Verification with LoLA: 2 The LoLA Input Language
Saarbruecken
Ws4 dsec talk @ Kickoff RS3
Internal Behavior Reduction for Services
Karsten Wolf @ Carl Adam Petri Memorial Symposium
Implementation of an Interleaving Semantics for TLDA
Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...
Demonstration of BPEL2oWFN and Fiona

Recently uploaded (20)

PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
Unlocking AI with Model Context Protocol (MCP)
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Accuracy of neural networks in brain wave diagnosis of schizophrenia
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
cuic standard and advanced reporting.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Getting Started with Data Integration: FME Form 101
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Empathic Computing: Creating Shared Understanding
PDF
Electronic commerce courselecture one. Pdf
PPTX
A Presentation on Artificial Intelligence
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
Spectroscopy.pptx food analysis technology
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
Programs and apps: productivity, graphics, security and other tools
NewMind AI Weekly Chronicles - August'25-Week II
Unlocking AI with Model Context Protocol (MCP)
“AI and Expert System Decision Support & Business Intelligence Systems”
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Reach Out and Touch Someone: Haptics and Empathic Computing
Per capita expenditure prediction using model stacking based on satellite ima...
Accuracy of neural networks in brain wave diagnosis of schizophrenia
Mobile App Security Testing_ A Comprehensive Guide.pdf
cuic standard and advanced reporting.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
Getting Started with Data Integration: FME Form 101
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Empathic Computing: Creating Shared Understanding
Electronic commerce courselecture one. Pdf
A Presentation on Artificial Intelligence
Encapsulation_ Review paper, used for researhc scholars
Spectroscopy.pptx food analysis technology
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Building Integrated photovoltaic BIPV_UPV.pdf
Programs and apps: productivity, graphics, security and other tools

Correcting Deadlocking Service Choreographies Using a Simulation-Based Graph Edit Distance

  • 1. Correcting Choreographiesusing Graph SimilaritiesNiels LohmannBPM 2008 ▪ Milan ▪ 2 September 2008http://service-technology.org/bpm2008UNIVERSITÄT ROSTOCK
  • 2. 2a deadlock in a choreographyHow can weavoid this?What wentwrong?Who is toblame?http://thisboyissmooth.wordpress.com/2008/02/12/sistemas-operativos-e-deadlocks/
  • 3. State-of-the-art choreography analysis 3translate BPEL choreography into formal modelcheck for deadlocksif deadlock found:choose a "scapegoat" participantremove it from the choreographysynthesize a corrected version (if possible)retranslate synthesized participant back to BPELFull tool support available! [WS-FM2007]
  • 4. Problem with that approach4the synthesized serviceis built independently from the scapegoatgives no information what was changedis correct, yet might not cover the original intention
  • 7. Fix the customer service7✗scapegoat✓✓better choice
  • 8. Setting8given:a service (the scapegoat)a set ofcandidatesfind:the candidate that is most similar to the scapegoat…without sequentially checking all candidates
  • 9. Operating Guidelines in a Nutshell9automaton annotated with Boolean formulaecharacterizes all partners of a service [ATPN2007]partner iffsimulated by OG + fulfilling the annotations
  • 10. OG characterizes all possible corrections10and 2001 additional candidates✓✗✓
  • 11. Setting (refined)11given:a service automaton (the scapegoat)an operating guideline characterizing allcandidatesfind:the candidate that is most similar to the scapegoat…without sequentially checking all candidates
  • 12. Graph edit distancea measure to compare graphs: edit distance= no. of needed actions to achieve graph isomorphismmaybe associated with a cost functionbamodify b to aad0,5adadd c branchecdcde0,7delete e branche0,312
  • 13. Graph edit distance vs. behavior!a?b!c?b!alow edit distanceunsimilar behaviorhigh edit distanceequivalent behavior!c!a?b?b!ahigh edit distanceunsimilar behavior!c13
  • 14. Simulation-based graph similarityIdea: find a similarity that respects simulationcompare two states and find best transitionsw.r.t. successor states [TACAS2006]aabccbddd14
  • 15. Simulation-based graph similarityMismatches are treated with stuttering stepspenalize stuttering by label similarity functionchoose best pairs by maximizing label similarityaabccbedεf15
  • 16. Simulation-based edit distancelabel similarity function defines an edit distance(a,a) ➙keep a(e,d) ➙change e to d(ε,x) ➙insert x(f,ε) ➙delete fvalues can be derived from semantic Webinformation(!€,!$) or (?receipt,?confirmation) rather high(!login,?invoice) rather lowaabcbcedεf16
  • 17. Simulation and OG matching17Simulation is only one part of the OG matchingnext step: make edit distance aware of formulas✗
  • 18. Respect formulas18instead of comparison with the OG's structure…compare with satisfying assignments of the formulaworst-case complexity: O(|QSA|⋅|QOG|⋅2|I|⋅|I|!)assignmentsedge permutations
  • 19. Experimental results19Simulation- and matching-based edit distance implemented in tool RAChELDynamic programming exploits structure of the problem Most results within few secondsExceptions have near-worst-case structure/formulasRepairing Automata forChoreographies by Editing Labels
  • 20. 20edit actions can be mapped back to original serviceresult can be influenced by adjusting label similarities Fixing the example with Rachel
  • 21. 21choreographies can be fixed using the edit distancecan help to only change little partsof the scapegoatprototype shows that fixing of real-life processesworks(tool + slides at http://service-technology.org/bpm2008)Open questions:Which service to fix?What about cyclic or nondeterministic services?How does the mapping backto BPEL really work?Can we support more elaborate edit actions?Can heuristics help to improve performance? Take home pointsThank you!Any questions?
  • 22. 22[TACAS2006] Oleg Sokolsky, SampathKannan, and Insup Lee. Simulation-based graph similarity. In TACAS 2006, volume 3920 of LNCS, pages 426–440. Springer, 2006.[WS-FM2007] Niels Lohmann, Oliver Kopp, Frank Leymann, and Wolfgang Reisig. Analyzing BPEL4Chor: Verification and participant synthesis. In WS-FM 2007, volume 4937 of LNCS, pages 46–60. Springer, 2008.[ATPN2007] Niels Lohmann, Peter Massuthe, and Karsten Wolf. Operating guidelines for finite-state services. In ICATPN 2007, volume 4546 of LNCS, pages 321-341. Springer, 2007.References

Editor's Notes

  • #3: manyparticipantsno globalcontrol
  • #10: applications: e.g. testing (as you will see)
  • #20: Zahlen feiern! (für Kathrin)