Standalone conceptRelationshipChapter I · Domain · Building block 16 of 18

Customer-Supplier

The Supplier considers agreed requirements from the Customer; influence, priority and delivery are negotiated.

  1. CustomerRaises requirements with the upstream.
  2. SupplierAgrees on priorities and delivery with the Customer.
  3. CoordinationMakes the dependency and change path explicit.

Context

Why this is important

Manage dependencies between contexts cooperatively and define the Customer’s influence.

A relationship between Bounded Contexts in strategic Domain-Driven Design.

Shop example · Mapping

Customer-Supplier coordination

The shop remains a modular monolith with seven modules and a shared deployment; this relationship describes model ownership.

This is how you read the picture

  1. Customer Downstream
  2. Supplier Upstream
  3. Coordination Planning
Customer-Supplier coordination
AspectCustomerSupplier
RoleUses upstream capabilityProvides capability
ChangePrioritises requirementPlans delivery
The matrix shows influence and ownership across a dependency.

Benefits & limitations

Helps if:

  • One context depends on another and can influence its evolution through agreed requirements.
  • Both owners can discuss priorities and changes regularly.

Boundaries

  • Customer influence is room for negotiation, not a delivery guarantee.
  • If priorities remain misaligned, the Customer needs a different integration strategy.

In practice

  1. Identify upstream and downstream from actual data or capability dependencies. Record which dependency gives the Customer standing to raise requirements and prioritize them with the Supplier.
  2. Express the Customer’s needs as concrete contract or delivery changes. Both sides prioritize the work together based on business value, effort, and impact on other consumers.
  3. Agree on owners, feedback, compatibility checks, and an escalation path. After changes, verify that the Customer can still influence needed capabilities and that the contract remains reliable.
Read the detailed explanation

Customer-Supplier describes a cooperative relationship with a clear upstream and downstream. The Customer raises requirements that the Supplier can consider in planning. The relationship works when owners regularly prioritise and discuss effects on both models. Joint planning does not replace clear contracts: each context retains its business ownership.

The Customer can bring requirements to its upstream. A Context Map makes the relationship visible; each Bounded Context keeps its own model.

Check your understanding

Test yourself in three stages

  1. ReadingCheck in the picture

    Who prioritises a requirement to the upstream?

    View the solution with justification

    Customer and Supplier coordinate it together.

  2. ApplyingTransferred to a new situation

    How can Ordering keep a product change compatible?

    View the solution with justification

    Teams agree on the reference, transition period and compatibility check.

  3. EvaluateWeighing an alternative

    When does this pattern fit if priorities remain opposed?

    View the solution with justification

    Effective cooperation is missing; the Customer should consider another relationship.

Explore further

These building blocks continue the thoughts of this page.

Continue on the learning path

Next in Domain Modelling & DDD: Shared Kernel.

18 Building blocks

Continue withShared Kernel