Tuesday, December 09, 2008

Choreography vs. Orchestration

SOA and BPM are converging to yield a new application development paradigm that is based on coordination of compartmentized resources exposed as services. The coordintaion of services is becoming more and more important in this new platform and it takes two forms based on the scope: Choreography and Orchestration. These terms are usually used inconsistently.

Orchestration focuses on the behaviour of a single participant. It is a hub/spoke based model where a controller residing at a single location in a distributed system, locally enforces a process. BPEL and BPMN standards are emerging as leading representations used to descibe these local processes.

Choreography on the other hand is concerned with global, multi-party, peer to play colloborations between applicant components, distributed within or across an organization's trusted domain. Choreography does not depend on a centralized controller. WS-CDL standard descibes this interactive process from a global perspective.