Skip to content

Files

Latest commit

a990a0c · Dec 4, 2024

History

History
52 lines (40 loc) · 1.96 KB

c-customer-supplier.md

File metadata and controls

52 lines (40 loc) · 1.96 KB

Customer/Supplier (Concept)

Description

A clear relationship between two teams, where the downstream team is the customer of the upstream team.

Documentation

When two teams are in an upstream-downstream relationship, where the upstream team may succeed independently of the fate of the downstream team, the needs of the downstream come to be addressed in a variety of ways with a wide range of consequences.

A downstream team can be helpless, at the mercy of upstream priorities. Meanwhile, the upstream team may be inhibited, worried about breaking downstream systems. The problems of the downstream team are not improved by cumbersome change request procedures with complex approval processes. And the freewheeling development of the upstream team will stop if the downstream team has veto power over changes.

Therefore,

Establish a clear customer/supplier relationship between the two teams, meaning downstream priorities factor into upstream planning. Negotiate and budget tasks for downstream requirements so that everyone understands the commitment and schedule.

Agile teams can make the downstream team play the customer role to the upstream team, in planning sessions. Jointly developed automated acceptance tests can validate the expected interface from the upstream. Adding these tests to the upstream team's test suite, to be run as part of its continuous integration, will free the upstream team to make changes without fear of side effects downstream.

Relation from

From Name To Description
Context Map coordinate upstream/downstream Customer/Supplier

Concept Map

Concept Map of the Domain Driven Design Patterns Concept Map of the Domain Driven Design Patterns

Tags

Pattern

Navigation

List of views in namespace

List of all Views

(generated with docs/concept.md.cmb)