[Previous]
[Next]
[Contents]
[Index]
Editing MSC Diagrams
This chapter describes how to create and edit MSCs (Message Sequence Charts).
For a reference to the MSC Editor, see Using the ORCA Diagram Editors.
Table of Contents
General
Editing Functions
The MSC Editor is the graphical tool that you use to create, edit, print and store Message Sequence Charts. The MSC Editor is integrated with the SDL tools which are included in SDT. This integration provides, among other things, the facility of including MSCs into SDL systems.
The basic editing functionality that the MSC Editor provides can be summarized as:
- Creating and managing MSCs
- Appending, moving, resizing symbols
- Interconnecting symbols with lines
- Editing text
- Printing MSCs
Tracing a Simulation
You can also use the MSC Editor as a graphical trace tool, which enables the automatic generation of an MSC from a simulation. The results of the simulation will be presented in an MSC Editor window, in which each event of interest will be appended to the chart in order to build up a chart which reflects the history of the simulation. The results of a simulation can be saved in MSC-PR form and re-read by the MSC Editor.
The commands that start up the logging of MSC events, set up the scope of trace, stop the logging of events, and so on, are given to the Simulator. See Simulating a System.
Validating a System
An MSC can be used as a means to express the requirements on an SDL system. With the MSC Editor and the Validator, a powerful validation environment is provided. The basic idea is to draw an MSC using the MSC Editor and then use the Validator to check if there is a possible execution path for the SDL system that satisfies the MSC.
The commands that validate a system are given to the Validator. See Validating a System.
Supported MSC Formats
The MSC Editor supports reading MSCs stored in either:
- The MSC-GR format used by the MSC Editor (in which case the default file extension is
.msc
)
- The MSC-PR format (stored on MSC-PR files, where the default file extension is
.mpr
)
By default, the MSC Editor stores diagrams in the MSC-GR format, but it can also generate MSC-PR for a diagram.
MSC-PR files can be expressed in two forms, event-oriented1 or instance-oriented2. See the Z.120 recommendation for more information on these two alternative formats.
Compliance with ITU Z.120
MSC Diagrams
The MSC Editor supports virtually all of the ITU Z.120 language definition for MSCs, including most of the MSC'96 additions.
For information on the MSC support compared to Z.120, see Compatibility with ITU MSC.
Pagination
MSCs cannot be split into multiple pages in the same way as SDL diagrams. However, if your MSC requires more than one sheet of paper when printing, the MSC Editor takes care of splitting the chart into multiple parts to print on separate sheets of the paper size you have specified. You set up the printer pages with the Preference Manager. You can use the Window Options menu choice from the View menu to show the page boundaries on the screen.
Each part of a multiple-part chart can be printed with adjacent page markers to assist you in making up the complete chart. This feature is by default disabled and must be set as a preference or specified in the Print dialog.
Syntax Rules at Editing Time
Some of the MSC syntax rules are enforced during edit when you append symbols and lines to your MSC. These rules determine:
- Which symbols and lines are allowed to be interconnected
- Where symbols can be placed
This syntax checking cannot be disabled. All text is checked during editing.
Basic Operations
Starting the MSC Editor
In the Organizer, MSCs are handled as references, which you can add and remove from any of the Organizer chapters. There are several ways you can start the MSC Editor:
Starting on an Existing MSC
To start the MSC Editor on an existing MSC, you either use an MSC icon connected to an MSC diagram file, or add a new MSC icon for an MSC diagram.
Starting on an Existing MSC Icon
To start the MSC Editor on an existing MSC managed by the Organizer:
- In the Organizer select the icon that represents an MSC. (The MSC icon must be connected to a file.)
- Alternatively, if the MSC is associated with an SDL diagram, you can select the associated MSC link icon (looking like an MSC icon displayed in dashed form).
Figure 307
: An MSC icon and an associated MSC icon
-
Start the MSC Editor by the Edit menu choice on the Organizer's Edit menu or by double-clicking the MSC icon.
The MSC Editor window is displayed, the current MSC data is read from file and the upper left portion of the chart is displayed.
Starting on an Existing MSC, not Managed by the Organizer
To start the MSC Editor on an existing diagram that is not managed by the Organizer (i.e. not contained in the Organizer structure) you must first include it into the Organizer, before the MSC Editor can be started.
To include an existing MSC into the Organizer:
- Select the place in the Organizer where you want to add the MSC. The MSC will be added as a new root diagram after a selected document or chapter, or at the top level of a selected module.
- Select Add Existing from the Organizer's Edit menu.
- In the dialog that is opened, find and select an MSC diagram file. Set the filename filter to
*.msc
to only list MSCs. The MSC is added to the Organizer structure, and is opened in the MSC Editor.
If an SDL diagram was selected in the Organizer, an association link to the MSC is also added to the SDL diagram.
Starting on a New (Nonexisting) MSC
To start the MSC Editor on a new MSC, you either use an unconnected MSC icon, or add a new MSC icon.
Starting on an Unconnected MSC Icon
To start the MSC Editor on an existing but unconnected MSC icon:
- Select an unconnected MSC icon in the Organizer.
- Open the unconnected MSC by the Edit menu choice on the Organizer's Edit menu or by double-clicking the MSC icon. A dialog is opened:
Figure 308
: The Edit dialog
- Make sure the Show in editor option is set. Then click OK to open the MSC Editor on the new, empty diagram.
- You can also change the name of the MSC diagram before it is opened.
- To copy the contents of an existing MSC diagram file before opening the new diagram in the MSC Editor, select the option Copy existing file and enter a filename.
Starting on a New MSC Icon
To add a new MSC icon to the Organizer and start the MSC Editor on that icon:
- Select the place in the Organizer where you want to add the MSC. The MSC will be added as a new root diagram after a selected document or chapter, or at the top level of a selected module.
- Select Editors > MSC Editor from the Organizer Tools menu. A new MSC diagram icon is added to the Organizer structure, and the new diagram is opened in the MSC Editor. If an SDL diagram was selected in the Organizer, an association link to the MSC is also added to the SDL diagram.
- Alternatively, select Add New from the Organizer Edit menu. A dialog is opened. Select an MSC diagram type, enter a name in the New document name field and click OK.
Exiting the MSC Editor
- Select Exit from the File menu. If the MSC Editor holds any MSC that you have modified but not saved, a dialog is issued, prompting you to save the changes before the application terminates.
- The dialog informs you about the name of the diagram in turn to be saved. Depending on if you want to save the changes or not:
- Click Save to save changes made to the current diagram. The MSC Editor prompts you to save the next modified diagram, alternatively exits if there are no more diagrams to save.
- Click No Save to close the current diagram without saving it. The MSC Editor then prompts you to save the next modified diagram, alternatively exits if there are no more diagrams to save.
- Click Save All to save all changes made to all diagrams. Once all diagrams are saved, the MSC Editor will exit.
- Click Quit All to exit the MSC Editor without saving any MSCs.
- Click Cancel if you want to continue the MSC Editor session.
Managing MSCs
You create MSCs in the MSC Editor. Once an MSC has been created, you may include it into the structure that is managed by the Organizer, in order to take full advantage of the functionality that Telelogic Tau provides. MSCs can however be handled as separate entities.
The following operations are described in this section:
Creating an MSC
You can create MSCs in two ways.
Creating an MSC from the MSC Editor
- Select New from the File menu. A dialog is displayed.
- Enter the diagram name and type and click New.
The MSC is saved as a separate entity that is not automatically appended to the Organizer structure. You may want to add the MSC to the Organizer in order to provide an instant access to it from the Organizer. See Starting on a New MSC Icon.
Creating an MSC from the Organizer
The procedure is identical to starting the MSC Editor with no existing MSC icon. See Starting on an Existing MSC, .
Renaming an MSC
You can change the name of an MSC. The name of an MSC is reflected in the MSC heading.
To change the name, simply edit the heading.
Opening an MSC
You can open an MSC from the MSC Editor or from the Organizer.
Opening an MSC File from the MSC Editor
- Select Open from the File menu. A File Selection Dialog is issued.
- Select a file and click OK.
You can open binary GR files (*.msc
) or textual PR files (*.mpr
).
Opening an MSC from the Organizer
- Select an MSC in the Organizer.
- Alternatively, if the MSC is associated with an SDL diagram, you can select the associated MSC link icon (looking like an MSC icon displayed in dashed form, see Figure 307).
- Double-click the MSC icon.
Saving an MSC
There are several ways to save an MSC. Either you can save changes made to one specific MSC or all MSCs modified during the current session.
Saving an MSC in the MSC Editor
- Select Save from the File menu or click the quick-button for Save.
If the diagram is newly created, a file selection dialog is issued where you can specify the file to save the diagram on.
Saving All MSCs
You can make a global save of all the MSCs that are open in the current session, and that are modified:
- Select Save All from the File menu. (You will be prompted to specify a file for new diagrams that have never been saved on file.)
Saving an MSC in MSC-PR Format
You can save an MSC in the MSC-PR format. See Generate MSC PR.
Saving a Copy of an MSC
You can save the MSC you are working on into another file. You may either continue working with the original file or with the newly created copy.
Continuing Working with the New Copy
- Select Save As from the File menu. A file selection dialog is issued.
The default file name which is suggested is the same file as the original was stored on, appended with an integer suffix (1, 2,..., N) in order to build up a unique file name.
- Click OK. The MSC is copied to the specified file, the file containing the original is closed, and the window from where the save was made remains open for editing the newly created file.
Continuing Working with the Original
- Select Save a Copy as from the File menu. A file selection dialog is issued.
The default file name which is suggested is the same file as the original was stored on, appended with an integer suffix (1, 2,...,N) that guarantees a unique file name.
- Click OK. The MSC is saved on the specified file, and the window with the file from where the save was made remains open for editing.
Displaying an Opened MSC
You can display an MSC that is currently opened by the MSC Editor. (The MSC that you would like to see may reside in a window which is not on top of the screen.)
The Diagrams menu shows all MSCs (up to a maximum of the last nine to have been opened). If more than nine MSCs are open, a tenth menu choice, List All, provides access to a list dialog where all MSCs currently opened are listed.
Rearranging an MSC
The following topics are discussed:
Resizing an MSC
Resizing Automatically
When you append objects by double-clicking, the MSC Editor will automatically enlarge the MSC size when the MSC has grown so that it reaches the bottom or right of the drawing area. The drawing area is enlarged according to the value of a preference parameter.
Resizing Manually
- Display the MSC you want to resize.
- From the Edit menu, select Drawing Size. A dialog appears.
- Type in the new width and height for the MSC within the allowed range.
- Click OK. The MSC is resized accordingly.
Changing the Spacing
When the MSC Editor layouts an MSC, it makes use of a horizontal and vertical spacing parameter that affect the total height and width of the MSC. All instances and events on instances are positioned with an integer multiple of the spacing parameters.
- From the View menu, select Insert Options (see Insert Options). A dialog appears.
- Drag the sliders for a coarse adjustment. Click left or right on the slider bar for a fine adjustment.
- Smaller values will give the chart a compact appearance that may possibly make it more difficult to read. Text associated to symbols may overlap other symbols and text. Symbols may overlap each other.
- Larger values will give the chart a less cramped appearance and makes it easier to read to the price of a larger size.
- Click OK.
Managing Windows
Each MSC Editor window shows one MSC, but you may open new windows on a diagram and close windows that are no longer needed.
A newly opened window is a mirror image of the window from which the selection to open a window was made. Multiple windows may be opened and are all identical to the first. Any subsequent modifications made will reflect the same in either the original window, or any of the newly opened window(s). This option affords the possibility of viewing in more than one window, and can ideally be used in conjunction with the scaling factor when looking at a detailed MSC.
Opening and Closing Windows
You open and close windows with the New Window and Close Window menu choices in the Windows menu. If you close the last opened window, the editor will exit.
Hiding and Showing Parts of the Window
The component parts of the MSC Editor window can be shown or hidden as required. On UNIX, if they are hidden, it increases the drawing area available to be used in the creation or modification of a diagram.
To change the options for hiding and showing parts of the window, select Window Options from the View menu. These options can also be set as preferences, and some of them are available from quick-buttons:
|
- The quick buttons for text window on / off or symbol menu on / off.
|
|
- The quick button for instance ruler on / off.
|
Selecting Objects
To select an object, you click it. The object will be marked with selection squares that indicates that it is selected. A filled selection square (not a grey) means that you can resize or move the object by dragging the square.
Related topics are:
Selecting an Object That Has Associated Objects
An object may have other objects associated to it. When you select an object, all of the object's attributes are also selected:
- A symbol may have associated lines and text attributes.
- A line may have associatedtext attributes.
- A text object has no associated attributes.
Associated text, for example symbol text, symbol names and timer names, will be displayed in the text window.
When you open a condition or MSC reference symbol, the Connect dialog is also opened.
Extending, Reducing or Cancelling a Selection
The editor provides standard functions for extending, reducing and cancelling selection of objects.
Requesting Detailed Information on an Object
The info window is an auxiliary window that provides additional information about the object you have selected.
To open an info window:
- Display the diagram on which you want additional information.
- Select Info Window from the Window menu. The info window is displayed.
Adding and Removing Objects
The topics discussed in this section are:
Adding and Placing Symbols
- You can add a symbol from the symbol menu to a chart in two ways:
- Automatically, by double-clicking the symbol in the symbol menu. The symbol will be placed at a location defined according to the type of symbol and in relation to the current selection. This will be further described for each symbol type.
- Manually, by first selecting it in the symbol menu and then clicking at the desired location in the drawing area. To cancel the operation before the symbol is added, press
<Esc>
.
- Enter the symbol's text attributes.
Adjusting Objects to the Grid
The MSC Editor positions symbols and lines automatically. When you draw and move symbols and lines, each object is positioned on the closest intersection in the grid.
Inserting Space for Events
When you work on an MSC, the space available between two events on an instance axis may not be sufficient for inserting new objects on the instance axis. The MSC Editor can reorganize the MSC in order to provide the required space.
- Select the object before or after where to insert space.
|
- From the Edit menu, select Make Space. Alternatively click the quick-button for Make space for new events. The Make Space dialog is issued.
|
- Turn the appropriate radio button on, depending on if you have selected the object before or after where to insert space.
- Type in the required number of events to insert (the default is 1 event). A negative number implies removal of space.
- Click OK. The MSC is rearranged and space is created on the instance axis/axes.
Inserting Space for Events Automatically
Space is made on the instance axis when you select and add new symbols from the symbol menu or when you move symbols in the diagram.
- Select a symbol in the symbol menu and move the cursor to the place on the instance axis where you want to insert the symbol.
- Click the mouse. The MSC is rearranged and space is created on the instance axis/axes.
Removing Space between Events
- Select the object before where to remove space.
|
- Click the quick-button for Remove space between events.
|
Removing Objects
You can remove any selected object(s) this way:
- Select the objects to remove.
- Choose Clear from the Edit menu. The objects are removed.
Note:
Selecting an object to clear may implicitly select other objects. The Clear command will delete them all. See Figure 309. |
Figure 309
: Selecting an object that has associated objects
Clearing the instance Instance_1 will also remove the messages Message 1 and Message 2.
Adding a Text Symbol
To add a text symbol automatically, double-click the text symbol in the symbol menu. The text symbol will be placed at the first available position at the top of the drawing area, starting from the left of the diagram.
Adding a Comment Symbol
The following conditions apply to comment symbols in the MSC Editor:
- A comment symbol can only be connected to one symbol or event.
- Only one comment symbol may be connected to an object.
- A comment symbol cannot be connected to another comment symbol or a text symbol.
To add a comment symbol automatically:
- Select the object to which you wish to connect the comment.
- Double-click the comment symbol in the symbol menu. The comment symbol will be placed to the right of the selected object and be connected to it. (If no object was selected, the comment symbol will be placed at an empty position, and you will have to connect the symbol to an object manually, as described next.)
To add a comment symbol manually:
- Select the comment symbol in the symbol menu and place it in the drawing area.
- Click the handle on the comment symbol, and then click on the object you wish to comment. A dashed line is drawn between the objects.
Adding an Instance Head Symbol
You can add a new instance either directly by using the instance head symbol, or you can visualize an instance that is started dynamically by using the process create line. The latter approach is described in Drawing a Process Create.
To add an instance head symbol automatically:
- Select, if you wish, an object to use as reference point when positioning the instance head.
- Double-click the instance head symbol in the symbol menu.
- If an object was selected in the drawing area, the instance head symbol will be placed to the right of the selected object.
- If no object was selected, the instance head symbol will be placed on top of the MSC, at the first available location starting from the left.
- Fill in the instance head text fields. See Figure 310.
Figure 310 :
The instance head text fields
Adding an Instance End Symbol
The instance end symbol determines the end of the description of an instance within an MSC. It does not describe the actual termination of the instance. That is done with the stop symbol, see Adding a Stop Symbol.
If you position the instance end symbol above (before) a symbol or line on the instance axis, all symbols and lines below (after) that object will be deleted. This is also true when you add a stop symbol:
.
Figure 311 :
Placing an Instance End
The placement of the instance end symbol deletes message M1 and M2 but not M0.
To add an instance end symbol automatically:
- Select an object on the instance axis immediately above (before) the desired endpoint.
- Double-click the instance end symbol in the symbol menu.
All symbols and lines on the instance axis below it are deleted. The instance axis line is truncated and connected to the instance end symbol.
Adding a Stop Symbol
The stop symbol at the end of an instance body indicates the termination of that instance, as opposed to the instance end symbol, which only determines the end of the description of the instance within the MSC.
If you position the stop symbol above ("before") a symbol or line on the instance axis, all symbols and lines below ("after") that object will be deleted. See Figure 311.
To add a stop symbol automatically:
- Select an object on the instance axis immediately above (before) the desired endpoint.
- Double-click the stop symbol in the symbol menu.
- The instance axis line is truncated and is connected to the stop symbol.
Drawing a Message
To draw a message you need to know from which instance it should be issued (the source instance) and to which instance it should be sent (the target instance).
Drawing a Message Automatically
- Select the object on the source instance axis immediately above (before) the place where you wish to draw the line.
- Double-click the message symbol in the symbol menu. The MSC Editor inserts the base end of the message on the instance axis, with the target end of the message (the arrow) marked as unconnected (lost) and facing right. ( Figure 312)
Figure 312
: A lost message
- Drag the target end to (or close to) the target instance axis and release the mouse button to connect the line. If you do not connect the end of the message, it will remain unconnected (lost), indicated by the filled circle.
- Enter the message name and its parameters.
Drawing a Message Manually
- Click the message symbol in the symbol menu.
- To create a message or lost message:
Point at the source instance axis and click once (the circle indicating a found message disappears when you are close enough to an instance axis). From now on, the base of the message is fixed to the source instance. The message is displayed as lost, following the mouse motion. (See Figure 312.)
Or
To create a found message:
Point between two instance axes and click once. The base of the message is fixed at this position.
Figure 313 :
A found message with a connected end
- Point at or close to the target instance axis, and click to connect the message end to the target instance. The line is connected pushing down subsequent symbols on the instance axis when necessary.
If you do not connect the end of the message to an instance axis, it will remain unconnected (lost), indicated by the filled circle.
- Enter the message name and message parameters.
Inserting the Message Name and Message Parameters
- The message name can be entered immediately.
- Click the parameter selection rectangle (the lower one) so that it is the only selected object. Type the parameter list. The parenthesis around the parameter list are not displayed on the screen until you have entered a parameter.
Figure 314 :
The message text fields
Drawing a Message-to-self
Drawing a message-to-self is done similarly to drawing a message. (See Drawing a Message.) The source instance is however always the same as the target instance.
Adding a Condition, MSC Reference or Inline Expression Symbol
Adding a Condition, MSC Reference or Inline Expression Symbol Automatically
- Select the object immediately above (before) the place on the instance axis where you wish to insert the symbol.
- Double-click the condition, MSC reference or inline expression symbol in the symbol menu.
- Type the condition or MSC reference name, or fill in the inline expression text.
- Connect the condition to the instances. See Connecting the Condition or MSC Reference Symbol.
Adding a Condition, MSC Reference or Inline Expression Symbol Manually
- Select the condition, MSC reference or inline expression symbol in the symbol menu.
- Position the symbol at the desired point of the instance axis. The symbol is placed on the instance axis, pushing down subsequent symbols on the instance axis when necessary.
- Type the condition or MSC reference name.
- Connect the symbol to the instances. See Connecting the Condition or MSC Reference Symbol.
Connecting the Condition or MSC Reference Symbol
In the MSC Editor you can connect the condition or MSC reference symbol to individual instances or perform a global connection.
Figure 315
: A condition symbol
When a symbol straddles an instance axis to which it is not connected, the axis line is drawn through the symbol. In Figure 315 the condition symbol with name Condition_name is connected to the instances a and c, but not to the instance b.
To connect a condition or MSC reference to a number of instance axes:
- Select the symbol to connect.
- Select Connect from the Edit menu. The Connect dialog is opened:
Figure 316 : Connecting an instance
- Select the instances to be connected in the instance list. The instances that will be connected are highlighted.
- Click Connect to connect the condition or MSC reference symbol to the instances you have selected.
- Click Global to connect the condition or MSC reference symbol globally to all instances in the list.
Drawing a Timer
Drawing a timer is done similarly to drawing a message line. The source instance is always the same as the target instance.
Drawing a Timer Automatically
- Select the object on the instance axis immediately above (before) the place where you wish to draw the timer.
- Double-click the timer symbol in the symbol menu. The MSC Editor inserts the timer.
- Drag the target end and release the mouse when you have reached the point where the timer should expire.
- If required, change the status of the timer by selecting Status from the Edit menu (see Changing the Status of a Timer).
- Enter the timer name and its parameters.
Drawing a Timer Manually
- Click the timer symbol in the symbol menu.
- Point at or close to the instance axis. Click once. The base of the timer is fixed and the timer is displayed as a vertical line, following the mouse motion.
- Point at or close to the point on the axis where the timer should expire and click to connect the timer end. The timer end is connected and the timer is assigned the status timeout.
- Enter the timer name and parameters.
Drawing a Separate Timer Manually
- Draw a timer.
- Select one of the outermost selection squares (i.e. the selection squares not on the instance axis) and drag it so that the vertical extension of the timer disappears.
- Enter the timer name and parameters.
Changing Between Timer and Separate Timer
- Change a timer to a separate timer by selecting one of the outermost selection squares (i.e. the selection squares not on the instance axis) and drag it so that the vertical extension of the timer disappears.
- Change a separate timer to a timer by selecting a selection square and dragging it vertically.
Inserting the Timer Name and Timer Parameters
- The timer name can be entered immediately.
- Click the parameter selection rectangle (the lower one) so that it is the only selected object. Type the timer parameters. The parenthesis around the timer parameters are not displayed on the screen until you have entered a parameter.
Figure 317 : The timer text fields
Changing the Status of a Timer
Z.120 specifies two appearances for the timer symbol, depending on whether the timer has expired (i.e. timeout) or whether the timer is reset.
- Timeout -- A timer expires.
- Reset -- A timer is stopped.
- Implicit reset -- A timer is assigned a new value while active.
To change the status of a timer:
- Select the timer.
- From the Edit menu, select Status. The Timer status dialog is issued.
Figure 318
: Setting the timer status
- Click a radio button and then click OK. The status of the timer is changed accordingly.
Changing the Status of a Separate Timer
The status of a separate timer:
- Set -- A timer is activated but has not yet expired.
- Timeout -- A timer expires.
- Reset -- A timer is stopped.
To change the status of a timer:
- Select the timer.
- From the Edit menu, select Status. The Timer status dialog is issued.
Figure 319
: Separate Timer status
- Click a radio button and then click OK. The status of the timer is changed accordingly.
Adding an Action Symbol
An action symbol corresponds to the SDL task symbol. You may choose to fill it with formal or informal expressions.
To add an action symbol automatically:
- Select the object on the desired instance axis immediately above (before) the place where you wish to insert the symbol.
- Double-click the action symbol in the symbol menu. The symbol is placed on the instance axis, pushing down subsequent symbols when necessary.
- Fill in the action text.
Drawing a Process Create
Drawing a Process Create Automatically
- Select the object on the source instance axis immediately above (before) the place where you wish to draw the process create.
- Double-click the create process line in the symbol menu. The editor draws the create process line and places the instance head to the right of the source instance axis.
- Enter the create parameters and the created instance head text fields (see Figure 310).
Drawing a Process Create Line Manually
- Click the process create symbol in the symbol menu.
- Click once on the source instance axis. The base of the process create line is fixed to the source instance. The line is displayed as a dashed line.
- Click at the location where you wish to place the head of the created instance. The instance head and instance axis are automatically drawn.
- Enter the create parameters and the created instance head text fields.
Adding a Coregion Symbol
The coregion allows you to specify unordered events on an instance. A coregion covers for instance the practically important case of two or more incoming messages where the ordering of consumption may be interchanged.
- Select the coregion symbol in the symbol menu.
- Click once to designate the start point of the symbol at the instance axis.
- Click a second time on the same instance axis to designate the end point.
Collapsing and Decomposing Diagrams
You can create new high level and low level diagrams of your original diagrams. The topics discussed are:
Collapsing a Diagram
You can collapse the selected instance axes in a diagram to get an overview of the diagram.
- Select two or more instance axes.
- Select Collapse from the Edit menu.
Two diagrams are created from the original diagram. One displaying the collapsed instances and one displaying the collapsed diagram.
See Expand/Collapse for more information.
Decomposing a Diagram
You can create a new diagram of a segment of the original diagram.
- Select an instance axis.
- Select Decompose from the Edit menu. A dialog is opened.
- Enter or change the name of the decomposed instance and click OK.
The instance in the original diagram will be marked as decomposed. A decomposed diagram is created and it is displayed in the Organizer.
See Decompose for more information.
Moving Objects
You can move one or several objects on the chart. Move several objects by first selecting them by framing or by using the shift buttons. The various procedures are described below:
Moving a Text Symbol
You can move the text symbol freely across the drawing area.
- Drag the symbol to the new location.
Moving a Comment Symbol
You can move the comment symbol freely across the drawing area.
- Drag the symbol to the new location. The symbol and the line are redrawn accordingly.
The orientation of the symbol may change and the connecting line is redrawn as required:
Figure 320
: Moving the comment symbol.
Moving the comment symbol as shown in Figure 320 mirror flips the symbol in order to provide the shortest possible connection line.
If you move the object that the comment symbol is connected to, the comment symbol moves with it.
Moving an Instance Head Symbol
The instance head symbol can be moved horizontally or vertically.
- Drag the instance head to the new location.
- If you induce a horizontal movement, the entire instance axis and the connected objects are redrawn accordingly.
- If you induce a vertical movement, only the instance head is moved. The objects on the instance axis are not affected.
Restrictions
The following restrictions apply when moving an instance head vertically:
- You can move the instance head symbol upwards until it reaches the limit of the drawing area. See (1) in Figure 321. No other symbols or lines are affected by this operation.
- An instance head symbol that belongs to a process create line cannot, however, be moved above the head of its parent instance axis.
- You can move the instance head symbol downwards until it reaches the instance end symbol or until it reaches the first event (condition, action, message, timer, stop or process create) that is connected to its instance axis. No other symbols or lines are affected by this operation. See (2) in Figure 321
Figure 321 :
Moving the instance head and the instance end symbols
The bold arrows show the limitations applied on the leftmost instance head and instance end.
Moving an Instance End Symbol and a Stop Symbol
You can move the instance end symbol and stop symbol vertically but not horizontally. The instance end is moved horizontally when you move the instance head or the instance axis horizontally.
You can move the symbol vertically:
- Down until it reaches the bottom of the drawing area. See (3) in Figure 321.
- Up until it reaches the last event (action, condition, message, timer or process create) that is connected to the instance axis (or reaches the instance head symbol). See (4) in Figure 321.
Moving an Instance Axis
You can move the instance axis line left or right by dragging it with the mouse. All connected messages and process create lines remain connected as they were initially. The instance head and instance end or stop symbols will be moved accordingly. See (1) and (2) in Figure 322.
Figure 322 :
Moving lines
To move an instance axis:
- Drag the instance to the new location. The entire instance axis and the connected objects are redrawn accordingly.
Moving a Message
You can move a message vertically to any position within the limits set by the instance head symbol and the instance end or stop symbol of the source and target instances.
Moving the Entire Message
The base and the end of the message remain connected to the original source and target instances. The related message name and message parameters will be moved accordingly. See (3) and (4) in Figure 322.
You can also move the entire message to another pair of instance axes.
To move a message:
- Drag the message to the desired position. The message and its text attributes are redrawn accordingly.
Moving the Base or End of a Message
You can move the base or end of a message up or down along the axis that it is connected to by pointing to and dragging the appropriate (base or end) selection square to the new position. The opposite selection square will remain fixed.
The end (message input) cannot be moved above the base (message output).
Moving a Message-to-self
You can move a message-to-self up or down along its instance axis or between instance axes by dragging it as you would move a message. See Moving a Message.
Moving the Base or End of a Message-to-Self
Use the same procedure as for a message to move the end (message input) or base point (message output) of a message-to-self (see Moving the Base or End of a Message).
Moving a Condition or MSC Reference
You can move the condition and MSC reference symbol vertically along an instance axis to which it is connected; between the instance head and instance end, stop, or the bottom of the drawing area. To connect or disconnect instances to the symbol, use the Connect dialog on the Edit menu.
To move the condition and MSC reference symbol:
- Drag the symbol to the new location on the instance axis. The symbol is redrawn at its new location.
Moving an Inline Expression Symbol
You can move the inline expression symbol vertically along the instance axis.
- Click the left or right side of the inline expression and move it.
If the inline expression contains an involved axis, the inline expression cannot be moved below the instance end or stop symbol of that axis.
Moving a Timer
You can move a timer up or down along its instance axis or between instance axes by dragging it as you would move a message. The related timer name and parameters will be moved accordingly. See Moving a Message.
Use the same procedure as for a message to move the end (the time-out or reset (stopped) arrow) or base point (the set symbol) of a timer (see Moving the Base or End of a Message).
Moving an Action Symbol
You can move the action symbol vertically along the instance axis between the instance head and instance end, stop or the bottom of the drawing area or to another instance axis.
Moving a Process Create
To move a process create line along its source instance axis, either move the process create line orits associated instance head symbol upwards or downwards. See Moving an Instance Head Symbol.
Moving a Coregion Symbol
You can move a coregion up or down along its instance axis by dragging it as you would move a message. See Moving a Message.
If you point close to the start or end point of the coregion and start dragging the mouse, the coregion will be resized accordingly.
Reconnecting Objects
Some of the objects that are managed by the MSC Editor can be reconnected:
Reconnecting a Comment Symbol
A comment symbol can be reconnected to a different object or disconnected completely from all objects.
- Drag the comment symbol connection handle towards the new connection point. The existing connection line is erased and a new line that follows the position of the mouse pointer is drawn.
- Click the connection point on the new object. The connection line is fixed to the new object.
Disconnecting the Comment Symbol
- Select the dashed line to the comment symbol and delete it.
Reconnecting a Message
You can reconnect the base or the end of a message to another instance axis:
- Drag the base or end of the message towards the desired instance axis. As soon as you move the mouse the message is unconnected.
- When the mouse pointer is close to the new instance axis, release the mouse button. The message is now reconnected.
Reconnecting a Message-to-self
You can reconnect the base or end of a message-to-self to another instance axis. This changes the message-to-self to an ordinary message.
- Drag the end (or the base) of the message-to-self away from the instance axis. As soon as you move the mouse, the line is displayed as an ordinary message line. Continue dragging the end of the line up or down to the new connection point and release the mouse button.
Redirecting a Message
When you draw a message, the message goes from the source instance to the target instance. It is possible to redirect a message (i.e. change its direction):
- Select the message to redirect.
- Select the Redirect command on the Edit menu. The message is redrawn in the opposite direction, and the text attributes are positioned accordingly.
Messages-to-self and overtaken messages cannot be redirected.
In Figure 323 two messages are shown. The message sent first is consumed after the message sent last, i.e. it is overtaken.
Figure 323
: An overtaken message
Reconnecting a Condition or MSC Reference Symbol
To connect or disconnect instances to the symbol:
- Use the Connect dialog on the Edit menu, see Connect. (Remember, at least one instance must be left connected.)
Reconnecting a Process Create
You can reconnect the base of a process create from one instance axis to another in a similar way as when reconnecting a message (see Reconnecting a Message).
Resizing Objects
All objects that are managed by the MSC Editor are automatically resized according to the size of the text. However, you can manually resize a text or comment symbol.
Resizing a Text or Comment Symbol
There are two methods of resizing the text and the comment symbol:
- Select the Expand/Collapse command on the Edit menu to toggle between maximum and minimum size.
- Double-click the symbol, which causes the symbol to toggle between its minimal and maximal size.
Printing Objects
It is possible to print only selected parts of an MSC.
- Select the objects to be printed.
- Select Print from the File menu.
- Click the Setup button.
- Select the option Print only selected symbols.
Figure 324 : Printing only selected objects
- Adjust, if necessary other Print options and click the OK and Print buttons.
See also Printing from the MSC Editor.
1. Event oriented MSC-PR describes the MSC using the order in which the events occur, i.e. starting with the top of the diagram and downwards, providing the feeling of a global event order.
2. Instance oriented MSC-PR describes the MSC on an instance by instance basis. The feeling of a global event order within the MSC is lost.
[Previous]
[Next]
[Contents]
[Index]