Skip to main content

Orchestration, Choreography, Collaboration and Java Technology-based Business Integration

Posted by caroljmcdonald on October 30, 2003 at 8:20 PM PST

some of the latest Web Services "specs" are about
Orchestration, Choreography, Collaboration ...
Here I am going to give a brief synopsis and pointers for more information on this topic.

Orchestration, Choreography, Collaboration are about composing web services into Business processes,
what does this mean?

A Business process can be defined as the execution of activities according to a defined set of rules in order to achieve a common goal between participants .

Orchestration defines the control and data flow between web services to achieve a business process. Orchestration
defines an "executable process" or the rules for a business process flow defined in an xml document which can be
given to a business process engine to "orchestrate" the process, from the viewpoint of one participant.

Choreography defines the sequence and dependencies of interactions between multiple roles to implement a business
Process composing multiple web services. Choreography describes the sequence of interactions for Web service
messages-it defines the conditions under which a particular web service operation can be invoked. WSDL describes
the static interface and Choreography defines the “Dynamic” behavior external interface from a global view.

BPEL4WS primarily focuses on orchestration, while WSCI focuses on choreography. With WSCI each participant in the
message exchange defines a WSCI interface. With BPEL4WS you describe an executable process from the perspective of one
of the participants.

2 groups have formed to work on Orchestration and Choreography.
The OASIS Web BPEL TC was created in April 2003. It has 100+ members representing
50+organizations includes IBM, Microsoft, BEA, Oracle, Sun, SAP …
The TC is chartered to:
Continue work on BPEL4WS:
as basis for web services orchestration by creating the needed specifications to formally
describe interoperable business processes and business interaction protocols
http://www.oasis-open.org/committees/wsbpel

The W3C WS Choreography WG
was created in Jan. 2003
It has 40+ members representing 25+ organizations including Intalio, BEA, Oracle, Sun, SAP…
The working group is chartered to :
create the definition of a language(s) for describing a choreography, as well as the rules
for composition of, and interaction among, such choreographed Web services.
WSCI will be considered as Input but will not necessarily be the output of this group.
http://www.w3.org/2002/ws/chor/

There is overlap in membership between WS-BPEL and WS-Choreography and these 2 groups are
trying to coordinate their work. WS-BPEL is focusing more on the executable business processes,
while WS-Choreography is concerned more with the public message exchange among Web services.

Process Definition for Java (PD4J or JSR-207)
builds on Java Language Metadata technology (JSR-175)
to provide an easy to use syntax for describing a business process
at the source code level for the J2EE platform
http://jcp.org/en/jsr/detail?id=207

Java Business Integration (JBI) JSR-208
enables the creation of a Java business integration environment for specifications such as
BPEL4WS and the WS-Choreography.
JBI formalizes the contract between BPMs and
a normalized message bus.
Business Process Machines support Business Process Instances and manage their lifecycle.
BPMs will work at the normalized message level in order to align with the JBI environment.
http://jcp.org/en/jsr/detail?id=208

EbXML: Business Process Specification Schema
BPSS defines the collaborative process in terms of:
a Sequence of Business Transactions (Message exchanges)
between partners.
http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=ebxml-bp

For more information:

http://developer.java.sun.com/developer/onlineTraining/webcasts/35plus/c...

http://www.ebpml.org

http://searchwebservices.techtarget.com/originalContent/0,289142,sid26_g...

http://sunnetwork.sun.com/sf2003/conf/sessions/display-1470.en.jsp

Related Topics >>