Search This Blog

Wednesday, June 12, 2013

Abstraction relationships

Abstraction relationships

An abstraction relationship is a dependency between model elements that represents the same concept at different levels of abstraction or from different viewpoints. You can add abstraction relationships to a model in several diagrams, including use-case, class, and component diagrams.
In an abstraction relationship, one model element, the client, is more refined or detailed than the other, the supplier. The different types of abstraction relationships include derivation, realization, refinement, and trace relationships.
All abstraction relationships can connect model elements that are in the same model or in different models. For example, if you develop an analysis model and then a design model, you can connect the models with a refinement relationship pointing from the analysis model to the design model. This relationship indicates that the design model provides a different level of abstraction of the same system.
Abstraction relationships do not usually have names and appear as a dashed line with an open arrow pointing from the detailed model element to the general model element.
As the following figure illustrates, when you create an abstraction relationship, the «abstraction» keyword appears beside the connector.
An abstraction relationship between two packages
You can assign the following stereotypes to an abstraction relationship to identify the type of abstraction in a model:
  • «derive»
  • «realize»
  • «refine»
  • «trace»

No comments:

Post a Comment

Blog Archive

About Me

An seasoned developer, architect and with some Team Leading exposure, offering full project life cycle experiences within multi cultural, multi National environments and within differing business streams and all primarily on a .Net platform.