🧩

Domain-Driven Design

Verified

by Community

Provides guidance on Domain-Driven Design tactical and strategic patterns. Covers bounded contexts, aggregates, entities, value objects, domain events, and context mapping to build software that accurately reflects the business domain.

ddddomain-modelingarchitecture

Domain-Driven Design

Apply DDD principles to model complex business domains effectively. Covers strategic design with bounded contexts and context maps, and tactical design with aggregates, entities, value objects, and domain services.

Usage

Ask about modeling your business domain, defining bounded contexts, or implementing tactical DDD patterns in code.

Examples

  • "How do I identify bounded contexts in my e-commerce system?"
  • "What should be an aggregate vs an entity in my order domain?"
  • "Help me create a context map for my organization"

Guidelines

  • Start with the ubiquitous language — use the same terms as domain experts
  • Keep aggregates small and focused on invariant enforcement
  • Use bounded contexts to isolate different models of the same concept
  • Domain events should cross bounded context boundaries, not entities
  • Collaborate closely with domain experts throughout the design process