Deployment Diagram in Unified Modeling Language(UML) (original) (raw)

Last Updated : 23 Jul, 2025

A Deployment Diagram is a type of Structural UML Diagram that shows the physical deployment of software components on hardware nodes. It illustrates the mapping of software components onto the physical resources of a system, such as servers, processors, storage devices, and network infrastructure.

Deployment-Diagram

Table of Content

What is a Deployment Diagram?

A Deployment Diagram shows how the software design turns into the actual physical system where the software will run. They show where software components are placed on hardware devices and shows how they connect with each other. This diagram helps visualize how the software will operate across different devices

**Key elements of a Deployment Diagram

Below are the key elements of deployment diagram:

**Components and Notations in Deployment Diagram

Below are the components and their notations in deployment diagram:

1. Component

Component-

A component represents a modular and reusable part of a system, typically implemented as a software module, class, or package. It encapsulates its behavior and data and can be deployed independently.

Typically represented as a **rectangle with two smaller rectangles protruding from its sides, indicating ports for connections. The component's name is written inside the rectangle.

2. Artifact

Artifact

An artifact represents a physical piece of information or data that is used or produced in the software development process. It can include source code files, executables, documents, libraries, configuration files, or any other item.

Typically represented as a **rectangle with a folded corner, labeled with the artifact's name. Artifacts may also include additional information, such as file extensions or versions.

3. Interface

Interface

An interface defines a contract specifying the methods or operations that a component must implement. It represents a point of interaction between different components or subsystems.

Represented as a **circle or ellipse labeled with the interface's name. Interfaces can also include provided and required interfaces, denoted by "+" and "-" symbols, respectively.

4. Node

Node

A node represents a physical or computational resource, such as a hardware device, server, workstation, or computing resource, on which software components can be deployed or executed.

Represented as a box with rounded corners, usually labeled with the node's name. Nodes can also include nested nodes to represent hierarchical structures.

5. **Communication path

Communication-Path

A straight line that represents communication between two device nodes. Dashed lines in deployment diagrams represents relationships or dependencies between elements, indicating that one element is related to or dependent on another.

**Use Cases of Deployment Diagrams

Below are the use cases of deployment diagrams:

**Steps for creating a Deployment Diagram

Below are the main steps for creating a deployment diagram:

**Deployment Patterns

Deployment patterns are standardized methods for efficiently installing software on hardware infrastructure. They offer guidance for organizing and deploying software components, addressing challenges like scalability, reliability and performance.

**Real-World Examples For Deployment Diagram

Below are the real-world examples for deployment diagram:

Example 1:

Deployement Diagram For Mobile Banking Andorid Services.

In this example, one node represents the client’s Android device. The components represent the software installed on these devices, with the banking application being the specific component on the Android device.

Overall, the deployment diagram visually illustrates how software components are set up on hardware nodes and how they interact to provide the necessary functions to the user.

Deployment-Diagram-for-Mobile-Banking-Android-Services-(1)

**Example 2:

Deployement Diagram For Online Exam Registration System.

The online exam registration process typically includes a series of features designed to streamline and simplify the registration experience for users. After logging in or registering for an account, users can browse and select their desired exam from a list of available options.

Deployement-Diagram-For-Online-Exam-Registration-System-(1)

Below is the explanation of the above example:

**Integration of Deployment Diagrams with Other UML Diagrams

Integration of Deployment Diagrams with other UML diagrams helps in providing a comprehensive view of the system, showing both the logical structure (as depicted in other UML diagrams) and the physical deployment of the system components.

**Benefits of Deployment Diagrams

Below are the benefits of deployment diagram:

**Challenges of Deployment Diagrams

Below are the challenges of deployment diagram: