Abstract
Cook and Misra’s Orc is an elegant language for orchestrating distributed services, able to cover e.g. van der Aalst’s workflow patterns. We aim to understand the key novel features of Orc by comparing it with variations of Petri nets. The comparison shows that Orc hides powerful mechanisms for name handling (creation and passing) and for atomic distributed termination. Petri nets with static topology can encode Orc under severe restrictions while the full language (up to a more realistic cancellation strategy) can be encoded in Join (that can be seen as a higher-order extension of Petri nets). As an overall result, we promote Join calculus as an elegant language embedding orchestration and computation.
Research supported by the EU FET-GC2 IST-2004-16004 Integrated Project Sensoria and by the Italian FIRB Project Tocai.it.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
van der Aalst, W.M.P.: Why workflow is NOT just a pi process. In: BPTrends, pp. 1–2 (2004)
van der Aalst, W.M.P.: Pi calculus versus Petri nets. In: BPTrends, pp. 1–11 (2005)
van der Aalst, W.M.P., ter Hofstede, A.H.M.: Workflow patterns: On the expressive power of (Petri-net-based) workflow languages. In: Proc. of CPN 2002, University of Aarhus. DAIMI, vol. 560, pp. 1–20 (2002)
van der Aalst, W.M.P., ter Hofstede, A.H.M.: Yawl: yet another workflow language. Inf. Syst. 30(4), 245–275 (2005)
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)
Araki, T., Kasami, T.: Some decision problems related to the reachability problem for Petri nets. TCS 3(1), 85–104 (1976)
Benton, N., Cardelli, L., Fournet, C.: Modern concurrency abstractions for c\({}^{\sharp}\). In: Magnusson, B. (ed.) ECOOP 2002. LNCS, vol. 2374, pp. 415–440. Springer, Heidelberg (2002)
BPEL Specification (v. 1.1), http://www.ibm.com/developerworks/library/ws-bpel
Buscemi, M.G., Sassone, V.: High-level petri nets as type theories in the join calculus. In: Honsell, F., Miculan, M. (eds.) FOSSACS 2001. LNCS, vol. 2030, pp. 104–120. Springer, Heidelberg (2001)
Conchon, S., Le Fessant, F.: Jocaml: Mobile agents for Objective-Caml. In: Proc. of ASA/MA 1999, pp. 22–29. IEEE Computer Society, Los Alamitos (1999)
Cook, W.R., Patwardhan, S., Misra, J.: Workflow patterns in Orc (submitted, 2006)
Dufourd, C., Finkel, A., Schnoebelen, P.: Reset nets between decidability and undecidability. In: Larsen, K.G., Skyum, S., Winskel, G. (eds.) ICALP 1998. LNCS, vol. 1443, pp. 103–115. Springer, Heidelberg (1998)
Flynn, M.J., Agerwala, T.: Comments on capabilities, limitations and correctness of Petri nets. In: SIGARCH Computer Architecture News, pp. 81–86 (1973)
Fournet, C., Gonthier, G.: The reflexive chemical abstract machine and the join calculus. In: Proc. of POPL 1996, pp. 372–385. ACM Press, New York (1996)
Fournet, C., Laneve, C.: Bisimulations in the join calculus. TCS 266, 569–603 (2001)
Leymann, F.: WSFL Specification (v. 1.0), http://www-306.ibm.com/software/solutions/webservices/pdf/WSFL.pdf
Milner, R.: A Calculus of Communication Systems. LNCS, vol. 92. Springer, Heidelberg (1980)
Milner, R., Parrow, J., Walker, J.: A calculus of mobile processes, I and II. Inform. and Comput. 100(1), 1–40, 41–77 (1992)
Misra, J., Cook, W.R.: Orc - An orchestration language, http://www.cs.utexas.edu/~wcook/projects/orc/
Misra, J., Cook, W.R.: Computation orchestration: A basis for wide-area computing. Journal of Software and Systems Modeling (to appear, 2006)
Petri, C.A.: Kommunikation mit Automaten. PhD thesis, Institut für Instrumentelle Mathematik, Bonn (1962)
The Process Modelling Group web site, http://www.process-modelling-group.org/
Puhlmann, F., Weske, M.: Using the pi-calculus for formalising workflow patterns. In: van der Aalst, W.M.P., Benatallah, B., Casati, F., Curbera, F. (eds.) BPM 2005. LNCS, vol. 3649, pp. 153–168. Springer, Heidelberg (2005)
Reisig, W.: Petri Nets: An Introduction. EATCS Monographs on Theoretical Computer Science. Springer, Heidelberg (1985)
Smith, H., Fingar, P.: Workflow is just a pi process. In: BPTrends, pp. 1–36 (2004)
Stefansen, C.: SMAWL: A small workflow language based on CCS. In: CAiSE 2005 Short Paper Proceedings, CEUR Workshop Proceedings. CEUR-WS.org, vol. 161 (2005)
Thatte, S.: xlang: Web Services for Business Process Design (2001), http://www.gotdotnet.com/team/xml_wsspecs/xlang-c/default.htm
Workflow Patterns web site, http://is.tm.tue.nl/research/patterns/
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Bruni, R., Melgratti, H., Tuosto, E. (2006). Translating Orc Features into Petri Nets and the Join Calculus. In: Bravetti, M., Núñez, M., Zavattaro, G. (eds) Web Services and Formal Methods. WS-FM 2006. Lecture Notes in Computer Science, vol 4184. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11841197_8
Download citation
DOI: https://doi.org/10.1007/11841197_8
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-38862-3
Online ISBN: 978-3-540-38865-4
eBook Packages: Computer ScienceComputer Science (R0)