Sequence Diag.

The graphical editor dedicated to the Sequence Diagram has been specified from the UML 2.0 Superstructure Specification document. Feel free to bring your own remarks about the way UML concepts were represented in this diagram : we could discuss about that on the user mailing list .

1. Creation of the diagram

1.1. From the wizard

You can use the creation wizard to create a new sequence diagram. Select the corresponding Template to initialize the model.

selectTemplate

The root element of the UML model is a Model and it contains a Package that contains a Collaboration that finally contains an Interaction as its children element. The diagram is then linked with the Interaction.

1.2. From an existing diagram

The sequence diagram is necessarily associated with an Interaction model object.

modelHierarchy

Then you can create a new diagram by selecting an Interaction node in the Outline : " Right Click > Add Diagram " and select " Interaction Diagram ". Do not forget that the Interaction should alse be contained in a Collaboration model object. You can create this model hierarchy in the outline by invoking the necessary " Create Child " actions.

2. Editing of the Diagram

2.1. Basic editing

2.1.1. Lifeline

To create a new Lifeline, select the 'Lifeline' creation tool in the palette and then click on the diagram. The name of the Lifeline is editable directly in the editor or in the Properties View. The Lifeline notation element is placed across the top of the diagram. Lifelines represent either roles or object instances that participate in the sequence being modeled.

2.1.2. Execution

To create a new Execution , select the 'Execution' creation tool in the palette and then click on an existing Lifeline of the diagram. Note that you can add an Execution above an existing Execution.

overlayedExecution

2.1.3. Call(synch or asynch) and Reply Message

You can create such a Message connection between two Executions.

The creation of a such Message has three steps using the mouse :
  1. Select the corresponding 'Call' or 'Reply Message' creation tool in the palette.
  2. Click on an Execution, this is the source of the message.
  3. Click on another Execution or on a Lifeline (the target Excecution will be created at the same time), this is the target of the message.

The message that is being sent to the receiving object represents an operation/method that the receiving object's class implements and it is associated with a CallEvent.

2.1.4. Signal

You can create such a Message connection between two Lifelines.

The creation of a such Message has three steps using the mouse :
  1. Select the 'Signal' creation tool in the palette.
  2. Click on a Lifeline, this is the source of the message.
  3. Click on another Lifeline, this is the target of the message.

2.1.5. Create Message

TBD.

2.1.6. Delete Message

You can create a such Message connection between two Lifelines.

The creation of a such Message has three steps using the mouse :
  1. Select the 'Delete Message' creation tool in the palette.
  2. Click on a Lifeline, this is the source of the message.
  3. Click on another Lifeline, this is the target of the message.

A Delete Message is associated with a DestructionEvent.

2.1.7. Combined Fragment

TBD.

2.2. Advanced editing

2.2.1. Lifeline Creation

After creating a Lifeline, you have to associate it with a Classifier through the Properties View and the 'represents' feature.

lifelineRepresents

You can either choose an existing Classifier, or create a new by clicking on the "New" button. A Dialog is prompted, you have to specify the following informations :


2.2.2. Message particularities

The label that is displayed in the diagram is either the signature of the Operation associated with the message, or the name of the Message when no signature is referenced.

messageSignature

The Kind of a Message


3. Diagram Example

sequenceDiagram
Limitations :

_______________________________________

By Jacques LESCOT, Anyware Technologies

September, 1 2006