Interaction topologies in service-oriented systems are
usually classified into two styles: choreographies and
orchestrations. In a choreography, services interact in a
peer-to-peer manner and no service plays a privileged
role. In contrast, interactions in an orchestration occur
between one particular service, the orchestrator, and a
number of subordinated services. Each of these topologies
has its trade-offs. This paper considers the problem of
migrating a service-oriented system from a choreography
style to an orchestration style. Specifically, the paper
presents a tool chain for synthesising orchestrators from
choreographies. Choreographies are initially represented
as communicating state machines. Based on this
representation, an algorithm is presented that synthesises
the behaviour of an orchestrator, which is also represented
as a state machine. Concurrent regions are then identified
in the synthesised state machine to obtain a more compact
representation in the form of a Petri net. Finally, it is
shown how the resulting Petri nets can be transformed
into notations supported by commercial tools, such as the
Business Process Modelling Notation (BPMN). |
Cite as: McIlvenna, S., Dumas, M. and Wynn, M.T. (2009). Synthesis of Orchestrators from Service Choreographies. In Proc. Sixth Asia-Pacific Conference on Conceptual Modelling (APCCM 2009), Wellington, New Zealand. CRPIT, 96. Kirchberg, M. and Link, S., Eds. ACS. 129-138. |
(from crpit.com)
(local if available)
|