Previous UML Classes Table of Contents UML Packages Next


7.3.1 Abstraction

Dependencies


*Generalizations

   Dependency (from Dependencies ) on page 61

*Description

   An abstraction is a relationship that relates two elements or sets of elements that represent the same concept at different levels of abstraction or from different viewpoints. In the metamodel, an Abstraction is a Dependency in which there is a mapping between the supplier and the client.

*Attributes

   No additional attributes

*Associations

   • mapping: Expression[0..1] A composition of an Expression that states the abstraction relationship between the supplier and the client. In some cases, such as Derivation, it is usually formal and unidirectional. In other cases, such as Trace, it is usually informal and bidirectional. The mapping expression is optional and may be omitted if the precise relationship between the elements is not specified.

*Constraints

   No additional constraints

*Semantics

   Depending on the specific stereotype of Abstraction , the mapping may be formal or informal, and it may be unidirectional or bidirectional. Abstraction has predefined stereotypes (such as «derive», «refine», and «trace») that are defined in the Standard Profiles chapter. If an Abstraction element has more than one client element, the supplier element maps into the set of client elements as a group. For example, an analysis-level class might be split into several design-level classes. The situation is similar if there is more than one supplier element.

*Notation

   An abstraction relationship is shown as a dependency with an «abstraction» keyword attached to it or the specific predefined stereotype name.