A smooth orchestrator is a process with several alternative branches, every one defining synchronizations among co-located channels. Smooth orchestrators constitute a basic mechanism that may express standard workflow patterns in Web services as well as common synchronization constructs in programming languages. Smooth orchestrators may be created in one location and migrated to a different one, still not manifesting problems that usually afflict generic mobile agents.

We encode an extension of Milner’s (asynchronous) pi calculus with join patterns into a calculus of smooth orchestrators and we yield a strong correctness result (full abstraction) when the subjects of the join patterns are co-located. We also study the translation of smooth orchestrators into finite-state automata, therefore addressing the implementation of co-location constraints and the case when synchronizations are not linear with respect to subjects.


Mobile Agent Operational Semantic Reduction Rule Message Queue Deterministic Automaton 
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.


  1. 1.
    Aceto, L., Bloom, B., Vaandrager, F.W.: Turning SOS rules into equations. Information and Computation 111(1), 1–52 (1994)MathSciNetCrossRefzbMATHGoogle Scholar
  2. 2.
    Andrews, T., et al.: Process Execution Language for Web Services. Version 1.1. Specification, BEA Systems, IBM Corp., Microsoft Corp., SAP AG, Siebel Systems (2003)Google Scholar
  3. 3.
    Busi, N., Padovani, L.: A distributed implementation of mobile nets as mobile agents. In: Steffen, M., Zavattaro, G. (eds.) FMOODS 2005. LNCS, vol. 3535, pp. 259–274. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  4. 4.
    Brown, A., Laneve, C., Meredith, G.L.: 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
  5. 5.
    Carpineti, S., Laneve, C., Milazzo, P.: The BoPi machine: a distributed machine for experimenting web services technologies. In: Fifth International Conference on Application of Concurrency to System Design (ACSD 2005), pp. 202–211. IEEE Computer Society Press, Los Alamitos (2005)CrossRefGoogle Scholar
  6. 6.
    Fournet, C.: The Join-Calculus: A Calculus for Distributed Mobile Programming. PhD thesis, École Polytechnique, Paris, France (1998)Google Scholar
  7. 7.
    Gardner, P., Laneve, C., Wischik, L.: Linear forwarders. In: Amadio, R.M., Lugiez, D. (eds.) CONCUR 2003. LNCS, vol. 2761, pp. 415–430. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  8. 8.
    Kavantzas, N., Olsson, G., Mischkinsky, J., Chapman, M.: Web Services Choreography Description Languages. Oracle Corporation (2003)Google Scholar
  9. 9.
    Le Fessant, F., Maranget, L.: Compiling join-patterns. In: Nestmann, U., Pierce, B.C. (eds.) Operating Systems. Electronic Notes in Computer Science, vol. 16.3 (1998)Google Scholar
  10. 10.
    Leymann, F.: Web Services Flow Language (wsfl 1.0). Technical report, IBM Software Group (2001)Google Scholar
  11. 11.
    Milner, R., Parrow, J., Walker, D.: A calculus of mobile processes, part I/II. Information and Computation 100, 1–77 (1992)MathSciNetCrossRefzbMATHGoogle Scholar
  12. 12.
    Milner, R., Sangiorgi, D.: Barbed bisimulation. In: Kuich, W. (ed.) ICALP 1992. LNCS, vol. 623, pp. 685–695. Springer, Heidelberg (1992)CrossRefGoogle Scholar
  13. 13.
    Thatte, S.: XLANG: Web services for business process design. Microsoft Corporation (2001)Google Scholar
  14. 14.
    van der Aalst, W.: Workflow patterns (2001) At:
  15. 15.
    Wojciechowski, P., Sewell, P.: Nomadic pict: Language and infrastructure design for mobile agents. In: Proceedings of ASA/MA 1999 (First International Symposium on Agent Systems and Applications/Third International Symposium on Mobile Agents) (1999)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Cosimo Laneve
    • 1
  • Luca Padovani
    • 2
  1. 1.Department of Computer ScienceUniversity of BolognaItaly
  2. 2.Information Science and Technology InstituteUniversity of UrbinoItaly

Personalised recommendations