Published:
Last updated:
DDD (Domain-Driven Design)
DDD is an approach to modelling complex software in which the domain language (Ubiquitous Language) and the business domains are central. It prevents software from being developed in a purely technically driven way.
Core Concept
The overall system is broken down into Bounded Contexts — clearly delimited areas in which terms have a single, unambiguous meaning. This is the domain prerequisite for a clean microservice architecture.
Application
- Strategic Design: Identification of core, supporting, and generic domains.
- Ubiquitous Language: Use of the same domain terms in documentation, meetings, and code.
- Context Mapping: Definition of the interfaces and dependencies between domains.