Search code examples
umlmodelingenterprise-architectsequence-diagramcomponent-diagram

UML diagram for dependency between systems


Which UML diagram is the best for showing dependency between our IT system and other external IT systems?

For example I would like to show on diagram:

  1. system A gets data from system B
  2. system B can call some functionality from system A

I'm wondering between component diagram and sequence diagram.

What do you think?


Solution

  • Components definitelly, and dependencies. Dependency does not go in direction of the data-flow, but from the component that "knows" other component (invokes something from it, creates an object, etc).

    The following diagram shows the idea.

    enter image description here

    It is common (and highly recommendable) practice, to use interfaces between the components and channel dependencies through interface. This permits clearer specification and better design (if possible of course).

    Sequence diagram can further be used to specify concrete usage scenario and is also recommendable. So, components for structural, static dependencies and sequence for dynamic behavior.