Skip to main content

Advertisement

SpringerLink
Log in
Menu
Find a journal Publish with us Track your research
Search
Cart
Book cover

European Symposium on Programming

ESOP 2007: Programming Languages and Systems pp 33–47Cite as

  1. Home
  2. Programming Languages and Systems
  3. Conference paper
A Calculus for Orchestration of Web Services

A Calculus for Orchestration of Web Services

  • Alessandro Lapadula1,
  • Rosario Pugliese1 &
  • Francesco Tiezzi1 
  • Conference paper
  • 1184 Accesses

  • 109 Citations

Part of the Lecture Notes in Computer Science book series (LNTCS,volume 4421)

Abstract

We introduce COWS (Calculus for Orchestration of Web Services), a new foundational language for SOC whose design has been influenced by WS-BPEL, the de facto standard language for orchestration of web services. COWS combines in an original way a number of ingredients borrowed from well-known process calculi, e.g. asynchronous communication, polyadic synchronization, pattern matching, protection, delimited receiving and killing activities, while resulting different from any of them. Several examples illustrates COWS peculiarities and show its expressiveness both for modelling imperative and orchestration constructs, e.g. web services, flow graphs, fault and compensation handlers, and for encoding other process and orchestration languages.

Keywords

  • Operational Semantic
  • Kill Activity
  • Parallel Composition
  • Service Instance
  • 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.

This work has been supported by the EU project SENSORIA, IST-2 005-016004.

Chapter PDF

Download to read the full chapter text

References

  1. Alves, A., et al.: Web Services Business Process Execution Language Version 2.0. Technical report, WS-BPEL TC OASIS, August (2006), http://www.oasis-open.org/

  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)

    Google Scholar 

  3. Boreale, M., et al.: 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)

    CrossRef  Google Scholar 

  4. Bruni, R., et al.: 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)

    CrossRef  Google Scholar 

  5. Bruni, R., Melgratti, H.C., Montanari, U.: Theoretical foundations for compensations in flow composition languages. In: POPL, pp. 209–220. ACM Press, New York (2005)

    CrossRef  Google Scholar 

  6. Busi, N., et al.: Choreography and orchestration: A synergic approach for system design. In: Benatallah, B., Casati, F., Traverso, P. (eds.) ICSOC 2005. LNCS, vol. 3826, pp. 228–240. Springer, Heidelberg (2005)

    CrossRef  Google Scholar 

  7. Busi, N., et al.: Choreography and orchestration conformance for system design. In: Ciancarini, P., Wiklicky, H. (eds.) COORDINATION 2006. LNCS, vol. 4038, pp. 63–81. Springer, Heidelberg (2006)

    CrossRef  Google Scholar 

  8. Butler, M.J., Ferreira, C.: An operational semantics for StAC, a language for modelling long-running business transactions. In: De Nicola, R., Ferrari, G.L., Meredith, G. (eds.) COORDINATION 2004. LNCS, vol. 2949, pp. 87–104. Springer, Heidelberg (2004)

    Google Scholar 

  9. 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)

    Google Scholar 

  10. Carbone, M., Maffeis, S.: On the expressive power of polyadic synchronisation in π- calculus. Nordic J. of Computing 10(2), 70–98 (2003)

    MATH  MathSciNet  Google Scholar 

  11. Carpineti, S., Laneve, C.: A basic contract language for web services. In: Sestoft, P. (ed.) ESOP 2006 and ETAPS 2006. LNCS, vol. 3924, pp. 197–213. Springer, Heidelberg (2006)

    CrossRef  Google Scholar 

  12. Chaki, S., Rajamani, S.K., Rehof, J.: Types as models: model checking message-passing programs. In: POPL, pp. 45–57 (2002)

    Google Scholar 

  13. Garcia-Molina, H., Salem, K.: Sagas. In: SIGMOD, pp. 249–259. ACM Press, New York (1987)

    Google Scholar 

  14. Guidi, C., et al.: SOCK: a calculus for service oriented computing. In: Dan, A., Lamersdorf, W. (eds.) ICSOC 2006. LNCS, vol. 4294, pp. 327–338. Springer, Heidelberg (2006)

    CrossRef  Google Scholar 

  15. Schmidt, K., Stahl, C., Hinz, S.: Transforming BPEL to Petri Nets. In: van der Aalst, W.M.P., et al. (eds.) BPM 2005. LNCS, vol. 3649, pp. 220–235. Springer, Heidelberg (2005)

    Google Scholar 

  16. Igarashi, A., Kobayashi, N.: A generic type system for the pi-calculus. Theor. Comput. Sci. 311(1-3), 121–163 (2004)

    CrossRef  MATH  MathSciNet  Google Scholar 

  17. Kobayashi, N., Suenaga, K., Wischik, L.: Resource usage analysis for the π-calculus. In: Emerson, E.A., Namjoshi, K.S. (eds.) VMCAI 2006. LNCS, vol. 3855, pp. 298–312. Springer, Heidelberg (2005)

    CrossRef  Google Scholar 

  18. Laneve, C., Padovani, L.: Smooth orchestrators. In: Aceto, L., Ingólfsdóttir, A. (eds.) FOSSACS 2006 and ETAPS 2006. LNCS, vol. 3921, pp. 32–46. Springer, Heidelberg (2006)

    CrossRef  Google Scholar 

  19. 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 

  20. Zavattaro, G., Laneve, C.: <Literal>web</Literal>π at Work. In: De Nicola, R., Sangiorgi, D. (eds.) TGC 2005. LNCS, vol. 3705, pp. 182–194. Springer, Heidelberg (2005)

    Google Scholar 

  21. Lapadula, A., Pugliese, R., Tiezzi, F.: A calculus for orchestration of web services (full version). Technical report, Dipartimento di Sistemi e Informatica, Univ. Firenze (2006), http://rap.dsi.unifi.it/cows

  22. Pugliese, R., Lapadula, A., Tiezzi, F.: A WSDL-Based Type System for WS-BPEL. In: Ciancarini, P., Wiklicky, H. (eds.) COORDINATION 2006. LNCS, vol. 4038, pp. 145–163. Springer, Heidelberg (2006)

    Google Scholar 

  23. 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)

    CrossRef  Google Scholar 

  24. Mazzara, M., Lucchi, R.: A pi-calculus based semantics for WS-BPEL. Journal of Logic and Algebraic Programming 70(1), 96–118 (2006)

    MathSciNet  Google Scholar 

  25. Merro, M., Sangiorgi, D.: On asynchrony in name-passing calculi. Mathematical Structures in Computer Science 14(5), 715–767 (2004)

    CrossRef  MATH  MathSciNet  Google Scholar 

  26. Milner, R.: Communication and concurrency. Prentice-Hall, Englewood Cliffs (1989)

    MATH  Google Scholar 

  27. Milner, R., Parrow, J., Walker, D.: A calculus of mobile processes, I and II. Inf. Comput. 100(1), 1–40, 41–77 (1992)

    CrossRef  MATH  MathSciNet  Google Scholar 

  28. Misra, J., Cook, W.R.: Computation orchestration: A basis for wide-area computing. Journal of Software and Systems Modeling (May 2006)

    Google Scholar 

  29. Parrow, J., Victor, B.: The update calculus. In: Johnson, M. (ed.) AMAST 1997. LNCS, vol. 1349, pp. 409–423. Springer, Heidelberg (1997)

    CrossRef  Google Scholar 

  30. Parrow, J., Victor, B.: The fusion calculus: Expressiveness and symmetry in mobile processes. In: Logic in Computer Science, pp. 176–185 (1998)

    Google Scholar 

  31. van der Aalst, W.M.P., et al.: Workflow patterns. Distributed and Parallel Databases 14(1), 5–51 (2003)

    CrossRef  Google Scholar 

  32. Viroli, M.: Towards a formal foundational to orchestration languages. ENTCS 105, 51–71 (2004)

    Google Scholar 

