Concept Map of the Domain Driven Design Putting the Model To Work Patterns
May 17, 2025 ยท View on GitHub
Diagram

Description
Shows the modelling patterns and their relationships.
Concepts
| Concept | Description |
|---|---|
| Bounded Context | A descrition of a boundary (typically a subsystem or the work of a particular team) within which a particular model is defined and applicable. |
| Clean Architecture | |
| Conceptual Contours | decompose design elements into cohesive units |
| Context Map | The context map provides an overview for all models and their boundaries and interfaces. |
| Continuous Integration | A process of merging all code and other implementation artifacts frequently, with automated tests to flag fragmentation quickly. |
| Core Domain | The most valuable part of the domain model. |
| Domain Events | A domain object to propagate relevant domain activities in a distributed system. |
| Entities | Objects in the domain model which are defined by their identity rather than by their state. For example a Person is normally modelled as an entity. It represents the same person even when the attributes change. It is also a different person, even if it has the same state as another person. |
| Hands On Modellers | Developers must be involved with the model and have contact with domain experts. |
| Intention-Revealing Interfaces | name classes and operations to describe their effect and purpose |
| Model Driven Design | |
| Services | contains functionality which is not the responsiblity of an entity or value object |
| Standalone Classes | when possible create classes that are self-contained and can be understood alone |
| Ubiquitous Language | A language around the domain model used by all team members within a bounded context to connect all the activities of the team with the software. |
| Value Objects | An object in the domain model, which has no conceptional identity but are identified by their state. Value objects should be modelled as immutable. |
Other Relationships
| From | Name | To | Description |
|---|---|---|---|
| Bounded Context | assess/overview relationships with | Context Map | |
| Core Domain | culivate rich model with | Ubiquitous Language | |
| Model Driven Design | define model within | Bounded Context | |
| Intention-Revealing Interfaces | draw from | Ubiquitous Language | |
| Model Driven Design | express change with | Domain Events | |
| Model Driven Design | express identity with | Entities | |
| Model Driven Design | express model through | Intention-Revealing Interfaces | |
| Model Driven Design | express model with | Services | |
| Model Driven Design | express state and computation with | Value Objects | |
| Model Driven Design | isolate domain expressions with | Clean Architecture | |
| Bounded Context | keep model unified with | Continuous Integration | |
| Model Driven Design | model gives structure to | Ubiquitous Language | |
| Ubiquitous Language | model out loud | Core Domain | |
| Bounded Context | names enter | Ubiquitous Language | |
| Model Driven Design | reduce cost of change with | Conceptual Contours | |
| Model Driven Design | simplify interpretion with | Standalone Classes | |
| Core Domain | work in autonomous, clean | Bounded Context |
Navigation
(generated by Overarch with template docs/view.md.cmb)