How to Draw a Deployment Diagram in UML
In the Unified Modeling Language (UML), deployment diagrams show how elements of software and hardware are connected to one another. Since they can describe hardware, deployment diagrams are unique in the UML world.
Read this tutorial for a quick explanation of how to draw these diagrams, then start working in Lucidchart. It makes diagramming simple with a highly intuitive user interface.Demo here Sign up free
How to Make Deployment Diagrams
Before you get started on deployment diagrams, you may find it helpful to go over some of the basics. You can check out this UML guide for a handy overview of the Unified Modeling Language. Try also exploring our deployment diagrams tutorial. Reviewing these items will make it easier for you to draw a deployment diagram of your own.
IDENTIFY USE CASES & ELEMENTS
Deployment diagrams can serve several different purposes, all of which are typically hardware-related. Some of these functions include:
- Capturing runtime processing for hardware elements.
- Illustrating the general topology for a given hardware system.
- Demonstrating deployment relationships in which certain software components are deployed by specific hardware components.
Once you’ve identified the purpose of your deployment diagram, you will need to determine the elements within. Remember that the principal elements of any deployment diagram are nodes. These large 3D boxes symbolize which elements are performing the deployment. The objects contained in boxes, such as stereotypes, artifacts, and components (a component is illustrated in the example below) are the objects that are being deployed. Lines from node to node indicate either relationships between nodes or relationships between the messages they send out. Note that deployment diagrams can achieve a high level of complexity—for example, depending on the pattern of deployment you are trying to express, you might have one node contained in another node. It may be helpful to start with a list that clearly denotes the nodes you wish to display and their interrelationships.
ADD UML SYMBOLS
Begin drawing your diagram in Lucidchart by turning on the UML shape library. Scroll down through the toolbox to access the deployment section of the library. Then drag out your first symbol: a node. Label it and choose which shapes should be contained within the node. Some of your options are an artifact, a component, an instance, or a basic object. The example to the right shows a component contained by the node. You can easily add, delete, or swap out elements in the node. To relabel any element with a different name, simply click and type.
Now it’s time to connect your first node to other nodes. Drag out another node shape and label it appropriately. Then, repeat step 2 by dragging out the elements to be deployed into the node box.
After that, you’re ready to connect the two nodes. If you click anywhere on the node's edge and drag, a basic connection form will be automatically formed.
When drawing relationships between elements inside the nodes, you will likely need to illustrate more complex connections. The Lucidchart editor helps you do this by making every line fully customizable. Drag out your line, and then change the style and arrow options in the properties bar to show a unique type of relationship. The example to the left, for instance, shows a dependency relationship between two components.
Keep adding lines and nodes until you have finished describing the system. Feel free to add different colors to your diagram for a more professional or readable look.
Once you have finished drawing your diagram, be sure to proofread it for any errors. There may be logic mistakes or other inaccuracies. Deployment diagrams in particular often include a heavy amount of text, so double-check for any spelling typos. After you have reviewed, have a trusted colleague look over the document.
If you need to make UML diagrams, Lucidchart is the ideal tool for you. When you're finished drawing, you can publish documents to the community or share them via chat, email, or social media.