~/talk

The Aggregate is dead. Long live the Aggregate!

Talkat J-Fall 2023 · on Thursday, 2023-11-09· [software-architecture]
slides:none on file

Argues that traditional DDD aggregates are unnecessary and proposes an event‑sourced alternative: treat decisions as message handlers that load only relevant events via a stream query, write with an optimistic conditional append (using a consistency marker), and store ownerless pure events tagged to multiple domain ids. Claims this narrows contention, avoids hard-to-refactor aggregate boundaries, and lets one transactional write validate cross-entity invariants; demonstrates the pattern with course/student examples and shows the conditional append prevents the race that breaks consistency.

AI-written summary · about

  1. 0:00Introduction to talk
  2. 1:02Aggregate definition and confusion
  3. 3:09Aggregate in event storming
  4. 8:30Aggregate breaks storytelling
  5. 9:32Aggregate mixes technical and business
  6. 13:48Larger aggregates increase contention
  7. 17:00Aggregate refactoring difficulties
  8. 21:16Transactions across aggregates
  9. 26:40Problems with aggregate approach
  10. 27:00Behavior-focused modeling solution
  11. 33:15Conditional append in event sourcing
  12. 40:04Pure events and dynamic consistency
  13. 45:25Dynamic consistency boundaries benefits
  14. 46:11Balancing flexibility and structure
  15. 47:35Q&A and conclusion
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.