Advertisement

SCC: A Service Centered Calculus

  • M. Boreale
  • R. Bruni
  • L. Caires
  • R. De Nicola
  • I. Lanese
  • M. Loreti
  • F. Martins
  • U. Montanari
  • A. Ravara
  • D. Sangiorgi
  • V. Vasconcelos
  • G. Zavattaro
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4184)

Abstract

We seek for a small set of primitives that might serve as a basis for formalising and programming service oriented applications over global computers. As an outcome of this study we introduce here SCC, a process calculus that features explicit notions of service definition, service invocation and session handling. Our proposal has been influenced by Orc, a programming model for structured orchestration of services, but the SCC’s session handling mechanism allows for the definition of structured interaction protocols, more complex than the basic request-response provided by Orc. We present syntax and operational semantics of SCC and a number of simple but nontrivial programming examples that demonstrate flexibility of the chosen set of primitives. A few encodings are also provided to relate our proposal with existing ones.

Keywords

Operational Semantic Parallel Composition Service Invocation Site Call Service Orchestration 
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.
    Abramsky, S.: The lazy lambda calculus. In: Research Topics in Functional Programming, pp. 65–116. Addison-Welsey, Reading (1990)Google Scholar
  2. 2.
    Acciai, L., Boreale, M.: XPi: A typed process calculus for XML messaging. In: Steffen, M., Zavattaro, G. (eds.) FMOODS 2005. LNCS, vol. 3535, pp. 47–66. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  3. 3.
    Barendregt, H.: The lambda calculus, its syntax and semantics. North-Holland, Amsterdam (1984)MATHGoogle Scholar
  4. 4.
    Bartoletti, M., Degano, P., Ferrari, G.: Types and effects for secure service orchestration. In: Proc. of CSFW 2006 (to appear, 2006)Google Scholar
  5. 5.
    Brown, A.L., Laneve, C., Meredith, L.G.: Piduce: A process calculus with native XML datatypes. In: Bravetti, M., Kloul, L., Zavattaro, G. (eds.) EPEW/WS-EM 2005. LNCS, vol. 3670, pp. 18–34. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  6. 6.
    Bruni, R., Butler, M., Ferreira, C., Hoare, S.T., Melgratti, H., 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
  7. 7.
    Bruni, R., Melgratti, H., Montanari, U.: Nested commits for mobile calculi: extending join. In: Proc. of IFIP TCS 2004, pp. 367–379. Kluwer Academics, Dordrecht (2004)Google Scholar
  8. 8.
    Busi, N., Gorrieri, R., Guidi, C., Lucchi, R., Zavattaro, G.: Choreography and orchestration conformance for system design. In: Ciancarini, P., Wiklicky, H. (eds.) COORDINATION 2006. LNCS, vol. 4038, pp. 63–81. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  9. 9.
    Cook, W.R., Patwardhan, S., Misra, J.: Workflow patterns in orc. In: Ciancarini, P., Wiklicky, H. (eds.) COORDINATION 2006. LNCS, vol. 4038, pp. 82–96. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  10. 10.
    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
  11. 11.
    Gay, S.J., Hole, M.: Types and subtypes for client-server interactions. In: Swierstra, S.D. (ed.) ESOP 1999. LNCS, vol. 1576, pp. 74–90. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  12. 12.
    Honda, K., Vasconcelos, V.T., Kubo, M.: Language primitives and type discipline for structured communication-based programming. In: Hankin, C. (ed.) ESOP 1998. LNCS, vol. 1381, pp. 122–138. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  13. 13.
    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
  14. 14.
    Lapadula, A., Pugliese, R., Tiezzi, F.: A calculus for orchestration of web services. Technical report, University of Florence (2006)Google Scholar
  15. 15.
    Milner, R.: Functions as processes. Math. Struct. in Comput. Sci. 2(2), 119–141 (1992)MATHCrossRefMathSciNetGoogle Scholar
  16. 16.
    Misra, J., Cook, W.R.: Computation orchestration: A basis for wide-area computing. Journal of Software and Systems Modeling (to appear, 2006) A preliminary version of this paper appeared in the Lecture Notes for NATO summer school, held at Marktoberdorf in (August 2004)Google Scholar
  17. 17.
    Sensoria Project. Public web site, http://sensoria.fast.de/
  18. 18.
    van der Aalst, W.M.P., ter Hofstede, A.H.M., Kiepuszewski, B., Barros, A.P.: Workflow patterns. Distributed and Parallel Databases 14(1), 5–51 (2003)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • M. Boreale
    • 1
  • R. Bruni
    • 1
  • L. Caires
    • 1
  • R. De Nicola
    • 1
  • I. Lanese
    • 1
  • M. Loreti
    • 1
  • F. Martins
    • 1
  • U. Montanari
    • 1
  • A. Ravara
    • 1
  • D. Sangiorgi
    • 1
  • V. Vasconcelos
    • 1
  • G. Zavattaro
    • 1
  1. 1.EU Integrated Project Sensoria 

Personalised recommendations