Dependency (dictionary item)
For automation interface information about a Dependency, see Dependency (automation interface).
A Dependency models a dependency between two items. The Dependency Types are as follows:
Abstraction
Artifact
Bind
Dependency
Excludes
Interface Realization
Realization
Requires
Uses
Variability
In the Modeler panes, a short-cut symbol on the Dependency's icon indicates that the item is a stub.
You can create a standard Dependency (type of Dependency) between items of most types in a model. To create a Dependency of type Dependency, on the Dependent item's Property Pages, click the Items tab, and then in the Show Associated list select Dependees. You can then select the dependee items through the Link button. You can then change the type of a Dependency through the Options tab of its Property Pages.
You can show Dependencies between some item types on Class Diagrams and Composite Structure Diagrams.
The access permissions you have to a Dependency are determined by the access permissions of the dependent item.
* 
You can add missing Dependencies to a Class Diagram or Composite Structure Diagram by right-clicking the diagram background, and selecting Populate > Dependencies.
Abstraction Dependencies on Diagrams
On Class Diagrams and Composite Structure Diagrams:
You can show abstraction Dependencies that link shown items.
You can create an abstraction Dependency by clicking the Abstraction button on the Class Diagram or Composite Structure Diagram tab, clicking the source item and then the destination item.
On Object Diagrams, you can show abstraction Dependencies that link Instances. On an Object Diagram, you can create an abstraction Dependency by clicking the Abstraction button on the Object Diagram tab, and then clicking the source Instance and then the destination Instance.
When used on a diagram, an abstraction Dependency's notation is as follows:
For information about the View Options available for this symbol, see Abstraction view options - some diagrams.
Artifact Dependencies on Diagrams
On all diagrams:
You can show Artifact Dependencies that link Variation Points and Variants to artifacts (any items).
You can create an Artifact Dependency through any diagram: On the Variability tab, click the button, click the Variation Point or Variant, and then click the model item (artifact).
An Artifact Dependency's notation is as follows:
When creating a Product Model, an Artifact Dependency can use the parameter value of the source Variant to set a selected property of the target artifact in the Product Model that is created.
For more information about Artifact Dependencies, see Artifact dependency.
For information about the View Options available for this symbol, click here Artifact view options - all diagrams.
Bind Dependencies on Diagrams
On Class Diagrams and Composite Structure Diagrams:
You can show bind Dependencies that model template instantiation between shown items.
You can create a bind Dependency by clicking the Bind button on the Class Diagram or Composite Structure Diagram tab, and then clicking the source item and then the destination item.
When the source item is a Class, Data Type, Interface or Signal that is set up as a Template Specialization, the destination item must be a Class, Data Type, Interface or Signal that is set up as a Template.
When the source item is a Package, the destination item must be a Package that is set up as a Template.
A Bind Dependency's notation is as follows:
When used to link two Packages on a Class Diagram or Composite Structure Diagram, a bind Dependency's notation is as follows:
For information about the View Options available for this symbol, see Bind view options - class and composite structure diagrams.
Dependency type Dependencies on Diagrams
On Class Diagrams and Composite Structure Diagrams:
You can show Dependency type Dependencies that link shown items.
You can create a Dependency type Dependency by clicking the Dependency button on the Class Diagram or Composite Structure Diagram tab, and then linking the two items.
On Object Diagrams, you can show Dependencies of type Dependency that link Instances. On an Object Diagram, you can create a Dependency of type Dependency by clicking the Dependency button on the Object Diagram tab, and then clicking the source and destination Instance.
When used on a diagram, a Dependency of type Dependency's notation is as follows:
For information about the View Options available for this symbol, click here Dependency view options - some diagrams.
Excludes Dependencies on Diagrams
On all diagrams:
You can show Excludes Dependencies that link Variation Points and Variants to other Variation Points and Variants.
You can create an Excludes Dependency through any diagram: On the Variability tab, click the button, click the first Variation Point or Variant, and then click the second Variation Point or Variant.
An Excludes Dependency's notation is as follows:
For more information about Excludes Dependencies, click here Excludes dependency .
For information about the View Options available for this symbol, click here Excludes view options - all diagrams.
Interface Realization Dependencies on Diagrams
On Class Diagrams and Composite Structure Diagrams, you can show interface realization Dependencies that show how an Interface implements a Class, Data Type or Signal.
There are two presentations of an interface realization Dependency, depending on whether the target Interface is represented as a lollipop or an Interface symbol.
On a Class Diagram and Composite Structure Diagram, you cannot show an interface realization Dependency's Stereotypes, and the View Options have no affect.
For information about the View Options available for this symbol, see Interface realization view options - class and composite structure diagrams.
Target is represented as a lollipop
When used on a Class Diagram or Composite Structure Diagram in this context, an interface realization Dependency's notation is as follows:
On a Class Diagram or Composite Structure Diagram, you can create this Dependency through the Provided Interface button on the Class Diagram or Composite Structure Diagram tab. For more information, see Creating an interface.
Target is represented as an interface symbol
When used on a Class Diagram or Composite Structure Diagram in this context, an interface realization Dependency's notation is as follows:
On a Class Diagram or Composite Structure Diagram, you create this Dependency by clicking the Interface Realization button on the Class Diagram or Composite Structure Diagram tab, and then linking a Class, Data Type or Signal to an Interface.
Realization Dependencies on Diagrams
On Class Diagrams and Composite Structure Diagrams:
You can show realization Dependencies that link shown items.
You can create a realization Dependency by clicking the Realization button on the Class Diagram or Composite Structure Diagram tab, and then clicking the source item and then the destination item.
On Object Diagrams, you can show realization Dependencies that link Instances. On an Object Diagram, you can create an abstraction Dependency by clicking the Realization button on the Object Diagram tab, and then clicking the source Instance and then the destination Instance.
When used on a diagram, a realization Dependency's notation is as follows:
For information about the View Options available for this symbol, see Realization view options - some diagrams.
Requires Dependencies on Diagrams
On all diagrams:
You can show Requires Dependencies that link Variation Points and Variants to other Variation Points and Variants.
You can create a Requires Dependency through any diagram: click the button, click the requiring Variation Point or Variant, and then click the required Variation Point or Variant.
A Requires Dependency's notation is as follows:
A Requires Dependency's notation is as follows when it has a parameter or propagates the value of a parameter from one Variant to another Variant.
For more information about Requires Dependencies, see Requires dependency.
For information about the View Options available for this symbol, see Requires view options - all diagrams.
Uses Dependencies on Diagrams
On Class Diagrams and Composite Structure Diagrams, you can show uses Dependencies that show how one item requires another item.
When the target item is an Interface, there are two presentations of the uses Dependency on a Class Diagram and Composite Structure Diagram.
On a Class Diagram, you cannot show a uses Dependency's Stereotypes and the View Options have no effect.
For information about the View Options available for this symbol, see Uses view options - some diagrams.
Target is interface represented as a cup
When used on a Class Diagram or Composite Structure Diagram in this context, a uses Dependency's notation is as follows:
On a Class Diagram or Composite Structure Diagram, you can create this Dependency through the Required Interface button on the Class Diagram tab. For more information, see Creating an interface.
Target is not an interface represented as a cup
When used on a Class Diagram or Composite Structure Diagram in this context, a uses Dependency's notation is as follows:
On a Class Diagram or Composite Structure Diagram, you can create this Dependency by clicking the Usage button on the Class Diagram or Composite Structure Diagram tab, and then linking an item to another item.
Variability Dependencies on Diagrams
On all diagrams:
You can show Variability Dependencies that link a Variation Point or Alternative Choice to a Variant.
You can create a Variability Dependency through any diagram: click the Optional Variability Dependency or Mandatory Variability Dependency button, click the Variation Point or Alternative Choice, and then click the Variant.
An Variability Dependency's notation is as follows:
For more information about Variability Dependencies, see Variability dependency.
For information about the View Options available for this symbol, see Variability view options - all diagrams.
The following sections provide information about how a Dependency is used in the model. For more information about a property, item, model part or diagram, click it.
Properties
In addition to the standard properties, a Dependency has these properties:
Artifact Property (Artifact Property Name through the automation interface)
Bidirectional (Is Bidirectional through the automation interface)
Default (Default String through the automation interface)
Derivation Script (Script through the automation interface)
Derived (Script association through the automation interface)
Editable (is Editable through the automation interface)
Has Maximum Length (Has Max String Length through the automation interface)
Has parameter (Parameter association through the automation interface)
Max (Max String Length through the automation interface)
Range Max (Range End through the automation interface)
Range Min (Range Start through the automation interface)
Owned by
Most items can own a Dependency through the Dependees link.
* 
A Dependency is owned jointly by the two items it links, that is, if either item is deleted the Dependency is deleted as well. The access permissions you have to a Dependency are determined by the access permissions you have to the dependent item.
Owns
Defined in these parts of the model
Shown on these diagrams
For information about how the View Options affect the presentation of Dependencies, click a link below.
Can be linked to these dictionary items