Username:
Password:
Please type the Two words with a space between them to prove you are a real human being.
Cross references are used to reflect dependencies between items in a Cradle database. Each cross reference can have a link type to identify the type of dependency that it represents. Each cross reference can also have up to 16 link attributes that are used to:
the dependency indicated by the link. You can assign names for the link attributes and you can optionally define a separate pick-list of allowed values for each link attribute. These are all part of the project schema and are defined through Admin → Project Setup.
For example, we may have cross references with the link type SATISFIED BY between functional system requirements and use cases in which we need to specify how completely a use case satisfies the requirement. To do this, we define one of the link attributes to have the name Completeness and we define a pick-list of allowed values for this attribute:
We can create cross references and record the extent to which each use case satisfies the system requirement by storing one of the pre-defined values in the Completeness attribute of each cross reference (attribute values are in red in the example):
These cross references can be viewed, both from the system requirements to the use cases and from the use cases to the system requirements:
In Cradle we use navigations to control which cross references to and from an item are to be followed. In the example so far, we have used the system navigation Bidirectional which does not filter cross references at all.
If we want to filter the cross references so we only follow those cross references whose Completeness attribute is Full, then we define a new navigation, for example:
We don’t have to use the same name for the navigation as for the cross reference attribute, but we have done so in this example.
If we use this navigation in our views of the mapping between system requirements and use cases, then we will only see the link between system requirement 1.4 and the use case Raise Alarm, as this is the only cross reference whose Completeness attribute has the value Full :
If we want to only use cross references whose Completeness attribute is Partial, then we change the attribute in the navigation:
and refresh the views:
If we want to follow cross references whose Completeness attribute is Partial or Full, then we change the attribute value in the navigation again. Each of the cross reference attribute values in the navigation is a regular expression, so we can use the regular expression operator | which means OR, and use the value:
Partial|Full
In the navigation, like this:
When we refresh the views, we will use both sets of cross references:
We could extend this to include the TBD value as well, with an expression such as:
TBD|Partial|Full
The only difference between a navigation with this expression for the Completeness cross reference attribute and a navigation with no expression for the Completeness attribute is that the latter would also navigate through cross references that do not have any value at all in their Completeness attribute.
This technique can be used for more than one of the cross reference attributes as well, since a navigation can have expressions for none, some or all of the attributes in the cross references between items.
Back to the newsletter archive.