Institute for

Domain-Driven Design (DDD)

Domain-Driven Design (DDD) proposes techniques and patterns to deal with the intrinsinc complexity in software development, both organizationally and technically. Key DDD themes are business-orientation, domain modeling, and knowledge reuse both on the strategical (i.e., long term, cross project) and on the tactical level. DDD has been around, in active use on real-world projects, and supported by a Community since the first DDD book came out in 2003; it recently becaome particularly popular in the microservices community as a way to identify service boundaries (via strategic DDD, using patterns such as Context Map and Bounded Context.




Key Patterns (Selection)

  • General: Ubiquitous Language, Model-Driven Design, Layered Architecture
  • Tactic DDD: Entity, Value Object; Aggregate, Root Entity; Factory, Repository, Service
  • Strategic DDD: Bounded Context, Context Map; Published Language, Shared Kernel, Open Host Service, Customer-Supplier, Conformist, Anti Corruption Layer (context relationship types)


See DDD reference for pattern summaries (PDF, Word) and/or DDD glossary on community website.


Books (Selection, Reverse Chronological Order)


More Information


Contact: Olaf Zimmermann