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.

Related Topics