Notation, explained
Every diagram, explained
Four notations - UML, ArchiMate, BPMN and ER - with one article per diagram kind, every one of them carrying real diagrams rather than descriptions of diagrams. Start with a series or jump to the one you need.
Start here
What is UML?
The Unified Modeling Language in practice: the fourteen diagram types, how structure and behaviour split, and how to pick the right diagram for the question you are actually asking.
9 min read
Read in order
Every UML diagram, explained
Fourteen diagram types in UML 2.5.1, one article each, every one of them with real diagrams rather than descriptions of diagrams.
- Foundations01
What is UML?
The Unified Modeling Language in practice: the fourteen diagram types, how structure and behaviour split, and how to pick the right diagram for the question you are actually asking.
UML9 min read
- Structure diagrams02
Class diagrams
How to read and draw a UML class diagram: the three compartments, visibility markers, multiplicity, and the difference between association, aggregation, composition, generalization and realization.
UML11 min read
- Behaviour diagrams03
Sequence diagrams
How to read and draw a UML sequence diagram: lifelines, activation bars, synchronous and asynchronous messages, replies, and the combined fragments (alt, opt, loop, par) that handle branching.
UML10 min read
- Behaviour diagrams04
Use case diagrams
How to read and draw a UML use case diagram: actors, the system boundary, associations, and the include and extend relationships that people most often get backwards.
UML8 min read
- Behaviour diagrams05
Activity diagrams
How to read and draw a UML activity diagram: actions, decisions and merges, forks and joins, guards, swimlanes, and the difference between a branch and true parallelism.
UML9 min read
- Behaviour diagrams06
State machine diagrams
How to read and draw a UML state machine diagram: states, transitions with trigger, guard and effect, entry and exit actions, composite states, and history pseudostates.
UML9 min read
- Structure diagrams07
Component diagrams
How to read and draw a UML component diagram: components, provided and required interfaces, ball-and-socket notation, ports, and how it differs from a class diagram.
UML8 min read
- Structure diagrams08
Deployment diagrams
How to read and draw a UML deployment diagram: nodes, devices and execution environments, artifacts, communication paths, and the deploy relationship.
UML7 min read
- Structure diagrams09
Object diagrams
How to read and draw a UML object diagram: instance specifications, underlined names, slots with concrete values, links, and how to use one to sanity-check a class diagram.
UML6 min read
- Structure diagrams10
Package diagrams
How to read and draw a UML package diagram: packages, import and access dependencies, merge, nesting, and using the dependency direction to enforce a layered architecture.
UML6 min read
- Structure diagrams11
Composite structure diagrams
How to read and draw a UML composite structure diagram: parts, ports, connectors, delegation, and the difference between this and a class or component diagram.
UML6 min read
- Behaviour diagrams12
Communication diagrams
How to read and draw a UML communication diagram: objects, links, numbered messages, nested decimal sequencing, and when to prefer it over a sequence diagram.
UML6 min read
- Behaviour diagrams13
Timing diagrams
How to read and draw a UML timing diagram: lifelines as value axes, state-change waveforms, duration and time constraints, and when elapsed time matters enough to need one.
UML6 min read
- Behaviour diagrams14
Interaction overview diagrams
How to read and draw a UML interaction overview diagram: interaction occurrences, inline interactions, control flow between them, and how it keeps large sequence diagrams manageable.
UML5 min read
- Structure diagrams15
Profile diagrams
How to read and draw a UML profile diagram: stereotypes, metaclasses, the extension relationship, tagged values, and when extending the language is better than working around it.
UML6 min read
The ArchiMate series
ArchiMate, from the framework down
The layers, the eleven relationships and the viewpoint mechanism - the enterprise architecture language, taught in the order you need it rather than the order the spec lists it.
- Foundations01
What is ArchiMate
A working introduction to ArchiMate: what the language is for, the layer-and-aspect framework it is organised by, its element and relationship vocabulary, and when to reach for it instead of UML.
ArchiMate10 min read
- Structure diagrams02
Layers and aspects
The ArchiMate framework in detail: business, application, technology, strategy, physical and implementation layers, the active-behaviour-passive aspects, and how the motivation elements cut across all of them.
ArchiMate9 min read
- Notation reference03
Relationships
Every ArchiMate relationship explained: composition, aggregation, assignment, realization, serving, access, influence, triggering, flow, specialization and association - plus the strength order and how derived relationships work.
ArchiMate11 min read
- Modelling practice04
Viewpoints
How ArchiMate separates the model from the views onto it: what a viewpoint is, the standard set and what each is for, how to pick one for a stakeholder, and how to define your own without breaking the model.
ArchiMate8 min read
The data modelling series
Data models and the diagrams that carry them
Entity-relationship modelling in crow's foot notation, and the trip from a conceptual sketch to a schema a database will actually accept.
- Foundations01
ER diagrams
How to read and draw an entity-relationship diagram: entities, attributes, primary and foreign keys, relationships and cardinality in crow's foot notation, the conceptual-logical-physical progression, and how an ER model differs from a UML class diagram.
Data modelling9 min read
- Notation reference02
Crow's foot notation
The crow's foot cardinality symbols in full: one, many, zero, and the pairs they form; which end of the line each symbol constrains; identifying versus non-identifying relationships; resolving many-to-many; and how crow's foot compares with Chen and with UML multiplicity.
Data modelling8 min read
- Modelling practice03
Schema design
Turning an ER model into a schema a database will accept: choosing keys, normalizing to third normal form with a worked example, when denormalization is justified, implementing inheritance, and generating DDL from the diagram.
Data modelling11 min read
The BPMN series
BPMN, one symbol set at a time
Business Process Model and Notation: events, gateways, pools and the flows between them - the notation business and IT are both supposed to be able to read.
- Foundations01
What is BPMN
A working introduction to BPMN 2.0: the five families of symbol, the difference between sequence flow and message flow, pools and lanes, the three levels of modelling, and when BPMN beats a UML activity diagram.
BPMN10 min read
- Behaviour diagrams02
Events
How BPMN events work: start, intermediate and end by border weight, the message, timer, error, signal and conditional types by interior glyph, throwing versus catching, and boundary events as the way to model exceptions.
BPMN8 min read
- Notation reference03
Gateways
The BPMN gateway types explained: exclusive, parallel, inclusive, event-based and complex, splitting versus merging, default flows, and why an unbalanced inclusive gateway is the classic way to deadlock a process.
BPMN9 min read