Vernon (2016), on 3rd chapter:
DDD - Subdomains
Subdomains are encompassed within a bounded context, and ideally they do not share their house with other subdomains (more on DDD - Bounded Contexts).
Subdomains are a good way to break up and reason about your Problem SpaceProblem Space VS Solution Space, which is normally too complex to take in as a whole.
There are 3 main types of subdomains:
- Core Domain: the domain that's most relevant to your business. This is where you should pour most of your resources
- Supporting Domain: normally things for which you still need specialized solutions (so no off-the-shelf options), so you have to commit resources to it as well. We must be careful to not dedicate too much attention to it, we should focus on feeding it according to the core domain necessities
- Generic Domain: usually we can acquire it from an external source (read "off-the-shelf solution"). These are things that we need, but it's not beneficial to develop our own