Advertisement

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

  • Niels Lohmann
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5240)

Abstract

Many work has been conducted to analyze service choreographies to assert manyfold correctness criteria. While errors can be detected automatically, the correction of defective services is usually done manually. This paper introduces a graph-based approach to calculate the minimal edit distance between a given defective service and synthesized correct services. This edit distance helps to automatically fix found errors while keeping the rest of the service untouched. A prototypic implementation shows that the approach is applicable to real-life services.

Keywords

Choreographies graph correction correction of services verification of services service automata operating guidelines BPEL 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Papazoglou, M.P.: Agent-oriented technology in support of e-business. Commun. ACM 44(4), 71–77 (2001)CrossRefGoogle Scholar
  2. 2.
    Dijkman, R., Dumas, M.: Service-oriented design: A multi-viewpoint approach. IJCIS 13(4), 337–368 (2004)Google Scholar
  3. 3.
    Decker, G., Kopp, O., Leymann, F., Weske, M.: BPEL4Chor: Extending BPEL for modeling choreographies. In: ICWS 2007, pp. 296–303. IEEE, Los Alamitos (2007)Google Scholar
  4. 4.
    Alves, A., et al.: Web Services Business Process Execution Language Version 2.0, April 11, 2007. OASIS Standard, OASIS (2007)Google Scholar
  5. 5.
    Lohmann, N., Kopp, O., Leymann, F., Reisig, W.: Analyzing BPEL4Chor: Verification and participant synthesis. In: WS-FM 2007. LNCS, vol. 4937, pp. 46–60. Springer, Heidelberg (2008)Google Scholar
  6. 6.
    Lohmann, N., Massuthe, P., Stahl, C., Weinberg, D.: Analyzing interacting BPEL processes. In: Dustdar, S., Fiadeiro, J.L., Sheth, A.P. (eds.) BPM 2006. LNCS, vol. 4102, pp. 17–32. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  7. 7.
    OMG: Business Process Modeling Notation (BPMN) Specification. Final Adopted Specification, Object Management Group (2006), http://www.bpmn.org
  8. 8.
    Groce, A., Chaki, S., Kroening, D., Strichman, O.: Error explanation with distance metrics. STTT 8(3), 229–247 (2006)CrossRefGoogle Scholar
  9. 9.
    van der Aalst, W.M.P.: The application of Petri nets to workflow management. Journal of Circuits, Systems and Computers 8(1), 21–66 (1998)CrossRefGoogle Scholar
  10. 10.
    Lohmann, N.: A feature-complete Petri net semantics for WS-BPEL 2.0. In: WS-FM 2007. LNCS, vol. 4937, pp. 77–91. Springer, Heidelberg (2008)Google Scholar
  11. 11.
    Lohmann, N., Massuthe, P., Wolf, K.: Operating guidelines for finite-state services. In: Kleijn, J., Yakovlev, A. (eds.) ICATPN 2007. LNCS, vol. 4546, pp. 321–341. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  12. 12.
    Badouel, E., Darondeau, P.: Theory of regions. In: Reisig, W., Rozenberg, G. (eds.) APN 1998. LNCS, vol. 1491, pp. 529–586. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  13. 13.
    Schmidt, K.: Controllability of open workflow nets. In: EMISA 2005. LNI, vol. P-75, pp. 236–249, GI (2005)Google Scholar
  14. 14.
    Sanfeliu, A., Fu, K.S.: A distance measure between attributed relational graphs for pattern recognition. IEEE Trans. on SMC 13(3), 353–362 (1983)zbMATHGoogle Scholar
  15. 15.
    Levenshtein, V.I.: Binary codes capable of correcting deletions, insertions, and reversals. Soviet Physics Dokl. 10(8), 707–710 (1966)MathSciNetzbMATHGoogle Scholar
  16. 16.
    Wagner, R.A., Fischer, M.J.: The string-to-string correction problem. J. ACM 21(1), 168–173 (1974)MathSciNetCrossRefzbMATHGoogle Scholar
  17. 17.
    Tsai, W., Fu, K.: Error-correcting isomorphisms of attributed relational graphs for pattern analysis. IEEE Trans. on SMC 9(12), 757–768 (1979)zbMATHGoogle Scholar
  18. 18.
    Sokolsky, O., Kannan, S., Lee, I.: Simulation-based graph similarity. In: Hermanns, H., Palsberg, J. (eds.) TACAS 2006. LNCS, vol. 3920, pp. 426–440. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  19. 19.
    Nejati, S., Sabetzadeh, M., Chechik, M., Easterbrook, S.M., Zave, P.: Matching and merging of statecharts specifications. In: ICSE, pp. 54–64. IEEE Computer Society, Los Alamitos (2007)Google Scholar
  20. 20.
    Namjoshi, K.S.: A simple characterization of stuttering bisimulation. In: Ramesh, S., Sivakumar, G. (eds.) FST TCS 1997. LNCS, vol. 1346, pp. 284–296. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  21. 21.
    Bellman, R.: Dynamic Programming. Princeton University Press, Princeton (1957)zbMATHGoogle Scholar
  22. 22.
    Corrales, J.C., Grigori, D., Bouzeghoub, M.: BPEL processes matchmaking for service discovery. In: Meersman, R., Tari, Z. (eds.) OTM 2006. LNCS, vol. 4275, pp. 237–254. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  23. 23.
    Wu, J., Wu, Z.: Similarity-based Web service matchmaking. In: IEEE SCC, pp. 287–294. IEEE Computer Society, Los Alamitos (2005)Google Scholar
  24. 24.
    Bianchini, D., Antonellis, V.D., Melchiori, M.: Evaluating similarity and difference in service matchmaking. In: EMOI-INTEROP. CEUR Workshop Proceedings, CEUR-WS.org, vol. 200 (2006)Google Scholar
  25. 25.
    Günay, A., Yolum, P.: Structural and semantic similarity metrics for Web service matchmaking. In: Psaila, G., Wagner, R. (eds.) EC-Web 2007. LNCS, vol. 4655, pp. 129–138. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  26. 26.
    Dijkman, R.M.: A classification of differences between similar BusinessProcesses. In: EDOC, pp. 37–50. IEEE Computer Society, Los Alamitos (2007)Google Scholar
  27. 27.
    Dijkman, R.: Diagnosing differences between business process models. In: Dumas, M., Reichert, M., Shan, M.-C. (eds.) BPM 2008. LNCS, pp. 132–147. Springer, Heidelberg (2008)Google Scholar
  28. 28.
    Weber, B., Rinderle, S., Reichert, M.: Change patterns and change support features in process-aware information systems. In: Krogstie, J., Opdahl, A., Sindre, G. (eds.) CAiSE 2007 and WES 2007. LNCS, vol. 4495, pp. 574–588. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  29. 29.
    Zhao, X., Liu, C.: Version management in the business process change context. In: Alonso, G., Dadam, P., Rosemann, M. (eds.) BPM 2007. LNCS, vol. 4714, pp. 198–213. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  30. 30.
    Küster, J.M., Gerth, C., Förster, A., Engels, G.: Detecting and resolving process model differences in the absence of a change log. In: Dumas, M., Reichert, M., Shan, M.-C. (eds.) BPM 2008. LNCS, vol. 5240, pp. 244–260. Springer, Heidelberg (2008)Google Scholar
  31. 31.
    Brogi, A., Popescu, R.: Automated generation of BPEL adapters. In: Dan, A., Lamersdorf, W. (eds.) ICSOC 2006. LNCS, vol. 4294, pp. 27–39. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  32. 32.
    Dumas, M., Spork, M., Wang, K.: Adapt or perish: Algebra and visual notation for service interface adaptation. In: Dustdar, S., Fiadeiro, J.L., Sheth, A.P. (eds.) BPM 2006. LNCS, vol. 4102, pp. 65–80. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  33. 33.
    Nezhad, H.R.M., Benatallah, B., Martens, A., Curbera, F., Casati, F.: Semi-automated adaptation of service interactions. In: WWW 2007, pp. 993–1002. ACM, New York (2007)Google Scholar
  34. 34.
    Lohmann, N., Kleine, J.: Fully-automatic translation of open workflow net models into simple abstract BPEL processes. In: Modellierung 2008. LNI, vol. P-127, pp. 57–72, GI (2008)Google Scholar
  35. 35.
    OMG: Unified Modeling Language (UML), Version 2.1.2. Technical report, Object Management Group (2007), http://www.uml.org
  36. 36.
    Hart, P.E., Nilsson, N.J., Raphael, B.: A formal basis for the heuristic determination of minimum cost paths in graphs. IEEE Trans.Syst. Sci. and Cybernetics SSC-4(2), 100–107 (1968)CrossRefGoogle Scholar
  37. 37.
    Schrijver, A.: Theory of Linear and Integer Programming. John Wiley & sons, Chichester (1998)zbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Niels Lohmann
    • 1
  1. 1.Institut für InformatikUniversität RostockRostockGermany

Personalised recommendations