Institute for
HSR

Domain-Driven Design Overview and Links

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.

 

Introductions

 

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 in community website.

 

Books (Selection, Reverse Chronological Order)

 

More Information

 

Contact Olaf Zimmermann