- From: Christopher B Ferris <chrisfer@us.ibm.com>
- Date: Thu, 15 Aug 2002 12:54:01 -0400
- To: www-ws-arch@w3.org
- Message-ID: <OFAB42CE7E.6EB90FF1-ON85256C16.005BED24-85256C16.005CC191@rchland.ibm.com>
Martin, I believe that was my point exactly. Cheers, Christopher Ferris Architect, Emerging e-business Industry Architecture email: chrisfer@us.ibm.com phone: +1 508 234 3624 Martin Chapman wrote on 08/15/2002 12:25:39 PM: > Not quite the same in the real world I think. When I go to the theatre, the dancers have a > choreographer, but this person is not controlling the live performance i.e. it's up to the > individuals to follow previous learned instructions set by the choreographer. > An orchestra on the other hand (typically) has a conductor present who controls the music. So one > is controlled at "run time" the other is not. > > Martin. > -----Original Message----- > From: www-ws-arch-request@w3.org [mailto:www-ws-arch-request@w3.org] On Behalf Of Christopher B Ferris > Sent: Wednesday, August 14, 2002 4:16 AM > To: Sanjiva Weerawarana > Cc: edwink@collaxa.com; www-ws-arch@w3.org; www-ws-arch-request@w3.org > Subject: Re: "Orchestration" and "Choreography" > > http://www.dictionary.com/search?q=orchestration > http://www.dictionary.com/search?q=choreography > > One refers to music, the other dance:) Aside from that, they are both > about arrangement. I think that the one distinction that can be drawn > is that orchestration is also a form of control. The term choreography > makes no mention of control. > > I seem to recall that the one point that some of my previous colleagues > considered important is that a collaborative business process (one that > spans multiple domains of trust) cannot/should not be centrally controlled. > I think that this is what Edwin is getting at, and personally, I too think > it is an important distinction. > > Cheers, > > Christopher Ferris > Architect, Emerging e-business Industry Architecture > email: chrisfer@us.ibm.com > phone: +1 508 234 3624 > > Sanjiva Weerawarana wrote on 08/14/2002 04:18:35 AM: > > > > > 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 Thursday, 15 August 2002 12:54:37 UTC