In
UML, deployment diagrams model the physical architecture of a system. Deployment
diagrams show the relationships between the software and hardware components
in the system and the physical distribution of the processing.
Deployment diagrams, which you typically prepare during the implementation
phase of development, show the physical arrangement of the nodes in a distributed
system, the artifacts that are stored on each node, and the components and
other elements that the artifacts implement. Nodes represent hardware devices
such as computers, sensors, and printers, as well as other devices that support
the runtime environment of a system. Communication paths and deploy relationships
model the connections in the system.
Deployment diagrams are effective for visualizing, specifying, and documenting
the following types of systems:
- Embedded systems that use hardware that is controlled by external stimuli;
for example, a display that is controlled by temperature change
- Client/server systems that typically distinguish between the user interface
and the persistent data of a system
- Distributed systems that have multiple servers and can host multiple versions
of software artifacts, some of which might even migrate from node to node
Because deployment diagrams focus on the configuration of the runtime processing
nodes and their components and artifacts, you can use this type of diagram
to assess the implications of distribution and resource allocations.
Note: Deployment diagrams are distinct from component diagrams.
A deployment diagram shows components and artifacts in relation to where they
are used in the deployed system. A component diagram defines the composition
of components and artifacts in the system.
Note: Deployment
diagrams are distinct from deployment topologies, a different type
of model. For information on deployment topologies, see
Modeling
deployment topologies.
The following topics describe model elements in deployment diagrams: