W3C home > Mailing lists > Public > www-ws-arch@w3.org > October 2002

RE: Definition of Choreography

From: Mathews, Walden <walden.mathews@tfn.com>
Date: Sun, 20 Oct 2002 22:13:25 -0400
Message-ID: <1373D6342FA1D4119A5100E029437F64045EEE23@clifford.devo.ilx.com>
To: "'Jianhua Zhu '" <jzhu@silkvalleytech.com>, "'www-ws-arch@w3.org '" <www-ws-arch@w3.org>


>My questions relating to using finite state machines to model
>choregraphies:

>1) A simple question for clarification: by allowing the state machine to
>   transition to two states (state2 and state2, presumably in parallel)
>   upon the same input, you are suggesting an NFA model (as opposed to a
>DFA),
>   correct?

No, not in parallel.  The two states are both reachable from the
current state, but only one (if any) will be reached "next".

>2) Based on the dicussion of not wanting to expose internal business
>logic
>in
>   a choreography, I am safe to assume that the choreography defined by
>   the finite state machine is meant to be a public process.  My
>question is
>   on the boundary between a public process and a private process, is it
>(the
>   boundary) always clear cut... assuming that the private process is
>also
>modeled
>   as a finite state machine, are there cases where the states of a
>public
>   process and the states of an internal process are intertwined, i.e.,
>needing
>   to transition from a public process state to a private process state
>and
>   vice versa?

Yuck, that's a mess.  I hired a cabinet maker once to make a curved
cabinet for me.  He proved incompetent to the task.  On one of my visits,
he invited me to make one of his implementation decisions.  That's just
bad business.  The clearer the contract, the less you should find that
kind of intertwining.

Let me be clear that internal process and external process obviously
have to intersect in order to do useful work; I'm merely saying that
good services does not mix them in a way that clients get caught up
like that.  That's my opinion.

>Other questions:

>3) In this discussion thread, some are for, and some against, having a
>formal
>   description of choregraphies (public processes), and they being
>separate
>from
>   private processes.  This question is for the "for"s, isn't the BPSS
>of
>ebXML
>   precisely for the purpose of defining public processes?  If that is
>not
>sufficient
>   for the purpose of choregraphy, what are missing? why?

I don't know.  I was just following a thread in which a proposal was
made concerning modeling "choreography" as state transitions, and since
I've had some experience with that kind of model and no one else
provided any examples, I threw something out.  I meant no harm. ;-)

>4) Shouldn't message formats (those of payload, not the headers or
>evelops)
>be included
>   in a choreography definition?  Aren't they equally important (if not
>more) as the
>   sequencing of messages?

Maybe as part of event discrimination.  I have no real opinion on this.

Walden Mathews
Received on Sunday, 20 October 2002 22:13:30 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 3 July 2007 12:25:09 GMT