Beruflich Dokumente
Kultur Dokumente
Lecture 19
UML Static Structure
UML Deployment Diagram
Deployment Diagram
Another model in the implementation diagram category
UML 2.0 defines thirteen types of diagrams, divided into three categories:
1. Structure Diagrams:
i.
ii.
iii.
Class Diagram
Object Diagram
Component Diagram
iv.
Deployment Diagram
v.
vi.
vii.
Composite
p
Structure Diagram
g
Package Diagram
Profile Diagram
2. Behavior Diagrams:
i.
ii.
iii.
3. Interaction Diagrams:
i.
ii.
iii.
iv.
Sequence Diagram
Communication Diagram
Timing Diagram,
Interaction Overview Diagram
Software EngineeringEngineering-II (CSC 392)
Deployment Diagram
Artifact
An artifact is the specification of a physical piece of information that is used or
produced by a software development process, or by deployment and operation of a
system
The Deployments package specifies a set of constructs that can be used to define the execution
architecture of systems that represent the assignment of software artifacts to nodes
The notation in a deployment diagram includes the notation elements used in a component diagram,
with a couple of additions, including the concept of a node
Nodes are typically defined in a nested manner, and represent either hardware devices or software
execution environments
Artifacts represent concrete elements in the physical world that are the result of a development process
The Deployment diagram models the hardware used in implementing a system and the association
between those hardware components
Components can also be shown on a Deployment diagram to show the location of their deployment
Deployment diagrams can also be used earlyon in the design phase to document the physical
architecture of a system
source files, scripts, and binary executable files, a table in a database system, a development
deliverable, or a word-processing document, a mail message
Artifacts may have composition associations to other artifacts that are nested
within it
For instance, a deployment descriptor artifact for a component may be contained within the
artifact that implements that component. In that way, the component and its descriptor are
deployed to a node instance as one artifact instance
The UML Standard Profile defines several standard stereotypes that apply to
Artifacts
For example, an EJB profile might define jar as a subclass of executable for executable Java
archives.
4/26/2010
Artifact: Notation
Deployment Relationship
Diagram Elements
Node
A node represents a piece of
hardware in the system
2.
3.
and Associations
Node (cont.)
10
Device
A Device is a physical computational resource with processing
capability upon which artifacts may be deployed for execution.
Devices may be complex (i.e., they may consist of other devices)
Hierarchical nodes (i.e., nodes within nodes) can be modeled using composition
associations, or by defining an internal structure for advanced modeling
applications
Non-normative examples of nodes are application server, client workstation,
Nonmobile device, embedded device
11
12
4/26/2010
Association
Dependency
A dependency is a relationship that signifies that a
single or a set of model elements requires other model
elements for their specification or implementation
Software EngineeringEngineering
13 -II (CSC 392)
Deployment Location
14
15
16
17
18
4/26/2010
19
20
Components
of the appropriate
type
p
pp p
yp are then deployed
p y to specific
p
ExecutionEnvironment nodes
Typical examples of standard ExecutionEnvironments that specific profiles
might define stereotypes for are OS, workflow engine, database
system, and J2EE container
An ExecutionEnvironment can optionally have an explicit interface of
system level services that can be called by the deployed elements, in those
cases where the modeler wants to make the ExecutionEnvironment
software execution environment services explicit
Software EngineeringEngineering-II (CSC 392)
21
22
Manifestation: Semantics
23
24
4/26/2010
Manifestation: Notation
A manifestation is notated in the same way as an abstraction
dependency,
i.e., as a general dashed line with an open arrow-head labeled with the
keyword <<manifest>>
25
26
Example
27
Software EngineeringEngineering
28 -II (CSC 392)
Software EngineeringEngineering
29 -II (CSC 392)
30
4/26/2010
An Occurrence of Deployment
Diagram
Software EngineeringEngineering
31 -II (CSC 392)
32
References
A better example is shown in the figure below. Software elements are now simply
listed by their physical filenames, information that developers are very likely to be
interested in, and thus a more compact diagram is possible
A drum is used as a visual stereotype for the University DB database, making it
easier to distinguish on the diagram. Another difference is that the concise version
shows less details, not as many tagged values are shown as this information can be
captured in either supporting documentation, configuration files, or source code
Ian Sommerville
Sommerville,, Software Engineering,
Engineering, 2000.
Craig Larman
Larman,, Applying UML and Patterns, An Introduction to object
object-Oriented Analysis and Design and The Unified Process,
Process, Second Edition,
2002.
http://www.uml.org
http://www.omg.org
http://www.agilemodeling.com/artifacts/deploymentDiagram.htm
33
34