Deployment Diagram in UML Original

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 5

A DEPLOYMENT DIAGRAM

A deployment diagram is a type of diagram in the Unified Modeling Language


(UML) that illustrates the physical deployment of software components and
hardware nodes in a system. It shows how software components are deployed
on hardware nodes and how these nodes are interconnected.

When to Use Deployment Diagram


 What existing systems will the newly added system need to interact or
integrate with?
 How robust does system need to be (e.g., redundant hardware in case of
a system failure)?
 What and who will connect to or interact with system, and how will they
do it
 What middleware, including the operating system and communications
approaches and protocols, will system use?
 What hardware and software will users directly interact with (PCs,
network computers, browsers, etc.)?
 How will you monitor the system once deployed?
 How secure does the system needs to be (needs a firewall, physically
secure hardware, etc.)?

The purpose of a deployment diagram includes;


 To provide a high-level view of the system's architecture,
 They show the structure of the run-time system
 They capture the hardware that will be used to implement the system
and the links between different items of hardware.
 They model physical hardware elements and the communication paths
between them
 They can be used to plan the architecture of a system.
 They are also useful for Document the deployment of software
components or nodes
 It focusing on the distribution and configuration of the software and
hardware components,
 It helps stakeholders understand the physical aspects of the system, such
as how the software is deployed on different machines, servers, or
devices, and how they interact with each other.
Components in a deployment diagram represent the software artifacts or
modules that are deployed on the hardware nodes. These components can
include executables, libraries, files, databases, or any other software artifacts.
The hardware nodes represent the physical devices or machines on which the
software components are deployed, such as servers, personal computers,
routers, or mobile devices.
The connections between the components and nodes are represented by
deployment relationships, which indicate how the components are deployed
on the nodes. These relationships can be association, composition, or
dependency relationships. Additionally, deployment diagrams may include
communication paths to illustrate how nodes communicate with each other.
Deployment diagrams can also show deployment stereotypes, which provide
additional information about the nodes and components. Stereotypes can
include labels like "web server," "database server," "firewall," or "mobile
device," among others.
Key points about deployment diagrams include:
 Components: The diagram shows the software components or artifacts
that are deployed on hardware nodes. These components can represent
applications, modules, libraries, or any other software elements. Each
component is depicted with its name and optional icon.

 Nodes: Hardware nodes represent physical devices, machines, or


execution environments where the software components are deployed.
They can include servers, personal computers, routers, mobile devices,
or any other relevant hardware.

 Deployment Relationships: Deployment relationships illustrate how the


software components are associated with specific hardware nodes.
These relationships describe the deployment process and can be
represented using various connectors, such as dashed lines, solid lines,
or arrows. They indicate which components are deployed on which
nodes.

 Communication Paths: Deployment diagrams may include


communication paths to show how nodes interact with each other.
These paths can be depicted using connectors or lines, demonstrating
the communication channels between nodes.

 Stereotypes: Stereotypes provide additional information about the


nodes and components in the deployment diagram. They can be used to
label nodes with specific roles or functionalities, such as "web server,"
"database server," "firewall," or "mobile device." Stereotypes help in
understanding the purpose and characteristics of each node.

 Constraints: Constraints are used to specify conditions or requirements


related to the deployment. For example, a constraint might indicate that
a component requires a specific operating system or that it must be
deployed on a node with certain hardware capabilities, like a minimum
amount of memory or processing power.
Deployment diagrams are commonly used by software architects, developers,
and system administrators to gain insights into the physical deployment of a
system. They assist in analyzing how the software components interact with
the hardware infrastructure and support decision-making regarding scalability,
performance, and resource allocation. By visualizing the deployment,
stakeholders Acan identify potential bottlenecks, plan for fault tolerance, and
optimize the system's configuration for efficient operation.
DEPLOYMENT DIAGRAM

A deployment diagram is a UML diagram type that shows the execution architecture of a
system, including the nodes such as hardware or software execution environment, and the
middleware connecting them; it can also define as modeling the physical architecture of a
system.

DEPLOYMENT DIAGRAM NOTATION

In order to draw a deployment diagram, you need to first become familiar with the following
deployment diagram notations and deployment diagram element.
Node

Deployment Diagram Node


A node, represent as a cub, is a physical entity that executes one or more component,
subsystem or executable. A nose it could be a hardware or software element.
ARTIFACTS

Artifacts are concrete elements that are caused by a development process. Examples of
artifacts are libraries, archives, configuration files, executable files etc.
COMMUNICATION ASSOCIATION

Deployment Diagram
Communication path
This represent by a solid line between two nodes. It shows the path of communication
between nodes.

Devices
Deployment Diagram Device
A device is a node that is used to represent a physical computational resource in a system. An
example of a device is an application server.
Deployment Specifications

Deployment Diagram
Specifications

Deployment specification is a configuration file, such as a text file. It describes how an


artifactis deployed on a node.

You might also like