Concept Map of the Domain Driven Design Putting the Model To Work Patterns

May 17, 2025 ยท View on GitHub

Diagram

Concept Map of the Domain Driven Design Putting the Model To Work Patterns

Description

Shows the modelling patterns and their relationships.

Concepts

ConceptDescription
Bounded ContextA 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 Contoursdecompose design elements into cohesive units
Context MapThe context map provides an overview for all models and their boundaries and interfaces.
Continuous IntegrationA process of merging all code and other implementation artifacts frequently, with automated tests to flag fragmentation quickly.
Core DomainThe most valuable part of the domain model.
Domain EventsA domain object to propagate relevant domain activities in a distributed system.
EntitiesObjects 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 ModellersDevelopers must be involved with the model and have contact with domain experts.
Intention-Revealing Interfacesname classes and operations to describe their effect and purpose
Model Driven Design
Servicescontains functionality which is not the responsiblity of an entity or value object
Standalone Classeswhen possible create classes that are self-contained and can be understood alone
Ubiquitous LanguageA 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 ObjectsAn 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

FromNameToDescription
Bounded Contextassess/overview relationships withContext Map
Core Domainculivate rich model withUbiquitous Language
Model Driven Designdefine model withinBounded Context
Intention-Revealing Interfacesdraw fromUbiquitous Language
Model Driven Designexpress change withDomain Events
Model Driven Designexpress identity withEntities
Model Driven Designexpress model throughIntention-Revealing Interfaces
Model Driven Designexpress model withServices
Model Driven Designexpress state and computation withValue Objects
Model Driven Designisolate domain expressions withClean Architecture
Bounded Contextkeep model unified withContinuous Integration
Model Driven Designmodel gives structure toUbiquitous Language
Ubiquitous Languagemodel out loudCore Domain
Bounded Contextnames enterUbiquitous Language
Model Driven Designreduce cost of change withConceptual Contours
Model Driven Designsimplify interpretion withStandalone Classes
Core Domainwork in autonomous, cleanBounded Context

List of views in namespace

List of all Views

(generated by Overarch with template docs/view.md.cmb)