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