Domain-driven design (DDD) is an approach to structuring complex software systems around business boundaries. Its core concepts include bounded contexts as clearly defined model boundaries, a ubiquitous language shared between business and engineering, and the distinction between strategic and tactical design.
In practice, DDD is often used to break large systems into independently developed building blocks such as microservices, organized around bounded contexts rather than purely technical layers. Our training Domain-driven Design in Practice goes deeper into applying this approach in your own projects.
This page brings together articles, podcasts, talks, and primers on domain-driven design.