上游和下游定义

su9*_*bsa 8 requirements

在我的组织中,当他们谈论系统之间的通信时,他们倾向于使用"下游"和"上游"的命名法.这些概念的定义是什么?这是IT开发领域的标准概念吗?

Mat*_*att 13

我知道这已经过时了,但我认为另一个答案是错误的.以这种方式来思考 - 如果你在某事物的上游,那么你所做的事情就会影响它,而你上游的某些东西会影响你,但下游的东西却不会影响你.

所以使用相同的方法,给定一个系统S:

上游 - S依赖的东西(因为它的行动"向下流"到S)

下游 - 依赖于S的东西(因为S的行动"流向"它)

  • 是的,我同意马特的观点。我认为它是这样的: A --> B --> C A 是 B 的源,B 是 C 的源。因此,链条从 A 到 B 再到 C。从 A 到 B,再到 B 到 CI 考虑下游,如“河流如何流动”。向相反的方向走就是逆流而上。尽管我知道在我的公司中其他人也以相反的方式使用它...... (2认同)

dop*_*ner -4

为了简化事情,假设我们正在讨论系统 S。

上游 - 取决于 S 的东西

下游 - S 所依赖的东西

  • 这个答案显然是错误的。当你在真正的小溪或河流边时,如果你往里面扔东西,它就会顺流而下。变化只会影响下游依赖者。依赖项位于上游。 (3认同)
  • 我相信更常见的解释是马特在另一个答案中发布的解释。我在[这篇博文](https://reflectoring.io/upstream-downstream)中详细阐述了它,因为它也让我感到困惑。 (2认同)
  • 这是错误的。下游没有任何东西可以成为你的依赖项。他们是依赖者……而不是依赖者。 (2认同)