bounded-context-canvas icon indicating copy to clipboard operation
bounded-context-canvas copied to clipboard

Deeply incorrect definition of BC

Open mathiasverraes opened this issue 2 years ago • 10 comments

The first line of the readme says "A bounded context is a sub-system in a software architecture aligned to a part of your domain."

This is literally the opposite of what it is.

A Bounded Context is a boundary around a model and its language. Within this boundary, the meaning of terms is unambiguous, well-defined and understood. The model is clear and the rules are consistent. It offers no such guarantees outside of its boundary.

  • It's not a subsystem, it might be spread across multiple subsystems. It might not have a physical system, such as an Interchange context.
  • It might span multiple domains or only deal with a chunk of a single domain.
  • A domain might be expressed in multiple bounded contexts, eg if we purchase a competitor that does similar activities.

This incorrect reasoning lies at the heart of the whole BC canvas and is probably responsible for a lot of misunderstanding in the DDD community.

mathiasverraes avatar Jan 16 '23 17:01 mathiasverraes