what does this symbol mean?
UML 2.5.1 A dashed line between two class boxes ending in an open arrowhead

Dependency

A dashed line with an open arrowhead is a dependency. The element at the tail depends on, or uses, the element the arrow points to.

Easily confused with

How to read it

UML 2.5.1 draws a dependency as a dashed arrow between two model elements. The element at the tail, the client, depends on the element at the arrowhead, the supplier: the specification says the client's meaning is not complete without the supplier. A dependency says nothing about objects at run time; the specification gives it no runtime semantic implications. A keyword in guillemets on the arrow can name the kind of dependency. «use» means the client needs the supplier for its implementation, as in the specification's example of an Order that needs a Line Item; «instantiate» means the client creates instances of the supplier, as a CarFactory creates Cars. Course notes describe the usual case as a weak relationship in which one class uses another, often as a method parameter, without holding on to it (Robert C. Martin; Virginia Tech's OpenDSA). The University of Washington's slides sum it up as "uses temporarily".

Also searched as: dashed arrow uml, dependency symbol, uml dependency.

Look-alikes

A dashed line with a hollow triangle is Realization, not a dependency. In a use case diagram, dashed open-headed arrows labelled «include» or «extend» run between use cases; UML 2.5.1 draws «include» from the base use case to the included one, and «extend» from the extending use case to the one it extends. In a sequence diagram, a dashed line with an open arrowhead between lifelines is a reply or a creation Synchronous and return messages. A solid line with an open arrowhead is a navigable Association.

More UML diagram symbols

The same shape elsewhere

Sources

Researched, edited and approved by Rory Hansen before publishing. Last reviewed October 9, 2026. How we research

Added .

Report a problem

Please don’t include personal details.