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.
- A 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 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.