W3C home > Mailing lists > Public > www-ws-desc@w3.org > December 2006

Re: Message Exchange Patterns State Diagrams

From: Patric Fornasier <patric.fornasier@gmail.com>
Date: Mon, 18 Dec 2006 12:01:32 +1100
Message-ID: <375ebf0b0612171701j26ac34adr595a3b6b07a7d84f@mail.gmail.com>
To: "paul.downey@bt.com" <paul.downey@bt.com>
Cc: ryman@ca.ibm.com, www-ws-desc@w3.org, www-ws-desc-request@w3.org

Hi Arthur and Paul,

Thanks for your replies.

> (Arthur)
> I think it is clearer to show the interactions using UML Sequence Diagrams.

I'm not sure if a Sequence Diagram is the right tool to model the
patterns. Sequence Diagrams are very specific and can only show one
execution path of a pattern at a time, whereas state diagrams allow to
capture multiple valid exchange patterns in a concise way.

Imagine a simple pattern such as the "in-out" for example. The out
message can be either a normal SOAP message containing application
data or it can be a SOAP fault. In a sequence diagram you can not
capture conjunctions (SOAP message OR SOAP fault) and hence you'd have
to draw 2 sequence diagrams, each one capturing the very specific
case. Of course for modeling a bit more complex patterns such as
in-optional-out, you'd end up with even more specific sequence
diagrams.

> (Paul)
> I though they showed a particular implementation,
> also a service might have other states, events
> and exchange messages to other parties.

No, they don't show a particular implementation. They represent the
perspective of ONE service. Of course a service can communicate with
different parties at the same time and thus be at different states at
the same time, because it will have a different state machine instance
for each session!

> (Paul)
> I might model my service very differently but still
> conform to a particular MEP.

I'm not sure if I can follow you on this. What is the criteria then
that you conform to a particular MEP if not the exchanged messages?!?
Could you maybe give me an example of what you mean?

Cheers,
patric
Received on Monday, 18 December 2006 01:01:51 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:58:43 GMT