SysML Sequence Diagram Modeling Guidelines
The Sequence Diagram describes the flow of control between Actors and Systems (Blocks) or between Parts of a System.
This diagram represents the sending and receiving of messages between the interacting entities called lifelines, where
Time is represented along the vertical axis.OMG Systems Modeling Language (OMG SysML™) Version 1.6.
The following guidelines apply:
- Destruction Events
- Destruction Events do not exist in the target tool.
- The Publisher transforms these elements to the closest approximation which is a Delete Message.
- A Delete Message in MagicDraw cannot exist inside an Operand in the same way a Destruction Event could. The only method to transform this functionaly would be to break out the Operands in the source tool prior to publish.
- Diagram Frame Settings
- The following guidelines apply to the diagram frame:
- Diagram Frame is not shown by default due to automatic sizing, justification and routing functionality.
sd
is the abbreviated diagram type (Show Abbreviated Type Property + Show Diagram Type Property)
Interaction
is the Context type (Show Context Type Property)
DiagramName
is the Context Name (Show Context Name Property)
DiagramName
is the Diagram Name (Show Diagram Name Property)
- The Context (Type and Name) between Rhapsody and MagicDraw are different
- A SequenceDiagram is owned by an Interaction in MagicDraw
- Execution Occurrence
- The
properties.ini
file in the release folder includes a property setting to turn on and off the display of Execution Occurrences.
SYSML_SEQUENCE_DIAGRAM.SHOW_ACTIVATIONS
to false Default Setting
SYSML_SEQUENCE_DIAGRAM.SHOW_ACTIVATIONS
to true
- When set to true some Message to self lines are distorted.
- Reference Block
- There are differences in the capabilities between the source and the target tool for reference blocks.
In Rhapsody, a ref
block shows all the elements in that area.
In Magicdraw, a ref block hides every elements (such as ConditionMark, etc…) that are in the same area.
Rhapsody
MagicDraw
- Time Interval/Time Constraints
- In a SequenceDiagram, a DurationConstraint is a constraint attached between two elements of a SequenceDiagram.
In Magicdraw, you can create a DurationConstraint only on prexisting elements, so it is drawn between two messages. Them we have the DurationConstraint constraining both messages.:
In Rhapsody, you can create a TimeInterval anywhere in the Sequence. It is not attached to a message, and can be drawn closed, or far from a message:
The Publisher will create a self message that will hold the DurationConstraint at the same position as the TimeInterval.