Egor Urvanov

Aggregate

Specs and architecture

A group of related domain objects that changes as one unit through its root and holds its own business rules. An aggregate has commands that change it; a version that grows with every change; read models to see what is inside; events it sends to other bounded contexts. In specs by aggregate, one spec describes one aggregate.

Aggregate "Order"Rootversion 7Line itemsBusiness rulestotal ≥ 0, a paid order is frozenCommandsAdd itemPayRead modelsorder card and listEvent"Order paid"Context borderDeliveryanother context● model, people, systems, data  ● agent and harness  ● risk, stop, boundaryCommands change the aggregate, rules inside guard it, read models show it, events go to another context

Source: Martin Fowler: DDD Aggregate

Where it appears · 4

Related terms

Whole glossary

© 2026 Egor Urvanov