Dependency (UML)
   HOME

TheInfoList



OR:

In the
Unified Modeling Language The Unified Modeling Language (UML) is a general-purpose, developmental modeling language in the field of software engineering that is intended to provide a standard way to visualize the design of a system. The creation of UML was originally m ...
(UML), a Dependency is a relationship that shows that an element, or set of elements, requires other model elements for their specification or implementation.OMG Unified Modeling Language, Superstructure, Version 2.4.1 The element is ''dependent'' upon the independent element, called the supplier. Two or more elements in this relationship are called
tuple In mathematics, a tuple is a finite ordered list (sequence) of elements. An -tuple is a sequence (or ordered list) of elements, where is a non-negative integer. There is only one 0-tuple, referred to as ''the empty tuple''. An -tuple is defi ...
s. In the UML, this is indicated by a dashed line pointing from the dependent (or client) to the independent (or supplier) element. The arrow representing a Dependency specifies the direction of a relationship, not the direction of a process.


Standard predefined dependencies

UML The Unified Modeling Language (UML) is a general-purpose, developmental modeling language in the field of software engineering that is intended to provide a standard way to visualize the design of a system. The creation of UML was originally m ...
- defined dependencies include : * «call2» UML2: The client (an operation) may call the supplier (an operation) * «create» UML2: The client (a classifier) may create instances of the supplier (a classifier) * «derive» UML2: The client (e.g., attribute value, link) may be computed from the supplier(s) * «instantiate» UML2: Operations of the client (a classifier) may create instances of the supplier (a classifier) * «permit» UML2: Obsolete * «realize» UML2: Obsolete * «refine» UML2: The client element(s) are at a "later" semantic level than the supplier(s) * «send» UML2: The client (an operation) sends the supplier (a signal) * «substitute» UML2: The client element can replace (under some circumstances) the supplier * «trace» UML2: The client elements "trace" to the suppliers. Typically used for levels of requirements * «use» UML2: The client element somehow "uses" the supplier


Differences with UML link

A UML link is run-time relationship between instances of classifiers, while a dependency is a model-time relationship between definitions. A typical uni-directional link requires the one instance to know about, and thus depend, upon the other, but this is not required. A uni-directional link only requires the possibility of navigation not dependency. Likewise, a bi-directional link requires that both instances may traverse to each other, but this also does not require dependency. However, after the traversal of the association, if some property of the target instance's definition is accessed, such as an operation or attribute, a dependency is created.


See also

*
functional dependency In relational database theory, a functional dependency is a constraint between two sets of attributes in a relation from a database. In other words, a functional dependency is a constraint between two attributes in a relation. Given a relation ' ...


References


Further reading


External links


Dependency Relationship in UML 2

Documents associated with Unified Modeling Language (UML), v2.4.1
Unified Modeling Language Data modeling {{uml-stub