Quick DDD terminology question: Say Context B depends on A (e.g. because B uses one of A’s services). Is A always “upstream”, or does this change depending on whether one applies “Conformist” or “Customer/Supplier”?
6
1
1
12
My 2ç: Conformist is always downstream from the service it conforms to, by definition. In customer/supplier, supplier is upstream, customer downstream, otherwise you'd call it partnership. So no, doesn't change.
2
That would be my take as well: Conformist and Customer/Supplier are organizational ways to deal with a technical dependency. It would be interesting to see whether @ericevans0 and @VaughnVernon agree.
1
1
Officially a Conformist is considered downstream, but why couldn't one or the other or both teams in a Partnership conform? (Not a suggestion.) I view Conformist to means the conforming team accepts the other model as is, not attempting to translate. It's the opposite of ACL.
1
4
Customer-Supplier means the Customer stands a chance of getting needed features but there may but angst. (eg Customer is not always right, or Supplier is a hot mess.)
1
1
Eric seems to situate Customer-Supplier as teams assigned responsibilities in different contexts of the same system. What if you are in Customer-Supplier with and external decency (subscribed to a model that almost fits your needs)?
1
Rather than making strict rules about U/D, etc., I think it's best to recognize the impact of being in any dependency and then name those as explicit situations and how those will impact either or both teams. Most times U/D will be clear, but may occur unexpectedly.
2
1
5
Yes a clear description of the situation is more important than the particular terms
1
6
Completely agreed. So here’s my take: upstream/downstream refer to the actual, organization power dynamics among teams/context. These may or may not align with technical dependencies (runtime or development time).

Jun 22, 2018 · 4:27 PM UTC

1
2
7