You can view certain UML relationships between model elements,
specifications, and implementations.
The traceability feature includes the following UML relationships:
- Abstraction*
- Abstraction with <<Trace>> stereotype*
- Abstraction with <<Derived>> stereotype*
- Abstraction with <<Refine>> stereotype*
- Aggregation
- Association
- Association Class
- Composition
- Dependency*
- Deploy*
- Directed Association
- Extend*
- Generalization*
- Include*
- Implementation*
- Manifestation
- Permission
- Realization*
- Substitution*
- Template binding
- Usage
- Usage with <<Call>> stereotype
- Usage with <<Create>> stereotype
- Usage with <<Instantiate>> stereotype
- Usage with <<Responsibility>> stereotype
- Usage with <<Send>> stereotype
* Only these relationships are considered when reporting circular
trace relationships.
Implied dependency relationships
Implied dependency
relationships are traceability links that are derived from the elements in
a model when no model element represents the dependency. For example, if a
sequence diagram shows a message from one life object to another. The message
between the life objects implies a static dependency between the model elements
that the life objects represent.
An implied dependency between two UML
elements occurs if any of the following situations are true:
- Both model elements are in the same package.
- Each model element is in a different package and the package of the source
model element has a Permission, Import Package, or Import Element relationship
to the package of the target model element.
- Each model element is in a different package and the package of the source
model element has an Import Element, or Permission relationship to the target
model element.
Note: If one of the above situations is not true, an access
violation error is listed in the Problems view. A model
element that accesses a model element in another package without a Permission,
Import Package, or Import Element relationship to the package of the target
model element is an access violation that might not be resolvable.
The
following use cases have implied dependency relationships:
- A UML BehavioredClassifier has an interaction with lifelines that represent
UML elements. A Refine Implied relationship is detected from each UML element
to the interaction.
- UML message exists from lifeline1 to lifeline2. A Usage Implied relationship
is detected from the element that is represented by lifeline1 to the element
that is represented by lifeline2.
- A UML class, interface, or artifact has an attribute. The attribute is
of type classifier. A Usage Implied relationship is detected from the class,
interface, or artifact to the classifier.
- A UML class, interface, or artifact has an operation. The operation has
a classifier return type or parameter type. A Usage Implied relationship is
detected from the class, interface or artifact to the return classifier and
to each classifier parameter.