Implementation links and endpoints are important concepts in the SOMT method (described in SOMT Methodology Guidelines). This chapter describes the tool support for implinks and endpoints. The following topics are covered:
ORCA1 and SDT supports creating and maintaining links between different objects in a system. Such links are used to show relations between objects in different documents. Objects that may be linked are:
The link concept in ORCA and SDT is designed to support the SOMT method, further described in the volume SOMT Methodology Guidelines. In SOMT, an important relation is that one object can be seen as an implementation of another object. For this reason, links between objects are often referred to as implementation links, or implinks. For instance, a textual object in the requirement analysis may be implemented as an object class in the system analysis, and later as a process type in the design model.
Implinks are the result of a design decision taken during the development of a system. Using implinks enables traceability between the different models and phases, so that the usage of a particular object or concept can be followed from requirements all the way down to code. Another important aspect of implinks is that they facilitate consistency checks between the different models.
A link has two endpoints, one at each of the objects that are linked together. Endpoints can be created for objects without creating a link, i.e. endpoints are entities separate from links. When a link is created, endpoints are created automatically, if they do not already exist. It is possible to have any number of links connected to an endpoint. Endpoints and links can be created from the Organizer and the editors.
Links are bidirectional, i.e. they can be traversed (followed) in both directions. Even so, a link has a "default" direction, defined when the link is created, to indicate the intended direction. This means that an endpoint is either a logical "from" endpoint, or a logical "to" endpoint.
A link has a name and optionally a comment. The name indicates the type of link, e.g. "implementation link", and the comment is used to describe the link.
Information about endpoints and links is stored in a central link file (extension .sli
), which is referred to from the Organizer's system file. This approach makes it easy to get an overview of existing endpoints and links, and to make consistency checks. The link file is saved whenever the system is saved. The link file, and its defined links, are managed by a dedicated tool, the Link Manager (see Tool Support and Operations).
Information about endpoints are also stored in the individual documents. However, link information is only stored in the link file.
To make it easier to use the endpoint and link features in a multiuser environment, the concept of a local link file is provided. This is a personal link file for one user, storing all changes made to endpoint and link information compared to the global file, the master link file. A controlled merge operation is provided to update the master link file with the local link file information. These operations are available as services in the Telelogic Tau Public Interface (see Link File Services).
For examples on how to use this feature, see Endpoint Handling with RCS.
By default, endpoints are marked in a special way in the editors and in the Organizer. The markers are slightly different depending on whether or not any links are connected to the endpoint.
In the SDL Editor and the ORCA diagram editors, the endpoint marker is a small triangle in the upper left corner of the object's enclosing rectangle. The triangle is filled if the endpoint has any links connected to it.
Figure 140 : Endpoints with and without links
|
For lines in the SDL, OM. SC and HMSC diagrams, the marker appears on the name or signal list associated with the line. In SDL diagrams, it is also possible to create endpoints on other text elements associated with the line.
Figure 141 : Endpoints on lines and text attributes
|
For lines in MSC diagrams (messages, timers, create requests), the marker normally appears at the "start" end of the line.
Figure 142 : Endpoints on MSC lines
|
You can hide the endpoint markers by changing the option Show Link Endpoints in the Editor Options in the View menu, or by setting the editor preference ShowLinks to off.
Note: Endpoint markers are never shown when printing a diagram. |
In the Text Editor, endpoints are shown as underlined text, regardless if they have links connected to them or not. The endpoint text can be shown as normal text by changing the option Show Link Endpoints in the Editor Options in the View menu, or by setting the Text Editor preference ShowLinks to off.
In the Emacs editor (on UNIX), endpoints without links are by default shown as blue, underlined text, whereas endpoints with links are shown as bold, blue, underlined text. The default font faces can be changed; see Type Faces for Endpoints.
In MS Word (in Windows), endpoints without links are shown as blue, underlined text, whereas endpoints with links are shown as bold, blue, double underlined text.
Endpoint text is always shown as normal text when printing a text document.
In the Organizer, the endpoint marker appears in the same way as in the graphical editors, i.e. a triangle in the upper left corner of the document icon.
Figure 143 : Endpoints in the Organizer.
|
The endpoint markers are always shown in the Organizer, and they are also shown when printing the Organizer window.
Operations on endpoints and links are supported in the Organizer, the diagram editors, the Text Editor and the Link Manager.
In the editors, the possible operations are identical and can be found in the Link submenu of the Tools menu (see Link Commands in the Tools Menus). The operations include:
In the Organizer, the available operations in the Tools menu are limited to creating and deleting an endpoint, and opening the Link Manager.
In the editors, it is also possible to open the Entity Dictionary from the Window menu. The Entity Dictionary lists all endpoints in the system, together with the documents making up the Organizer structure. It is mainly intended for re-use of entity names, but also supports creating links. See The Entity Dictionary.
The Link Manager shows all endpoints and links in the system. It supports the following main operations:
It is not possible to create and delete endpoints in the Link Manager. For more information about the Link Manager, see The Link Manager.
There are basically three different ways to create links:
The purpose of the Entity Dictionary is to provide easy access to names of entities being used in the system, and a possibility to reuse these names in all parts of the system. The entities that the Entity Dictionary manage are all the link endpoints defined in the system, as well as all diagrams, documents and modules found in the Organizer structure.
The Entity Dictionary is accessible from the SDL Editor, the ORCA diagram editors and the Text Editor. The names in the Entity Dictionary are available for reuse in all texts and graphical objects found in the graphical diagrams. However, the Text Editor does not support reuse of texts in text documents.
The Entity Dictionary is also used for creating links between objects and existing endpoints when using the ORCA and SDT editors.
The Entity Dictionary is implemented as a modeless dialog window. There is not a single Entity Dictionary window, but one window for each type of diagram (SDL, MSC, OM, SC, HMSC and text). All Entity Dictionary windows contain exactly the same information, and all the windows are updated when a change is made. The reason for having an Entity Dictionary window for each editor type is that operations in the window apply to the object currently selected in the respective editor.
Since there might be several editor windows showing different diagrams/documents, there is a need to define the current window. This is the editor window that will be associated with the Entity Dictionary, and all operations will act on the current window. The current window is the editor window where the user last performed a menu command or a mouse click detected by the editor.
The editor associated with an Entity Dictionary window is known as the parent editor. The editor type is reflected in the window title of the Entity Dictionary window, thus making it possible to distinguish the different Entity Dictionary windows, and to determine the parent editor that the Entity Dictionary operations will affect.
The Entity Dictionary Window can be opened from all of the editors through the use of the menu choice Entity Dictionary in the Window menu.
Figure 144 : The Entity Dictionary window
|
The window lists all the defined link endpoints, following the structure of diagrams and files in the Organizer. By default, every item in the Organizer is repeated, and the indentation of items is also repeated. All Organizer items and link endpoints listed in the window are known as entities in the Entity Dictionary.
Below each Organizer item, the link endpoints defined in that item are listed with indentation:
For an Organizer item that contains both sub-documents and link endpoints, the endpoints are listed first, followed by the sub-documents.
It is possible to hide the Organizer items to display only the link endpoints; see The Filter Dialog for more information.
The information in the Entity Dictionary is updated whenever a link endpoint is created, changed or cleared in any of the editors or the Link Manager, or when the Organizer structure is modified.
Each entity has an associated icon that identifies the type of the entity, i.e. the type of the endpoint object. Entities that already have an established icon in the Organizer or the Index Viewer use the same icon in the Entity Dictionary, with a few exceptions. The icons specific to the Entity Dictionary are:
The type and name of an entity is shown to the right of the icon. For entities containing a name, such as diagram symbols, this name is listed. For other symbols and text fragments, the first 25 characters are shown.
The cases when a diagram reference symbol, a diagram heading, or an Organizer document is an endpoint will result in duplication of information in the Entity Dictionary. To distinguish between such endpoints and the structure of Organizer documents, the following textual notations are used:
Figure 144 shows examples of these textual notations.
The Entity Dictionary window does not contain a menu bar. Operations are available as quick buttons or as popup menus.
The following quick buttons are special to Entity Dictionary window.
|
Close
Close the Entity Dictionary window. |
|
Create Link
Create a link between the endpoint selected in the Entity Dictionary and the object selected in the parent editor. The quick button is dimmed if not two such selections are present. If the parent editor is a Text Editor, the selected text must be an already existing endpoint. The Create Link dialog is opened; see Figure 147. |
|
Insert
Insert the text in the selected symbol in the Entity Dictionary at the insertion point in the object selected in the parent editor. The quick button is dimmed if not two such selections are present. If text is selected in the parent editor's text window, this text is instead replaced. This button is not available in the Text Editor's Entity Dictionary. |
|
Replace
Replace the text content of the object selected in the parent editor with the text in the selected symbol in the Entity Dictionary. The quick button is dimmed if not two such selections are present. This button is not available in the Text Editor's Entity Dictionary. |
|
Undo
Undo the most recent text operation in the Entity Dictionary (Insert, Replace, Undo). The quick button is dimmed if the selection in the parent editor has changed to another object. This button is not available in the Text Editor's Entity Dictionary. |
|
Filter
Filter the information listed in the Entity Dictionary. See The Filter Dialog for more information. |
|
Show Editor
Raise the parent editor window. |
The following tables lists the available operations in the popup menus of the Entity Dictionary window.
Appears when no symbol is selected and the menu is invoked in an area not containing any symbols.
Appears if an Organizer document symbol is selected, or the menu is invoked where a document symbol is selectable.
Expand |
Expands a collapsed symbol one level down. |
Expand Substructure |
Expands the entire substructure of the symbol. |
Collapse |
Collapses the substructure of the symbol. |
Appears if an endpoint symbol is selected, or the menu is invoked where an endpoint symbol is selectable.
Show Definition |
Brings up an editor window, or the Organizer window, where the endpoint is selected. |
If there is a selection in the parent editor and a symbol in the Entity Dictionary is double-clicked, the text of the symbol is inserted in the parent editor. A double-click thus corresponds to using the Insert quick button; see Insert. This functionality is not available in the Text Editor's Entity Dictionary.
The Filter dialog is opened when the Filter quick button is pressed in the Entity Dictionary window. The Filter dialog controls what is to be shown in the Entity Dictionary window.
Figure 145 : The Filter dialog
|
This section describes the link-related commands that are available in the Link submenu in the Tools menu of the Organizer and all ORCA and SDT editors.
Note: None of these commands are possible to Undo. The Organizer only supports a subset of the link commands. |
The Link submenu contains the following menu choices:
This menu command creates a link between the object selected in the editor and the object selected in the Entity Dictionary. If two such objects are selected, the Create Link dialog is opened (see Figure 147). The editor object does not need to have a link endpoint defined to be able to create a link, i.e. only one of the objects need to be present in the Entity Dictionary. It is possible to create a link to itself.
Note: In the Text Editor, the selected text must already be a link endpoint. It is not possible to create links to text that is not an endpoint. |
If no object is selected in the editor, or no endpoint is selected in the Text Editor, the menu command is dimmed.
If no object is selected in the Entity Dictionary, or the Entity Dictionary has not been opened, a warning dialog is issued (see Figure 146) and the Entity Dictionary window is opened or raised. When the dialog is closed and the instructions given in it are followed, the Create Link dialog is opened.
Figure 146 : The Create Link warning
|
The Create Link dialog looks like this:
Figure 147 : The Create Link dialog
|
If the Entity Dictionary window was opened because of the Create Link command, it will stay up until the user explicitly closes it.
This menu command defines the currently selected object as a link endpoint. The endpoint is immediately added to the Entity Dictionary and the Link Manager. The object is marked as a link endpoint in the invoking tool -- an editor or the Organizer. (See Visualization of Endpoints and Links.)
This command is dimmed if not exactly one object that can be defined as a link endpoint is selected, or if the object already is an endpoint.
This command is also available in the popup menus of all editors and the Organizer.
This menu command traverses an existing link from the currently selected object. This is done by opening the tool where the other link endpoint is defined (an editor or the Organizer) and selecting the other endpoint object.
This command is dimmed if more than one object is selected, or if the selected object has no links defined.
This command is also available in the popup menus of all editors and the Organizer, as Traverse Link.
If there is only one link defined from the object, that link is traversed, as described above. If more than one link exists, a dialog showing all links is opened and one of the links has to be selected.
Figure 148 : The Traverse Link dialog
|
The dialog presents a list of all links to and from the object in the following form:
From
| To
<type and name of linked object>, <file name>The type and name of the linked object follow the same notation as in the Entity Dictionary; see Textual Notation. The file name of the document where the linked object is found contains a path if the file is not in the Organizer's Source Directory.
This menu command opens or raises the Link Manager window. If exactly one object is selected and this object is a link endpoint, this endpoint will be selected and made visible in the Link Manager. This command is never dimmed.
For more information about the Link Manager, see The Link Manager.
This menu command removes one or more links to or from the currently selected object. However, the link endpoints are preserved. This command is dimmed if more than one object is selected, or if the selected object has no links defined.
Removing a link cannot be undone. |
A dialog showing all links is opened and one or more of the links has to be selected.
Figure 149 : The Clear Link dialog
|
The links to and from the object are listed in the following form:
From
| To
<type and name of linked object>The list of links is a multiple selection list, in which one or more links can be selected. When a selection is made in the list, the Clear button becomes active.
To remove links, select the links in the list and click the Clear button. A link is removed from both endpoint objects, but the link endpoints themselves are not removed. If either of the endpoint objects had only this link defined, and no others, the mark of the object changes to indicate that the object is only an endpoint with no links defined. For information on how to remove an endpoint, see Link > Clear Endpoint (below).
This menu command removes the link endpoint from the currently selected object, and subsequently all links connected to the endpoint.
This command is dimmed if more than one object is selected, or if the selected object is not an endpoint.
If the selected object has no links connected to the endpoint, the endpoint is removed without further user interaction. The endpoint is removed from the Entity Dictionary and the Link Manager. The object is no longer marked as a link endpoint in the invoking tool (an editor or the Organizer).
If the selected object has one or more links connected to the endpoint, a warning dialog is opened, since the operation of removing a link cannot be undone:
The command Paste As is available in the Edit menu of the Organizer, the SDL Editor and the ORCA editors (not for SC or HMSC diagrams).
The Paste As command is used to paste a copied object as another object, and at the same time create an implementation link between the copied and pasted objects. It is also possible to paste a cut object, but in this case no link can be created.
It is possible to paste the object into an editor different from the one the object was copied from. This requires a transformation of the object according to the user's choice.
Paste As supports the SOMT method, which governs the possible transformations for a particular object. See the volume SOMT Methodology Guidelines, for information and advice on when to use a particular transformation.
The process of using Paste As consists of the following steps:
<Esc>
. If the pasted object is a textual description or an Organizer document, the object is placed at the text cursor or the current selection.The Paste As dialog is opened when Paste As is selected from the Edit menu.
Figure 150 : The Paste As dialog
|
<Esc>
cancels the paste.The Link Info dialog is opened when the Link Info button is pressed in the Paste As dialog.
Figure 151 : The Link Info dialog
|
The table below presents all the possible object type combinations for the copied and pasted object in the Paste As operation. The preselected choice shown when the Paste As dialog is opened is shown in bold face.
Note: Not all object types are possible to Paste As in all situations. Especially in the SDL Editor, the available object types depend on which diagram type the Paste As is performed in. |
The details of the specific object transformations are described in the following subsections. Please refer to the above table to see which tools that support a particular object transformation.
Some general transformation details are:
An OM class may be represented and defined by several class symbols in the OM diagrams. This is the case if more than one class symbol with exactly the same class name is found within the OM scope (the diagram itself or the diagrams in the same Organizer module).
When an OM class is pasted, all class symbols defining the class in the scope are considered. It is the combined set of attributes and operations in the class symbols that will be used in the transformation to the pasted object.
In the following descriptions of object transformations, we use the two class symbols shown in Figure 152 (within the same scope) as a generic example. Regardless of which class symbol is copied, both class symbols are considered in the transformations.
Figure 152 : Two class symbols in the same scope
|
Paste As object, with description | Resulting objects and diagrams |
---|---|
Class symbol The pasted class is simply a copy of the merged class. |
|
Object symbol The pasted object contains the merged attributes of the class. The object is named `a' followed by the class name. |
|
System Type diagram Block Type diagram Block diagram In these cases, only a reference symbol is created, not any contents of the diagram. |
|
Process Type diagram Service Type diagram A reference symbol is created, as well as the referenced diagram with some contents. The keyword "{async}" after an operation means that it will be transformed using a signal interface. A gate named `G' followed by the class name, and a signal list named "SL" followed by the class name, is added. The keyword "{sync}" after an operation means that it will be transformed using an RPC interface. The procedure diagram is created with an additional heading symbol containing FPAR and RETURNS statements for parameters and return type. If no keyword is given, signal interface is the default for operations without return value, and RPC interface is the default for operations with return value. NOTE: Text symbols containing the declarations of the signal list and the remote procedures must be created by a separate Paste As operation, usually in a diagram at a higher level. See Text symbol with SDL interface (below). |
|
Process diagram Service diagram The same transformation as for process type and service type, but the signal interface is added as a SIGNALSET statement in the additional heading symbol. NOTE: Text symbols containing the declarations of the signal list and the remote procedures must be created by a separate Paste As operation, usually in a diagram at a higher level. See Text symbol with SDL interface (below). |
|
Text symbol with SDL interface A text symbol is added, containing declarations for the signal list and/or remote procedures, as described for process type and service type above. |
|
Text symbol with NEWTYPE A text symbol is added, containing a NEWTYPE definition. Operator diagrams are added for all operations, with additional heading symbols containing FPAR and RETURNS statements for parameters and return type. If an operation does not have parameters, a parameter is inserted with the class name as type. The class name is also used as return type if an operation does not specify any. |
|
In the Organizer, the system diagram is added in the same way as for the Add New operation, i.e. the diagram is added as a new root diagram at the current selection. The diagram is also opened in the SDL Editor. |
|
C++ class definition The link to the class definition is inserted inside a C++ comment. |
// class ClassName class ClassName { public: void Oper1(); ReturnType Oper2(T1 P1); void Oper3(T1 P1, T2 P2); private: Attr1; Type Attr2; }; |
C struct definition The link to the struct definition is inserted inside a C comment. |
/* struct ClassName */ typedef struct { Attr1; Type Attr2; } ClassName; void Oper1(ClassName *); ReturnType Oper2(ClassName *, T1 P1); void Oper3(ClassName *, T1 P1, T2 P2); |
IDL module Only the class name is used. The link to the module is inserted inside an IDL comment. |
// module ClassName module ClassName { }; |
IDL interface Operations marked with keyword "{async}" will get the string The link to the interface is inserted inside an IDL comment. |
// interface ClassName interface ClassName { attribute Attr1; attribute Type Attr2; oneway void Oper1(); ReturnType Oper2(T1 P1); oneway void Oper3(T1 P1, T2 P2); }; |
ASN.1 sequence The link to the sequence is inserted inside an ASN.1 comment. |
// ClassName SEQUENCE ClassName ::= SEQUENCE { Attr1, Attr2 Type } |
In a similar way as when pasting an OM class, all object symbols of exactly the same class in the scope are considered. It is the combined set of attributes in the object symbols that will be used in the transformation to the pasted object.
In addition, the class that the object is an instance of is also considered, if it exists. That is, it is the combined set of attributes and operations in the class symbols and the objects symbols that will be used in the transformation.
In the following descriptions of object transformations, we use the object symbol shown in Figure 153 as a generic example. In addition, the object is assumed to be located in the same scope as the two class symbols shown in Figure 152.
|
Paste As object, with description | Resulting objects and diagrams |
---|---|
Class symbol The pasted class uses the class name, attributes and operations from the copied object and the object's class symbols. |
|
Object symbol The pasted object uses the name and attributes from the copied object and the object's class symbols, but without attribute values. |
|
Block instance diagram Process instance diagram Service instance diagram The pasted diagram becomes an instance diagram (indicated in the Organizer). |
|
System diagram Works in the same way as when pasting an OM class. The name of the diagram will be |
See System diagram. |
In the following descriptions of object transformations, we use the text fragment "Text Fragment" as a generic example.
Some of the commands in the Edit menu in the editors are affected when operating on objects that have endpoints with connected links.
If objects with endpoints are cut or copied, the endpoints and any existing links to the objects are saved in the clipboard.
When pasting (by using the ordinary Paste command) an object with an endpoint, but without connected links, the endpoint is pasted together with the object without further user interaction.
When pasting objects that also have links connected to their endpoints, the following dialog appears:
|
If you delete an object that has links, the link information will be destroyed and cannot be restored. Therefore, when you want to cut or clear objects with links, a warning dialog will be issued where it is possible to cancel the operation.
The Link Manager manages endpoints and links in a system. The Link Manager handles the link file, containing information about the endpoints and links in a system. The syntax of the link file is described in The Link File.
For an overview of link concepts, see Link Concepts and Overview. In addition, the following concepts are used in the Link Manager:
The Link Manager's window is shown in Figure 155. The window title contains the name of the loaded link file, and is appended by an asterisk `*' if the link file is modified.
In the window, the endpoints in the system are presented graphically using icons. The links between the endpoints are represented as lines between them, with an arrow stating the direction of the link. The Link Manager can present different views of the endpoint/link information; these are described in Presentation Views and Link Trees.
Figure 155 : The Link Manager window
|
At the top of the drawing area, the name of the current link file is presented under a "Information from" heading. If several link files are merged, they are all listed here until the next Save operation. If a local link file is used (see Local Link File), both the master link file (read only) and the local link file are listed.
If the information in the Link Manager is not yet saved, "on-line editing" will be displayed to indicate that endpoints have been created in an editor or in the Organizer.
The main part of the drawing area displays all endpoints and links as link trees. Every endpoint is a root node, and the associated links and endpoints are added to that root. Link trees can be collapsed, and endpoints and links can be hidden.
Below the link trees, some statistics are presented under a "Statistics" heading. The number of endpoints and links is displayed, including the number of hidden endpoints and links, as in the following example:
Statistics: 10 endpoints (2 not shown) 4 links (1 not shown)
The Link Manager uses the same icons for endpoints as the Entity Dictionary. See Entity Icons for more information.
The icons can have different layouts indicating the state of the associated endpoint:
|
Normal
The normal state of the icon. Information is not modified. |
|
Invalid
An endpoint is marked invalid if, after a Check Endpoints operation, it is not present in the document where it was supposed to be. |
|
Dirty
The endpoint is modified or newly created from an editor, but the link file is not yet saved. |
|
Dashed
The endpoint is already displayed on a higher level in the same tree, or it belongs to the TO group after a Consistency Check. |
The endpoints are added as new root symbols below the last link tree as they are created. The order of the icons can be changed by using the quick buttons Move Down and Move Up.
The Link Manager has two main methods of displaying endpoints, using an Endpoint view or an Entity view. There is also a Consistency view, used for presenting the results after a consistency check has been performed (see Consistency Check). When there is no selection in the drawing area, the name of the currently displayed view is shown in the status bar.
In Endpoint view, a link tree looks like this:
Figure 156 : Link tree in Endpoint view
|
To the right of each endpoint icon, the following information identifying the endpoint is displayed (depending on the options set in Options > Endpoint):
For each link in a link tree, the name of the link is displayed above the endpoint information, in bold face. The link name display can be switched on or off by the menu choice Options > Link.
The link comment, if it is used, is shown directly below the link name, in italics. The comment display can be switched on or off by the menu choice Options > Link.
In Entity view, all endpoints representing the same entity are collected into one symbol, and the number of endpoints represented by that entity is presented to the right of the name of the entity, preceded by an asterisk `*'. Also, instead of displaying the filename the endpoint resides in, the scope the entity resides in is displayed. The scope is either a filename or a module. An example of an endpoint in Entity view:
Figure 157 : An entity in Entity view
|
Link Manager operations on endpoints also apply to entities. If there is a difference in the behavior of a menu choice depending on the view, this will be pointed out in the descriptions of the operations.
Double-clicking on an icon invokes the menu choice Show in Editor. In Entity view, if the selected entity corresponds to several endpoints, they will be selected one at a time for each double-click.
This section describes the menu bar of the Link Manager window and all the available menu choices.
The menu bar contains the following menus:
The File menu contains the following menu choices:
The menu choices are described in File Menu, except Print, which is described in The Print Dialogs in ORCA, SDT and the Organizer, and Merge, which is described below.
This menu choice opens an existing link file, and merges the contents of that file with the information already in the Link Manager. It works in a similar way to Open, but keeps the current endpoint and link information.
If two links are equal (i.e. they have the same source and destination endpoints and the same name) but they have different link comments, the new comment will consist of the old comments separated by a newline character.
The Edit menu contains the following menu choices:
This menu choice highlights an endpoint. Highlighting an endpoint is the first step to replace an endpoint or create a link. The highlighting is presented as a frame around the highlighted endpoint.
The first time this menu choice is used, the selected endpoint will be highlighted. The second time this menu choice is used for the same endpoint the highlighting will be removed. There is at most one highlighted endpoint. If another endpoint already was highlighted, the highlighting is moved to the selected endpoint.
This menu choice replaces an endpoint with another endpoint. This operation is useful if an endpoint has become Invalid and the user has found a replacement endpoint that all links should be moved to.
One endpoint is defined with the Highlight Endpoint menu choice, the other endpoint is defined by the selection.
All links going to or from the replaced endpoint will be updated to go to or from the other endpoint instead. If the replaced endpoint was invalid, the user is given the option to delete the replaced endpoint.
The following dialog appears:
Figure 158 : The Replace Endpoint dialog
|
<endpoint>
<endpoint>
This menu choice creates a link between the highlighted endpoint and the selected endpoint.
One endpoint is defined with the Highlight Endpoint menu choice, the other is defined by the selection.
The Create Link dialog appears, see Figure 147.
This menu choice displays information about the link above the selected endpoint; the name, the comment, and the direction of the link. All these attributes can be edited.
The following dialog appears:
Figure 159 : The Link Details dialog
|
The dialog works in the same way as the Create Link dialog, see Figure 147.
This menu choice clears (deletes) the link above the selected endpoint. Only the link will be cleared, not the associated endpoints. You will be asked to confirm or cancel the deletion.
The View menu contains the following menu choices:
This menu choice expands the endpoint structure tree one level down for the selected endpoint. If any endpoints one level down are hidden, they will still be hidden after this operation. (Use the Filter menu choice to show or hide endpoints).
The menu choice is dimmed if:
This menu choice expands the endpoint structure tree the whole way down for the selected endpoint. If there is no selection, all endpoint trees will be expanded.
This menu choice collapses the selected endpoint, i.e. the sub symbols are not shown after this operation. A collapsed endpoint has a small triangle drawn below the icon to indicate that it is collapsed. If there is no selection, everything will be collapsed.
This menu choice sets options for controlling the appearance of the Link Manager window.
The following dialog appears:
Figure 160 : The Window Options dialog
|
This menu choice sets options for controlling the appearance of links in the drawing area.
The following dialog appears:
Figure 161 : The Link Options dialog
|
This menu choice sets options for controlling the appearance of endpoints in the drawing area.
The following dialog appears:
Figure 162 : The Endpoint Options dialog
|
This menu choice is used for filtering out endpoints and/or links which will not be shown. The filter is set in a modeless dialog, i.e. the Link Manager continues working without waiting for the dialog to be closed.
If an endpoint is hidden, all links associated to it will be hidden. If a link is hidden, the endpoints associated to it will still be visible.
The following dialog appears:
Figure 163 : The Filter dialog
|
Issues a dialog where the scale may be set.
The Tools menu contains the following menu choices:
This menu choice searches for a text string in endpoints or links.
The searching is based on ASCII character matching. All texts related to the endpoints and links are searched, i.e. endpoint types and names, link names and comments.
The search will start from the selected endpoint, or from the first endpoint if nothing is selected.
The following dialog appears:
Figure 164 : The Search dialog
|
This menu choice searches again for the same text string as the last performed search.
The menu choice is dimmed if a search has not yet been done.
This menu choice is used for checking the consistency between a group of documents (the FROM group) and another group of documents (the TO group).
In Entity view, there are two types of consistency checks to choose from. The following dialog appears:
Figure 165 : The Link Check/Entity Match dialog
|
The above dialog is not opened in Endpoint view, in which case a link check always is performed.
First, the documents in the FROM group must be selected. The following dialog appears:
Figure 166 : Selecting the FROM group
|
In the list of Organizer documents and modules, one or several documents must be selected. Selecting/deselecting a module will select/deselect all the documents in that module. Selecting/deselecting an SDL system will select/deselect all documents in that system. Individual documents in the module/system can then be selected/deselected without affecting the other documents.
When all FROM documents are selected, the Continue button is used to close the dialog and continue to the next dialog.
Then, the documents in the TO group must be selected. The following dialog appears:
Figure 167 : Selecting the TO group
|
The list of Organizer documents and modules works in the same way as when selecting the FROM documents. When all TO documents are selected, the Check button is used to close the dialog and start the consistency check operation.
The result of the consistency check is presented as a special view in the drawing area. This Consistency view only shows endpoints/entities from the two defined groups of documents. Endpoints/entities from the FROM group are shown in the normal way, and endpoints/entities from the TO group are shown as Dashed symbols.
The Consistency view is only showing links going from the FROM group of entities/endpoints to the TO group. After a link check, the links shown are the "real" links, as defined by the user. After an entity match, the links shown are only temporary links created by the Link Manager to indicate matching entities. The link name for such links are "Matching" and the link comment is "(Temporary link)".
By selecting Endpoint or Entity view in Options > Window, the view will return to the selected normal view. By pressing the quick button Show Endpoints or Entities, the view will return to the previously used view.
This menu choice checks if there are endpoints in the Organizer or in the editors that do not exist in the Link Manager, or if there are invalid endpoints in the Link Manager. This menu choice could be used to remove any inconsistencies between the document endpoints in the system and the information in the Link Manager.
The information in the saved files is used for the checking, so if there are unsaved changes in an editor, these will not be taken into account in the checking. If there are any documents in the Organizer which have not been saved, the following dialog appears:
Figure 168 : Check Endpoints warning
|
First, the Organizer and all documents in the system are checked. The following dialog appears:
Figure 169 : The first Check Endpoints dialog
|
In the upper multiple selection list, all endpoints that were found in the Organizer, but do not exist in the Link Manager, are listed. In the lower multiple selection list, all endpoints that were found in the documents belonging to the system, but do not exist in the Link Manager, are listed. It is possible to select one or more of the endpoints in the lists, with the purpose of adding them to the Link Manager.
Then, the endpoints in the Link Manager are checked. If any non-existing endpoints are found, they will be marked as Invalid. The following dialog appears:
Figure 170 : The second Check Endpoints dialog
|
In the upper multiple selection list, all Link Manager endpoints which reside in files that have been deleted are listed. In the lower multiple selection list, all Link Manager endpoints that no longer are present in the files they are supposed to be in are listed. It is possible to select one or more of the endpoints in the lists, with the purpose of deleting them from the Link Manager.
This menu choice will show the symbol which corresponds to the selected endpoint in an editor.
In Entity view, each entity can represent more than one endpoint. In that case, the menu choice will be replaced by Show 1 in Editor, Show 2 in Editor, etc.
If there are more than nine endpoints, the menu choice Show in Editor will invoke the following dialog, where it is possible to select the appropriate endpoint:
Figure 171 : The Show in Editor dialog
|
There are two popup menus available in the Link Manager:
In addition to the standard keyboard accelerators, described in Keyboard Accelerators, the following accelerators can be used in the Link Manager:
Except for some of the general Telelogic Tau quick buttons (see General Quick-Buttons) the following quick buttons are included the Link Manager.
|
Show Endpoints or Entities
Switches between the Endpoint and the Entity views; see Options > Window. |
|
Consistency Check
Performs a consistency check operation; see Consistency Check. |
|
Highlight Endpoint
Highlights the selected endpoint; see Highlight Endpoint. |
|
Create Link
Creates a link between the highlighted and the selected endpoint; see Create Link. |
|
Switch Link Direction
Changes the order of the links going to or from the (root) endpoint; see Options > Link. |
|
Show or Hide Unused Endpoints
Toggles between showing and hiding endpoints that are not linked; see Filter. |
|
Move Down
Moves the selected (root) endpoint one step down in the Link Manager view. |
|
Move Up
Moves the selected (root) endpoint one step up in the Link Manager view. |
The Link Manager maintains a link file that contains a list of all endpoints and links in the system. The link file is a line-oriented, human-readable text file, with the default file suffix .sli
.
The file has the following format:
<link file> ::= <endpoints> <links> $ <endpoints> ::= [ENDPOINTS] <endpoint>* <endpoint> ::= <endpoint id> <endpoint format> <endpoint id> ::= <integer>A unique integer identifying the endpoint in the link file.
<endpoint format> ::= `(' <format> , <file name> (, <anchor> | $) `)' <name> <type> <format> ::= SDL | OM | MSC | TEXT | WORD <file name> ::= <string>Name of the document file.
<anchor> ::= <string>A unique string identifying the endpoint in the document. If the endpoint refers to the whole file, i.e. the endpoint is created in the Organizer, the anchor is set to an empty string ("").
<name> ::= <quoted string>The name of the endpoint, in quotes.
<type> ::= <integer>Type of document.
<links> ::= [LINKS] <link>* <link> ::= <endpoint id> <endpoint id> <link name> <link comment> <link name> ::= <quoted string>The name of the link, in quotes.
<link comment> ::= <quoted string>The link comment, in quotes.