We propose a programming language, called Orc for orchestration, that supports a structured way of orchestrating distributed services. This model assumes that basic services, like sequential computation and data manipulation, are implemented by primitive sites. Orc provides constructs to orchestrate the concurrent invocation of sites to achieve a goal: acquire data from one or more remote services, calculate with these data, and invoke yet other remote services with the results, handle time-outs and failures, and respond to notifications. We discuss the programming language and demonstrate its effectiveness in a variety of applications.
Orc has a strong theoretical foundation that supports modular composition and analysis of concurrent programs. The composition constructs in Orc are based on Kleene algebra, the algebra of regular expressions. Orc includes no explicit constructs for time-out, parallel-or, interrupt, or arbitration, yet these are easily programmed in Orc. We demonstrate that Orc provides a general model for business process orchestration and workflow
The following papers may be of interest:
Download slides in PDF format.
About the speaker:
|Jayadev Misra is a professor and holder of the Schlumberger Centennial
chair in Computer Sciences at the University of Texas at Austin. He is
the author of two books, Parallel Program Design: A Foundation,
Addison-Wesley, 1988, co-authored with Mani Chandy, and A Discipline
of Multiprogramming, Springer-Verlag, 2001.
Misra is a fellow of ACM and IEEE; he held the Guggenheim fellowship during 1988-1989. He was the Strachey lecturer at Oxford University in 1996, and he held the Belgian FNRS International Chair of Computer Science in 1990.
Misra's research interests are in the area of concurrent programming, with emphasis on rigorous methods to improve the programming process. He is currently spear-heading an effort, jointly with Tony Hoare, to establish a grand challenge project to automate large-scale program verification.
University of Texas at Austin
Austin TX 78712