What are examples of deployment diagrams?
What a deployment diagram shows
In UML, a deployment diagram models the physical or virtual layout of a system. Nodes represent servers, devices or execution environments. Artifacts such as a web application or a database file sit inside those nodes, and lines show how they communicate.
It answers questions like where code runs, what talks to what and which network connections matter. It is different from a component diagram, which focuses more on software structure.
- Nodes: servers, containers or devices
- Artifacts: deployed files or packages
- Connections: protocols such as HTTPS or SQL
- Environments: the runtime each node provides
Simple examples
A common example has a client node for the user's browser, a web server node running a web application artifact and a database server node holding the database. Lines between nodes can be labeled with HTTPS or a database protocol.
A second example might show a load balancer node sending traffic to several application nodes, all connected to one managed database. This makes scaling and redundancy easier to explain to a team.
Tools for drawing them
You can draw deployment diagrams in general tools like draw.io or Lucidchart, or write them as text with PlantUML. Text-based diagrams are easier to keep in version control alongside your code.
Keep diagrams close to the real system. An outdated diagram can mislead people during an incident.
Common mistakes
- Mixing logical components and physical nodes in the same diagram, which makes the layout confusing.
- Letting the diagram drift out of date after infrastructure changes.
