Domain-Driven Design

Domain-Driven Design: Strategic Patterns

Bounded contexts, ubiquitous language, and context maps — the high-level tools for taming large domains.

January 15, 2026
#ddd#bounded-context

Strategic DDD is about dividing a large domain into Bounded Contexts — explicit boundaries within which a model applies consistently. Each context has its own Ubiquitous Language shared between developers and domain experts. A Context Map documents how contexts relate: Shared Kernel, Customer-Supplier, Conformist, Anti-Corruption Layer, or Open Host Service.

yaml
OrderContext:
  upstream: InventoryContext  # Inventory is upstream supplier
  downstream: ShippingContext # Shipping conforms to Order
  relationship: Customer-Supplier

PaymentContext:
  relationship: Shared-Kernel  # shared Money value object
Context Map example

Continue reading