Vernon (2016), on 5th chapter:
DDD - Aggregates
Aggregates live within DDD - Bounded Contexts. I'll try my best to grasp the concept, but I confess that I don't have a clear picture yet.
Aggregates are composed of DDD - Entities and DDD - Value objects. Also, they always have a root entity, everything else derives from it.
Usually these are defined by some sort of business transaction. I.e: we can have an Order aggregate composed of OrderItem value objects. The order can be canceled (which would be defined by the status == CANCELED invariant) or the order can be finished when status == FINISHED.
Material that helped me a bit in understanding aggregates (although I don't get it ATM):
2026-10: Not sure what my difficulty was. Martin Fowler's article is as clear as day. Aggregates are entities and value objects that always go together from a business perspective.