Software Ideas Modeler offers tools for following elements of a sequence diagram:
- Execution Occurence
- Call Message
- Reply Message
- Send Message
- Create Message
- Delete Message
- Self Message
- Recursive Message
- Destroy Occurence
- Duration Message
- Lost Message
- Found Message
- Interaction Operand
- Opt Fragment
- Alt Fragment
- Loop Fragment
- Sd Fragment
- Par Fragment
- Neg Fragment
- Interaction Use
- State Invariant
- Duration Constraint
Lifeline is an element which represents an individual participant (object, actor, component or process) in the interaction. It is rendered as box with a name and vertical line. The line shows time-ordered sequence of messages (from top to bottom).
An actor represents an external participant.
An execution occurence represents a time span from a lifetime of a participant when an operation is executed.
Synchronous Call Message
Synchronous call sends a message from a source lifeline to a target lifeline while all other calls of the source lifeline are blocked. Message can be associated with a class operation. Synchronous call message is displayed as a line with a solid arrow pointing from a calling lifeline to a called lifeline.
Assynchronous Call Message
Asynchronous call sends a message from a source lifeline to a target lifeline. Other calls of the source lifeline are not blocked, the next message is called immediately. Message can be associated with a class operation. Asynchronous call message is displayed as a line with an open arrow pointing from a calling lifeline to a called lifeline.
Reply message sends a result of execution started by call message. Reply message is displayed as a dashed line with an open arrow pointing from a replying lifeline to a calling lifeline.
Create message instances a new object. Create message is displayed as a dashed line with an open arrow pointing from a creating lifeline to a head of newly created lifeline.
Delete message dispose an object. It is displayed as a line with a solid arrow pointing from a lifeline which calls a delete action to a lifeline which will be deleted. Message is labeled with «destroy» stereotype. The deleted lifeline has to be ended with X symbol (destruction occurrence).
Self message is a call message which is sent from a lifeline to itself.
Recursive message is a special case of a self message. It models recursive calls.
A found message is a message with a known participant of receiving event, but with no or unknown sending participant.
A lost message is a message with a known participant of sending event, but with no or unknown receiving participant.
State Invariant represents a constraint which has to be true in time of execution. It is displayed as rounded rectangle.
Combined Fragment combines interaction operands using an interaction operator. Interaction operator of fragment can be one of these values:
- alt - abbreviation for alternatives. It defines alternative paths of execution.
- opt - abbreviation for option. It defines optional parts of execution.
- par - abbreviation for parallel.It defines parts which can be executed parallely. Operands can be called in any order, but the order of calls inside operands has to be preserved. Operands can be freely interleaved.
- critical - abbreviation for critical region. It represents atomic calls which cannot be interleaved with another calls.
- loop - defines iteration in execution.
- neg - abbreviation for negative. It defines calls for invalid or incorrect states of system.
- assert - abbreviation for assertion.
- strict - strict sequencing
- seq - weak sequencing