Advanced Mechanisms for Service Combination and Transactions

  • Carla Ferreira
  • Ivan Lanese
  • Antonio Ravara
  • Hugo Torres Vieira
  • Gianluigi Zavattaro
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6582)


Languages and models for service-oriented applications usually include primitives and constructs for exception and compensation handling. Exception handling is used to react to unexpected events while compensation handling is used to undo previously completed activities. In this chapter we investigate the impact of exception and compensation handling in message-based process calculi and the related theories developed within Sensoria.


Expressive Power Error Recovery Compensation Model Primitive Action Service Invocation 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Amadio, R.M., Castellani, I., Sangiorgi, D.: On bisimulations for the asynchronous pi-calculus. Theoretical Computer Science 195(2), 291–324 (1998)CrossRefzbMATHGoogle Scholar
  2. 2.
    Bocchi, L., Laneve, C., Zavattaro, G.: A calculus for long-running transactions. In: Najm, E., Nestmann, U., Stevens, P. (eds.) FMOODS 2003. LNCS, vol. 2884, pp. 124–138. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  3. 3.
    Boreale, M., Bruni, R., De Nicola, R., Loreti, M.: Sessions and pipelines for structured service programming. In: Barthe, G., de Boer, F.S. (eds.) FMOODS 2008. LNCS, vol. 5051, pp. 19–38. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  4. 4.
    Boreale, M., et al.: SCC: a Service Centered Calculus. In: Bravetti, M., Núñez, M., Tennenholtz, M. (eds.) WS-FM 2006. LNCS, vol. 4184, pp. 38–57. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  5. 5.
    Bravetti, M., Zavattaro, G.: On the expressive power of process interruption and compensation. Mathematical Structures in Computer Science 19(3) (2009)Google Scholar
  6. 6.
    Bruni, R., Ferrari, G.L., Melgratti, H.C., Montanari, U., Strollo, D., Tuosto, E.: From theory to practice in transactional composition of web services. In: Bravetti, M., Kloul, L., Tennenholtz, M. (eds.) EPEW/WS-FM 2005. LNCS, vol. 3670, pp. 272–286. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  7. 7.
    Bruni, R., Melgratti, H., Montanari, U.: Nested commits for mobile calculi: Extending join. In: Proc. of IFIP TCS 2004, pp. 563–576. Kluwer, Dordrecht (2004)Google Scholar
  8. 8.
    Bruni, R., Melgratti, H., Montanari, U.: Theoretical foundations for compensations in flow composition languages. In: Proc. of POPL 2005, pp. 209–220. ACM Press, New York (2005)Google Scholar
  9. 9.
    Busi, N., Gabbrielli, M., Zavattaro, G.: Replication vs. recursive definitions in channel based calculi. In: Baeten, J.C.M., Lenstra, J.K., Parrow, J., Woeginger, G.J. (eds.) ICALP 2003. LNCS, vol. 2719, pp. 133–144. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  10. 10.
    Busi, N., Gorrieri, R., Guidi, C., Lucchi, R., Zavattaro, G.: SOCK: A calculus for service oriented computing. In: Dan, A., Lamersdorf, W. (eds.) ICSOC 2006. LNCS, vol. 4294, pp. 327–338. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  11. 11.
    Butler, M.J., Hoare, C.A.R., Ferreira, C.: A trace semantics for long-running transactions. In: Abdallah, A.E., Jones, C.B., Sanders, J.W. (eds.) Communicating Sequential Processes. The First 25 Years. LNCS, vol. 3525, pp. 133–150. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  12. 12.
    Caires, L., Ferreira, C., Vieira, H.T.: A process calculus analysis of compensations. In: Kaklamanis, C., Nielson, F. (eds.) TGC 2008. LNCS, vol. 5474, pp. 87–103. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  13. 13.
    Carbone, M., Honda, K., Yoshida, N.: Structured interactional exceptions for session types. In: van Breugel, F., Chechik, M. (eds.) CONCUR 2008. LNCS, vol. 5201, pp. 402–417. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  14. 14.
    Ferrari, G.L., Guanciale, R., Strollo, D.: JSCL: A middleware for service coordination. In: Najm, E., Pradat-Peyre, J.-F., Donzeau-Gouge, V.V. (eds.) FORTE 2006. LNCS, vol. 4229, pp. 46–60. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  15. 15.
    Fournet, C., Gonthier, G.: The join calculus: A language for distributed mobile programming. In: Barthe, G., Dybjer, P., Pinto, L., Saraiva, J. (eds.) APPSEM 2000. LNCS, vol. 2395, pp. 268–332. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  16. 16.
    Garcia-Molina, H., Gawlick, D., Klein, J., Kleissner, K., Salem, K.: Coordinating multi-transaction activities. Technical Report Report No. UMIACS-TR-90-24, Univ. of Maryland Institute for Advanced Computer Studies (1990)Google Scholar
  17. 17.
    Gorla, D.: Towards a unified approach to encodability and separation results for process calculi. In: van Breugel, F., Chechik, M. (eds.) CONCUR 2008. LNCS, vol. 5201, pp. 492–507. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  18. 18.
    Guidi, C., Lanese, I., Montesi, F., Zavattaro, G.: On the interplay between fault handling and request-response service invocations. In: Proc. of ACSD 2008, pp. 190–199. IEEE Computer Society Press, Los Alamitos (2008)Google Scholar
  19. 19.
    Guidi, C., Lanese, I., Montesi, F., Zavattaro, G.: Dynamic error handling in service oriented applications. Fundamenta Informaticae 95(1), 73–102 (2009)zbMATHGoogle Scholar
  20. 20.
    Hoare, C.A.R.: Communicating Sequential Processes. Prentice-Hall, Englewood Cliffs (1985)zbMATHGoogle Scholar
  21. 21.
  22. 22.
    Lanese, I., Vaz, C., Ferreira, C.: On the expressive power of primitives for compensation handling. In: Gordon, A.D. (ed.) ESOP 2010. LNCS, vol. 6012, pp. 366–386. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  23. 23.
    Lanese, I., Zavattaro, G.: Programming sagas in SOCK. In: Proc. of SEFM 2009, pp. 189–198. IEEE Computer Society Press, Los Alamitos (2009)Google Scholar
  24. 24.
    Laneve, C., Zavattaro, G.: Foundations of web transactions. In: Sassone, V. (ed.) FOSSACS 2005. LNCS, vol. 3441, pp. 282–298. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  25. 25.
    Lapadula, A.: A Formal Account of Web Services Orchestration. PhD thesis, Dipartimento di Sistemi e Informatica, Università degli Studi di Firenze (2008),
  26. 26.
    Lapadula, A., Pugliese, R., Tiezzi, F.: A calculus for orchestration of web services. In: De Nicola, R. (ed.) ESOP 2007. LNCS, vol. 4421, pp. 33–47. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  27. 27.
    Mazzara, M., Lanese, I.: Towards a unifying theory for web services composition. In: Bravetti, M., Núñez, M., Tennenholtz, M. (eds.) WS-FM 2006. LNCS, vol. 4184, pp. 257–272. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  28. 28.
    Milner, R.: Communication and Concurrency. Prentice-Hall, Englewood Cliffs (1989)zbMATHGoogle Scholar
  29. 29.
    Milner, R., Parrow, J., Walker, D.: A calculus of mobile processes, part I/II. Information and Computation 100, 1–77 (1992)CrossRefzbMATHGoogle Scholar
  30. 30.
    Milner, R., Sangiorgi, D.: Barbed bisimulation. In: Kuich, W. (ed.) ICALP 1992. LNCS, vol. 623, pp. 685–695. Springer, Heidelberg (1992)CrossRefGoogle Scholar
  31. 31.
    Montesi, F., Guidi, C., Zavattaro, G.: Composing services with JOLIE. In: Proc. of ECOWS 2007, pp. 13–22. IEEE Computer Society Press, Los Alamitos (2007)Google Scholar
  32. 32.
    Oasis. Web Services Business Process Execution Language Version 2.0 (2007),
  33. 33.
    Rensink, A., Vogler, W.: Fair testing. Information and Computation 205(2), 125–198 (2007)CrossRefzbMATHGoogle Scholar
  34. 34.
    Sangiorgi, D., Walker, D.: Pi-Calculus: A Theory of Mobile Processes. Cambridge University Press, Cambridge (2001)zbMATHGoogle Scholar
  35. 35.
    Vaz, C., Ferreira, C.: Towards compensation correctness in interactive systems. In: Laneve, C., Su, J. (eds.) WS-FM 2009. LNCS, vol. 6194, pp. 161–177. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  36. 36.
    Vaz, C., Ferreira, C., Ravara, A.: Dynamic recovering of long running transactions. In: Kaklamanis, C., Nielson, F. (eds.) TGC 2008. LNCS, vol. 5474, pp. 201–215. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  37. 37.
    Vieira, H.T., Caires, L., Seco, J.C.: The conversation calculus: A model of service-oriented computation. In: Gairing, M. (ed.) ESOP 2008. LNCS, vol. 4960, pp. 269–283. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  38. 38.
    World Wide Web Consortium. Web Services Description Language (WSDL) 1.1 (2001),

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Carla Ferreira
    • 2
  • Ivan Lanese
    • 1
  • Antonio Ravara
    • 2
  • Hugo Torres Vieira
    • 2
  • Gianluigi Zavattaro
    • 1
  1. 1.Focus TeamUniversità di Bologna/INRIAItaly
  2. 2.CITI and Departamento de InformáticaFaculdade de Ciências e Tecnologia, Universidade Nova de LisboaPortugal

Personalised recommendations