Hello,

According to the UML specification, a Sequence Diagram does not specifies the complete message order. Order of fragments is fully specified only along a single Lifeline, hence, when two events on two different lifelines are not connected, you can not know which occurs first :

For example, if two messages cross each other on 2 Lifelines like this :
[L1] [L2]
  |       |
  |  X  |
  |       |
You only know that One message is sent from a lifeline before the other is received (for both Lifelines). You have no clue which one is sent first and which one is received first, whatever the vertical locations are.

As said in the specification, a Sequence Diagram does not define a single trace, but a set of valid traces. This is the main reason why implementing an efficient and elegant Sequence Diagram modeler is so hard.

Yet, you can find some interesting information in the order of "fragments" in an Interaction or in an Interaction Operand. Indeed, this order must be the one of a valid trace (though I can not find back where it is written in the spec). Hence, following the fragments order should give you one of the possible orders.

See "14.3.17 Lifeline" in UML Superstructure specification, at the Semantics part. See "14.3.11 Interaction" in UML Superstructure specification for more information on traces
(http://www.omg.org/spec/UML/2.4.1/Superstructure/PDF/)

Of course, what I describe is the global philosophy or Interaction diagrams. But there are still some local modifications to this philosophy, like with GeneralOrdering elements or in a "strict" Combined Fragment...

Best regards,
Vincent.

Le 24/10/2011 20:57, Topcased user list where issues are discussed a écrit :
Looking at general ordering, it seems that the order of only two message ends (event occurrences) are preserved.

I will need a way to reflect the order of all of the messages.

The general ordering idea inspired me to look at combined fragments. The "seq" and "strict" combined fragments specify order visually. I wondered if the XMI code would record the messages and message order for the fragment. I created a seq, and then a strict, fragment that surrounded the messages of a sequence diagram. This plan didn't work though. The XMI for the combined fragment showed the lifelines covered by the fragment, but not the messages.

If anyone has any ideas on how UML/SysML specifies message order in XMI, I would appreciate it. Thanks Bernard for helping me out.

--
Ebonie Williams
Master IT
UNC Charlotte Graduate


_______________________________________________
Topcased-users mailing list
[email protected]
http://lists.gforge.enseeiht.fr/cgi-bin/mailman/listinfo/topcased-users

_______________________________________________
Topcased-users mailing list
[email protected]
http://lists.gforge.enseeiht.fr/cgi-bin/mailman/listinfo/topcased-users

Reply via email to