in my organization they tend to use a nomenclature of "downstream" and "upstream" when they talk about communications between systems. What is the definition of these concepts? Is this standard concepts in the world of IT-development?
I know this is old but I think the other answer has it the wrong way around. Think of it this way - if you are upstream from something what you do can affect it and equally something upstream from you affects you but something downstream can't.
So to use the same method, given a system S:
Upstream - something which S depends on (as it's actions "flow down" to S)
Downstream - something which depends on S (as S's actions "flow down" to it)