Strategic Domain-Driven Design: Domain Types
Not all domains in a system are equally important. Strategic Domain-Driven Design helps identify core, supporting, and generic domains so teams can focus effort where it creates real business advantage
Not all domains in a system are equally important. Some represent the core of a business and define its competitive advantage, while others simply support operations or fulfill necessary but non-differentiating requirements.
Understanding these differences is a fundamental step in Strategic Domain-Driven Design. It helps teams decide where to focus their effort, where innovation matters most, and where existing solutions may already be sufficient.
This series explores how to classify domains and how that classification influences architectural decisions, implementation strategy, and long-term system evolution.
Articles in this Series
Domain Types: Identifying core, supporting, and generic domains
This article introduces the three domain types defined in Domain-Driven Design: core domains, supporting subdomains, and generic subdomains. It explains how these categories reflect both the business importance and the complexity of different areas within a system.
Domain Types: Build, buy, or outsource?
Once domains are classified, the next step is deciding how they should be implemented. This article explains how domain types influence architectural decisions and implementation strategy. It explores how classification helps determine when it makes sense to build a solution internally, adopt an existing product, or outsource development, while also explaining why these decisions should evolve as knowledge about the domain and the market grows.