Towards Compensation Correctness in Interactive Systems

  • Cátia Vaz
  • Carla Ferreira
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6194)

Abstract

One fundamental idea of service-oriented computing is that applications should be developed by composing already available services. Due to the long running nature of service interactions, a main challenge in service composition is ensuring correctness of failure recovery. In this paper, we use a process calculus suitable for modelling long running transactions with a recovery mechanism based on compensations. Within this setting, we discuss and formally state correctness criteria for compensable processes compositions, assuming that each process is correct with respect to failure recovery. Under our theory, we formally interpret self-healing compositions, that can detect and recover from failures, as correct compositions of compensable processes.

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)Google Scholar
  2. 2.
    Bruni, R., Butler, M.J., Ferreira, C., Hoare, C.A.R., Melgratti, H.C., Montanari, U.: Comparing two approaches to compensable flow composition. In: Abadi, M., de Alfaro, L. (eds.) CONCUR 2005. LNCS, vol. 3653, pp. 383–397. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  3. 3.
    Bruni, R., Melgratti, H.C., Montanari, U.: Nested commits for mobile calculi: Extending join. In: IFIP TCS, pp. 563–576. Kluwer, Dordrecht (2004)Google Scholar
  4. 4.
    Bruni, R., Melgratti, H.C., Montanari, U.: Theoretical foundations for compensations in flow composition languages. In: Palsberg, J., Abadi, M. (eds.) POPL 2005, pp. 209–220. ACM, New York (2005)CrossRefGoogle Scholar
  5. 5.
    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.) 25 Years Communicating Sequential Processes. LNCS, vol. 3525, pp. 133–150. Springer, Heidelberg (2005)Google Scholar
  6. 6.
    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
  7. 7.
    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
  8. 8.
    Guidi, C., Lanese, I., Montesi, F., Zavattaro, G.: On the interplay between fault handling and request-response service invocations. In: 8th International Conference on Application of Concurrency to System Design, pp. 190–199. IEEE Computer Society, Los Alamitos (2008)Google Scholar
  9. 9.
    Honda, K., Yoshida, N., Carbone, M.: Multiparty asynchronous session types. In: POPL, pp. 273–284. ACM, New York (2008)Google Scholar
  10. 10.
    Korth, H.F., Levy, E., Silberschatz, A.: A formal approach to recovery by compensating transactions. In: VLDB, pp. 95–106 (1990)Google Scholar
  11. 11.
    Lanese, I., Vaz, C., Ferreira, C.: On the expressive power of primitives for compensation handling. Technical report (2009)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)Google Scholar
  13. 13.
    Lucchi, R., Mazzara, M.: A pi-calculus based semantics for ws-bpel. J. Log. Algebr. Program. 70(1), 96–118 (2007)MATHCrossRefMathSciNetGoogle Scholar
  14. 14.
    Mazzara, M., Lanese, I.: Towards a unifying theory for web services composition. In: Bravetti, M., Núñez, M., Zavattaro, G. (eds.) WS-FM 2006. LNCS, vol. 4184, pp. 257–272. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  15. 15.
    Milner, R., Parrow, J., Walker, D.: A calculus of mobile processes, I and II. Inf. Comput. 100(1), 1–77 (1992)MATHCrossRefMathSciNetGoogle Scholar
  16. 16.
    Papazoglou, M.P., Traverso, P., Dustdar, S., Leymann, F.: Service-oriented computing: a research roadmap. Int. J. Cooperative Inf. Syst. 17(2), 223–255 (2008)CrossRefGoogle Scholar
  17. 17.
    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

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Cátia Vaz
    • 1
  • Carla Ferreira
    • 2
  1. 1.INESC-ID / DEETC, ISELInstituto Politécnico de LisboaPortugal
  2. 2.CITI / Departamento de Informática, FCTUniversidade Nova de LisboaPortugal

Personalised recommendations