4

Reading this question and the accepted answer we see that although we would expect subdomains and bounded contexts to match that's not always the case. The person who wrote the accepted answer states that one possible cause is that there's already some legacy application on which there's more context for a single domain, or even just one context for everything.

That's fine, but there are any other ways in which we can fail to correspond exactly subdomains to bounded contexts? I mean, if I'm writing an application from scratch, without any legacy application in place, so basically I'm starting now, in that case would be anything stopping me from making one bounded context per subdomain?

1 Answer 1

4

Disclaimer: I am "the person who wrote the accepted answer" to the other question. :o)

In practice there are quite a few situations where in the same subdomain there might be multiple Bounded Contexts.

Technology differences it might be a variation upon the legacy app mentioned above, but if we're developing a web and mobile version of the same application, we might end up with different BCs. They might be more or less diverging depending to the proximity of the development teams.

Purpose differences a recurring modelling pattern for BCs in the same subdomain is to have two separate models for Design and Execution. Usually the two models look like the same (they basically have the same data) but the purpose and behaviour is different. A Contract might be editable (details, discounts, etc) in Negotiation phase while it has to be basically read only in the Fulfilment phase. Sometimes the purposes (Negotiation and Fulfilment) can make two different subdomains, but some other times, they're just two phases of same stakeholders operation.

There are a some good links on this topic:

Not the answer you're looking for? Browse other questions tagged or ask your own question.