A Tree Semantics of an Orchestration Language

Tony Hoare, Galen Menzel, Jayadev Misra. A Tree Semantics of an Orchestration Language. In Engineering Theories of Software Intensive Systems. Volume 195 of NATO Science Series II: Mathematics, Physics and Chemistry, pages 331-350, Springer, 2005. [doi]

Abstract

We explore the following quintessential problem: given a set of basic computing elements how do we compose them to yield interesting computation patterns. Our goal is to study composition operators which apply across a broad spectrum of computing elements, from sequential programs to distributed transactions over computer networks. Our theory makes very few assumptions about the nature of the basic elements; in particular, we do not assume that an element’s computation always terminates, or that it is deterministic. We develop a theory which provides useful guidance for application designs, from integration of sequential programs to coordination of distributed tasks. The primary application of interest for us is orchestration of web services over the internet, which we describe in detail in this paper.