Archyno
UMLNotation reference

UML diagram symbols

One page for the whole shape vocabulary: which glyph belongs to which of the fourteen diagrams, what every arrowhead means, and how to identify a diagram from its symbols before reading a word of it.

8 min readUML 2.5.12 of 35

billing{ total > 0 }Order- id: UUID- total: Moneyo1: OrderPaymentsapp-serverCustomerPlace orderReserve stock
The shapes, grouped as a reader meets them: structure on the top row, behaviour in the middle, control nodes below.

01The shapes, and what each one commits you to

UML has fewer symbols than its reputation suggests. Strip away the ones that appear on a single diagram type and about a dozen shapes carry the whole language. Each one is a claim about what kind of thing is in the box, and picking the wrong one is a statement, not a cosmetic slip - an ellipse where a rounded rectangle belongs says “goal the user has” where you meant “step the system runs”.

ElementNotationWhat it means
RectangleA classifier: a class, an artifact, a participant. The default shape, and the one every other structure diagram builds on.
Rectangle, underlined nameo1: OrderAn instance rather than a type - one specific order, on an object diagram. The underline is the whole difference.
Rectangle with component icon▭ ⊟A replaceable unit with interfaces, on a component diagram. The icon sits top-right and is the only thing distinguishing it from a class.
3D boxA node - hardware, a container, an execution environment - on a deployment diagram.
Tabbed folder🗀A namespace, on a package diagram.
EllipseA use case: something an actor wants to achieve, on a use case diagram. Never a step, never a screen.
Stick figureAn actor: a role outside the system boundary. It can be a person, another system or a clock, which is why the figure is a role and not a portrait.
Rounded rectangleAn action on an activity diagram, or a state on a state machine. The same shape, two meanings - the surrounding notation disambiguates.
RhombusA decision, when one branch is taken, or a merge, when several come back together. Same glyph both ways; the arrow count tells you which.
Solid barA fork, when everything downstream runs concurrently, or a join, when everything upstream must finish first.
Filled discThe initial node or initial pseudostate: where the flow starts.
Ringed discActivity final or final state: the whole flow is over.
Crossed circleFlow final. It ends this token, not the activity - the distinction that trips up most first drafts.
Folded corner🗒A note or a constraint, attached by a dashed line. Curly braces inside it make it a constraint that has to hold.

The node shapes, and the diagrams that own them.

02The six lines every diagram shares

The relationship lines are the part of UML worth learning once, because they are drawn identically wherever they appear. A hollow triangle means the same thing between two classes, two components, two use cases and two nodes, so the investment amortises across all fourteen diagram types.

ElementNotationWhat it means
AssociationA plain line. The two ends know about each other, and multiplicities at either end say how many.
GeneralizationSolid line, hollow triangle at the general end. “Is a kind of” - inheritance, specialization, subtype.
RealizationDashed line, hollow triangle. The source implements the contract the target declares. Interfaces, not inheritance.
CompositionFilled diamond at the whole. The part belongs to one whole and dies with it.
AggregationHollow diamond at the whole. A whole/part reading with no ownership claim, and no formal semantics in UML 2.5.1.
DependencyDashed, open arrow. The source uses the target - a parameter, a return type, a static call - without holding it.

Two rules make these recoverable from memory rather than from a table. First, the decorated end is the end that matters: the triangle points at the more general thing, the diamond sits on the owning whole, the open arrow points at what is being used. Second, a dash weakens the solid claim: solid triangle is inheritance and dashed triangle is only a contract; a solid line is a structural link and a dashed one is mere usage.

03The lines, drawn against each other

Arrowheads are hard to tell apart in prose and easy to tell apart side by side. Below, the four most-confused lines are drawn between the same kind of boxes at the same scale, so the difference is the head and nothing else.

10..*CustomerOrderPaymentCardPayment«interface»PrintableInvoicePriceServiceBasket

Left to right: Customer and Order are simply associated, one to many. CardPayment generalizes Payment - the hollow triangle points up at the more general classifier. Invoice realizes the Printable interface, and the dash is the entire difference between that and the line beside it. Basket depends on PriceService, using it without owning it.

