- From: Edwin Khodabakchian <edwink@collaxa.com>
- Date: Wed, 14 Aug 2002 10:04:34 -0700 (PST)
- To: Sanjiva Weerawarana <sanjiva@watson.ibm.com>, edwink@collaxa.com, www-ws-arch@w3.org
Sanjiva, I am a little confused: Aren't "abstract BPEL processes" suppose to represent business protocols and provide a global model? Thanks, Edwin ---- Sanjiva Weerawarana <sanjiva@watson.ibm.com> wrote: > > Hi Anne, > > Indeed. What I was saying is that IMO these terms don't have > fixed meanings in this space as they stand today. However, WSAWG > certainly can define them as you see fit. > > Note that the "global model" case of Edwin's list (case 1) > does not express an executable composition - its a declaration > of how a set of services interact with each other. Only > case 2 is an executable composition - it says how to provide > a new service as a composition of two services. > > Sanjiva. > > ----- Original Message ----- > From: "Anne Thomas Manes" <anne@manes.net> > To: "Sanjiva Weerawarana" <sanjiva@watson.ibm.com>; <edwink@collaxa.com>; > <www-ws-arch@w3.org> > Sent: Wednesday, August 14, 2002 5:34 PM > Subject: RE: "Orchestration" and "Choreography" > > > > > > I think it's our job to make the distinction. As Edwin said there are > > different ways to assemble services. To clarify my previous comment: > > > > Orchestration: you invoke a service, and a whole bunch of other services > get > > invoked on your behalf according to the orchestration specification > > (composition of smaller services into a larger service) > > > > Choreography: you want to execute a multi-step process with another > partner. > > First you send this message to this service. He will reply with this other > > message within a certain timeframe. You next send another message to this > > other service. He will send a message to one of your services. etc. (an > > interaction script) > > > > Anne > > > > > -----Original Message----- > > > From: www-ws-arch-request@w3.org [mailto:www-ws- arch-request@w3.org]On > > > Behalf Of Sanjiva Weerawarana > > > Sent: Wednesday, August 14, 2002 4:19 AM > > > To: edwink@collaxa.com; www-ws-arch@w3.org > > > Subject: Re: "Orchestration" and "Choreography" > > > > > > > > > > > > I'm not sure whether there's such a clear distinction between > > > the terms. During the lifetime of the BPEL4WS document, it was > > > at one point called WS-Orchestration, then WS- Choreography, > > > then WS-Business Process and and eventually BPEL4WS. I can tell > > > you that the name changes had nothing whatsoever to do with > > > technical distinctions between the words .. it was all marketing > > > and, um sometimes, politics ;-). > > > > > > To me orchestration, choreography, business process, workflow > > > are all ways of indicating how to take a bunch of things and > > > put them together to do something meaningful. We also use the > > > term composition for the same thing .. BPEL4WS is a language > > > for composing a set of Web services into another service. The > > > thing that makes it a workflow language is that the composition > > > primitives chosen are those that are well-known in the workflow > > > domain. > > > > > > Edwin's distinction seems to be the difference between what > > > WSFL called global models vs. flow models. I think that distinction > > > is definitely valid (BPEL4WS doesn't yet handle global models, > > > for example), but I don't think the terms choreography and > > > orchestration distinguish between those two. > > > > > > Coordination is different IMO; that's really distributed > > > synchronization (rendezvous). > > > > > > Hope this helps, > > > > > > Sanjiva. > > > > > > ----- Original Message ----- > > > From: "Edwin Khodabakchian" <edwink@collaxa.com> > > > To: <www-ws-arch@w3.org> > > > Sent: Wednesday, August 14, 2002 1:42 AM > > > Subject: "Orchestration" and "Choreography" > > > > > > > > > > > > > > Mike, > > > > > > > > There are 2 problems that need to be solved: > > > > > > > > Problem #1: You have 3 different services that > > > > interact with each other and you want to document the > > > > exchange of message between those services. > > > > > > > > Problem #2: You want to invoke 3 different services > > > > in a specific order because they have data and > > > > control dependencies between each other. > > > > > > > > Problem #1: is called choreorgraphy. It is about > > > > providing more information about interfaces of > > > > services and how they plug to each other. > > > > Choreography defines public protocols that each party > > > > needs to be compliant with. RosettaNet PIPs, WSCI, > > > > BPSS and BPEL4WS abtract processes try to address > > > > this problem. Note: This is not executable logic, > > > > only something you are compliant with. > > > > > > > > Problem #2: is called workflow, BPM or Orchestration. > > > > It is about implementing logic that ties a set of > > > > services into an end-to-end process. That logic is > > > > then executed by a run-time that dispatch the right > > > > message to the right component and wait for the > > > > reception of the right message to activate the next > > > > service. Orchestration languages are similar to other > > > > scripting language but usually include support for > > > > asynchronous interactions (<receive> in BPEL) and > > > > flow coordination ( <flow> in BPEL ) and business > > > > transactions (WS-T or BTP). Also, in term of > > > > terminology, orchestration languages use activity > > > > where traditional languages use statements. > > > > > > > > One of the most important aspect of both of those > > > > problems is that they require a visual representation > > > > because they are used as an important communication > > > > medium between partners but also within an > > > > organization between the business analyst and > > > > business users that know the rules and data models > > > > and the developers that implement the real work. > > > > > > > > my 2c, > > > > Edwin > > > > > > > > > > > > > > > > ---- "Champion, Mike" <Mike.Champion@softwareag- > > > > usa.com> wrote: > > > > > > > > > > OK, trying to eat my own dogfood here, I need help > > > > understanding the > > > > > distinctions between "coordination" > > > > and "choreography" in the web services > > > > > context. The W3C recently acknowledged > > > > a "choreography" submission [1], and > > > > > IBM/BEA/Microsoft just unveiled a collaborative "WS- > > > > Coordination" language > > > > > [2]. > > > > > > > > > > I presume that some of the authors of those > > > > documents are on this list. > > > > > Please help! [send me private e-mail if you don't > > > > want to go on record, and > > > > > I'll sanitize/anonymize it!!!!] > > > > > > > > > > As best I understand it, "choreography" is a higher- > > > > level activity involving > > > > > multiple web service invocations, > > > > whereas "coordination" is a lower level > > > > > activity that choreography or transaction > > > > processing, security, etc. would > > > > > employ in their implementations, and could be > > > > exposed as a web service > > > > > itself. > > > > > > > > > > I have this vague sense that while REST advocates > > > > didn't express much > > > > > interest in either "coordination" > > > > or "choreography", they did so for > > > > > different reasons: Coordination can be handled, in > > > > the REST view, by shared > > > > > "state" resources identified URI and accessed by > > > > HTTP; Choreography is > > > > > opposed on RESTful grounds so much as by the sense > > > > that > > > > > RDF/OWL/DAML-S/whatever would provide a better > > > > solution than SOAP-based > > > > > protocols. Does anyone else see it that way? > > > > > > > > > > Special bonus question: Is there a distinction > > > > between "orchestration" and > > > > > "choreography" in the web services context? > > > > > > > > > > [1] http://www.w3.org/Submission/2002/04/ > > > > > > > > > > [2] http://www- > > > > 106.ibm.com/developerworks/webservices/library/ws- > > > > coor/ > > > > > > > > > > > > > > > > > > > > >
Received on Wednesday, 14 August 2002 13:04:36 UTC