Chapter 1 - I am here to kill the aggregate
The aggregate has always been, for me, one of the most controversial and weakest elements of Domain Driven Design.
During my consultancy activity, I have been able to verify that the full understanding of the aggregate concept remains difficult for many. It is easy to make mistakes in the modeling phase, which will be very complex to fix in more advanced stages of development.
As a result, some developers feel that the whole architecture is excessively difficult and complicated.
I want to show you another world, where there is no aggregate. I am here to kill the aggregate.
For those unfamiliar with it, let me introduce it to you.
- A course cannot accept more than N students
- N, the Course Capacity, can change at any time to any positive integer different from the current one (even if the number of currently subscribed students is larger than the new value)
First, let's identify the events.
After the course has been created, it may happen that a student subscribes to the course, or unsubscribes. Course capacity may be updated from time to time.
The story continues to the next chapter
Chapter 2 - The Aggregate does not fit the storytelling
... or watch the full story on youtube