04Symbols that only appear on one diagram

A handful of marks belong to exactly one diagram type. They are worth recognising precisely because they identify the diagram: seeing one tells you what you are reading.

ElementNotationWhat it means
Lifeline▭ + ┆A box with a dashed vertical line under it - sequence diagrams only. The thin rectangle on the line is an execution occurrence.
Combined fragmentalt / loop / optA box with a pentagon name tag in its corner, wrapping part of a sequence diagram to make it conditional or repeated.
Include / extend«include»A dashed open arrow with a keyword, on a use case diagram. The keyword is load-bearing: the two point in opposite directions.
Subject boundary▭ aroundThe rectangle drawn behind the use cases. Inside is the system; the actors stay outside it.
Deploy«deploy»A dashed arrow putting an artifact onto a node. Never the reverse.
Ball and socket—○ ⊃—A provided interface (lollipop) meeting a required one (socket), on a component diagram. The pair is a connector.
Swimlane│ │ │A partition on an activity diagram. Which lane an action sits in says who is responsible for it.
Crow's foot—‹Not UML at all. A three-pronged end means “many” in ER notation - if you see one, you are reading a data model, not a class diagram.

05Decorations: guillemets, braces, brackets

Three kinds of punctuation appear on UML diagrams and each one means something specific. They are easy to skim past, and each carries more information per character than the shape it sits on.

ElementNotationWhat it means
Guillemets«interface»A stereotype: an extension of the standard vocabulary, defined by UML itself or by a profile. Written <<…>> where the character is unavailable.
Curly braces{ ordered }A constraint that must hold - on an end, an attribute or in a note. Common ones are { ordered }, { unique } and { readOnly }.
Square brackets[approved]A guard on a transition or a flow. The edge is only taken when the condition holds, and the guards leaving one decision should be exhaustive.
Visibility markers+ - # ~Public, private, protected and package, before a member name.
Multiplicity0..* 1 2..5How many instances participate, written at the end of the line it applies to. A missing multiplicity means unspecified, not one.
UnderlinestaticBelongs to the classifier rather than an instance - or, on a whole box, that the box is an instance.

06What to remember

In one line each

  1. 01Shapes identify the diagram; lines carry the meaning. Read them in that order.
  2. 02The decorated end of a line is the end that matters: triangle at the general, diamond at the whole, arrow at the used.
  3. 03A dash always weakens the solid claim - realization not inheritance, usage not structure, reply not call.
  4. 04The same rounded rectangle is an action on an activity diagram and a state on a state machine.
  5. 05Guillemets, braces and brackets are notation, not annotation. Dropping them changes what the diagram says.

07Common questions

What are the basic symbols used in UML diagrams?

A rectangle is a classifier - a class, component or artifact. An ellipse is a use case, a stick figure is an actor, a rounded rectangle is an action or a state, and a rhombus is a decision. A filled disc starts a flow and a ringed disc ends one. Lines carry the meaning: the arrowhead says which relationship it is.

How do I tell which UML diagram I am looking at?

Read the shapes before the lines. Stick figures and ellipses mean a use case diagram, rounded boxes with a filled start disc mean activity or state machine, vertical lifelines with horizontal arrows mean sequence, and plain rectangles with diamonds and triangles mean class. 3D boxes mean deployment.

What does a dashed line mean in UML?

A dash always weakens the claim the solid version makes. Dashed with an open arrow is a dependency - use without ownership. Dashed with a hollow triangle is realization rather than inheritance. Dashed to a folded-corner box attaches a note, and a dashed line in a sequence diagram is a reply rather than a call.

Are UML symbols the same across all fourteen diagram types?

The lines are; the boxes are not. Generalization, association, dependency and realization are drawn identically wherever they appear, which is why learning them once pays off. The node shapes are specific to each diagram, and that is deliberate - it is what lets you identify a diagram at a glance.

What does a rectangle with a folded corner mean in UML?

It is a note: a comment, a constraint or an explanation, attached to whatever it describes by a plain dashed line. Text in curly braces inside it is a constraint that must hold, such as { total > 0 }. Notes carry no semantics of their own and can be attached to anything.

All articles