Reactive Domain

Centralizing Business Logic

For lack of a better way to describe it, an aggregate within the system encompasses all the required business logic to interact and otherwise make decisions about the thing the aggregate represents in the real world. In the concept of a shopping cart, you would do things like AddItemstoCart, but you may want to have a restriction on the item (e.g. if it were wine, and the customer was known to be below the legal drinking age, you want to reject the item from being placed into the cart.)

Designing Aggregates

AdapTech has a method that they employ with all of their perspective clients as part of engaging and sarting projects which they call Event Modeling. In this exercise, you will meet with all stakeholders within your organization to stimulate discussions around the “known” and “actual” ways that teams interact with each other to solve a task. During this discovery, the teams will cordially argue the points and find pitfalls that they’ve been fighting without knowing it.

AdapTech uses the outcome of these modeling sessions to define their slices of work, which is how they can bill for fixed-rates.

Conventions

A Discussion on How to Interact with Aggregates

Domain-Driven Design