Advertisement

A Process Calculus Analysis of Compensations

  • Luís Caires
  • Carla Ferreira
  • Hugo Vieira
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5474)

Abstract

Conversations in service-oriented computation are frequently long running. In such a setting, traditional ACID properties of transactions cannot be reasonably implemented, and compensation mechanisms seem to provide convenient techniques to, at least, approximate them. In this paper, we investigate the representation and analysis of structured compensating transactions within a process calculus model, by embedding in the Conversation Calculus certain structured compensation programming abstractions inspired by the ones proposed by Butler, Ferreira, and Hoare. We prove the correctness of the embedding after developing a general notion of stateful model for structured compensations and related results, and showing that the embedding induces such a model.

Keywords

Operational Semantic Atomic Activity Label Transition System Exception Handler Compensation Model 
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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    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
  2. 2.
    Boreale, M., Bruni, R., Caires, L., De Nicola, R., Lanese, I., Loreti, M., Martins, F., Montanari, U., Ravara, A., Sangiorgi, D., Vasconcelos, V., Zavattaro, G.: SCC: a Service Centered Calculus. In: Bravetti, M., Núñez, M., Zavattaro, G. (eds.) WS-FM 2006. LNCS, vol. 4184, pp. 38–57. Springer, Heidelberg (2006)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.
    Bruni, R., Melgratti, H.C., Montanari, U.: Nested Commits for Mobile Calculi: Extending Join. In: IFIP TCS, pp. 563–576. Kluwer Academics, Dordrecht (2004)Google Scholar
  5. 5.
    Bruni, R., Melgratti, H.C., Montanari, U.: Theoretical Foundations for Compensations in Flow Composition Languages. In: POPL, pp. 209–220 (2005)Google Scholar
  6. 6.
    Butler, M., Ferreira, C.: A process compensation language. In: Grieskamp, W., Santen, T., Stoddart, B. (eds.) IFM 2000. LNCS, vol. 1945, pp. 61–76. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  7. 7.
    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. LNCS, vol. 3525, pp. 133–150. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  8. 8.
    Lanese, I., Guidi, C., Montesi, F., Zavattaro, G.: Dynamic Fault Handling for Service Oriented Applications. In: Proceedings of ECOWS (2008)Google Scholar
  9. 9.
    Gray, J., Reuter, A.: Transaction Processing: Concepts and Techniques. Morgan Kaufmann, San Francisco (1993)zbMATHGoogle Scholar
  10. 10.
    Korth, H., Levy, E., Silberschatz, A.: A Formal Approach to Recovery by Compensating Transactions. In: 16th VLDB Conference (1990)Google Scholar
  11. 11.
    Lanese, I., Vasconcelos, V.T., Martins, F., Ravara, A.: Disciplining Orchestration and Conversation in Service-Oriented Computing. In: 5th ICSEFM, pp. 305–314. IEEE Computer Society Press, Los Alamitos (2007)Google Scholar
  12. 12.
    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
  13. 13.
    Milner, R.: Communication and Concurrency. Prentice-Hall, Englewood Cliffs (1989)zbMATHGoogle Scholar
  14. 14.
    Milner, R., Parrow, J., Walker, D.: A Calculus of Mobile Processes, Part I + II. Information and Computation 100(1), 1–77 (1992)MathSciNetCrossRefzbMATHGoogle Scholar
  15. 15.
    Sangiorgi, D., Walker, D.: The π-calculus: A Theory of Mobile Processes. Cambridge University Press, Cambridge (2001)zbMATHGoogle Scholar
  16. 16.
    Vieira, H.T., Caires, L., Seco, J.C.: A Model of Service Oriented Computation. TR-DI/FCT/UNL 6/07, Universidade Nova de Lisboa, Departamento de Informatica (2007)Google Scholar
  17. 17.
    Vieira, H.T., Caires, L., Seco, J.C.: The conversation calculus: A model of service-oriented computation. In: Drossopoulou, S. (ed.) ESOP 2008. LNCS, vol. 4960, pp. 269–283. Springer, Heidelberg (2008)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Luís Caires
    • 1
  • Carla Ferreira
    • 1
  • Hugo Vieira
    • 1
  1. 1.CITI / Departamento de InformáticaFCT Universidade Nova de LisboaPortugal

Personalised recommendations