Download references

Author information

Authors and Affiliations

  1. Dipartimento di Sistemi e Informatica Università degli Studi di Firenze,  

    Alessandro Lapadula, Rosario Pugliese & Francesco Tiezzi

Authors
  1. Alessandro Lapadula
    View author publications

    You can also search for this author in PubMed Google Scholar

  2. Rosario Pugliese
    View author publications

    You can also search for this author in PubMed Google Scholar

  3. Francesco Tiezzi
    View author publications

    You can also search for this author in PubMed Google Scholar

Editor information

Rocco De Nicola

Rights and permissions

Reprints and Permissions

Copyright information

© 2007 Springer Berlin Heidelberg

About this paper

Cite this paper

Lapadula, A., Pugliese, R., Tiezzi, F. (2007). A Calculus for Orchestration of Web Services. In: De Nicola, R. (eds) Programming Languages and Systems. ESOP 2007. Lecture Notes in Computer Science, vol 4421. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-71316-6_4

Download citation

  • .RIS
  • .ENW
  • .BIB
  • DOI: https://doi.org/10.1007/978-3-540-71316-6_4

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-71314-2

  • Online ISBN: 978-3-540-71316-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Share this paper

Anyone you share the following link with will be able to read this content:

Sorry, a shareable link is not currently available for this article.

Provided by the Springer Nature SharedIt content-sharing initiative

Publish with us

Policies and ethics

search

Navigation

  • Find a journal
  • Publish with us
  • Track your research

Discover content

  • Journals A-Z
  • Books A-Z

Publish with us

  • Publish your research
  • Open access publishing

Products and services

  • Our products
  • Librarians
  • Societies
  • Partners and advertisers

Our imprints

  • Springer
  • Nature Portfolio
  • BMC
  • Palgrave Macmillan
  • Apress
  • Your US state privacy rights
  • Accessibility statement
  • Terms and conditions
  • Privacy policy
  • Help and support
  • Cancel contracts here

167.114.118.210

Not affiliated

Springer Nature

© 2023 Springer Nature