Deployment/physical diagrammenggambarkan detail bagaimana komponendi-deploy dalam infrastruktur sistem, dimanakomponen akan terletak (pada mesin, serveratau piranti keras apa), bagaimana kemampuanjaringan pada lokasi tersebut, spesifikasi server,dan hal-hal lain yang bersifat fisikal.Sebuah node adalah server, workstation ataupiranti keras lain yang digunakan untuk men-deploy komponen dalam lingkungansebenarnya.
- Bersifat statis- Memperlihatkan konfigurasi saat aplikasi dijalankan (saat runtime).- Memuat node beserta komponen- komponen yang ada didalamnya- Berhubungan dengan diagram komponen dimana deployment diagram memuat satu atau lebih komponen-komponen
UML Deployment Diagrams• Models the run-time architecture (topology) of: • Processors • Devices • Software components• Is ultimately traceable to initial requirements Topology Software Classes, objects, Use-case node component Collab., etc. requirement
UML Deployment Diagrams• When you model the static deployment view of a system, youll typically use deployment diagrams in one of three ways. – To model embedded systems – To model client/server systems – To model fully distributed systems
Modeling an Embedded System• An embedded system is a software-intensive collection of hardware that interfaces with the physical world.• Embedded systems involve software that controls devices such as motors, actuators, and displays and that, in turn, is controlled by external stimuli such as sensor input, movement, and temperature changes.• You can use deployment diagrams to model the devices and processors that comprise an embedded system.
Modeling an Embedded System• To model an embedded system – Identify the devices and nodes that are unique to your system – Provide visual cues, especially for unusual devices, by using the UMLs extensibility mechanisms to define system-specific stereotypes with appropriate icons – Model the relationships among these processors and devices in a deployment diagram.
Modeling a Client/Server System• A client/server system is a common architecture focused on making a clear separation of concerns between the systems user interface (which lives on the client) and the systems persistent data (which lives on the server).
Modeling a Client/Server System• To model a client/server system, – Identify the nodes that represent your systems client and server processors – Highlight those devices that are germane to the behavior of your system – Provide visual cues for these processors and devices via stereotyping. – Model the topology of these nodes in a deployment diagram
Modeling a Fully Distributed System• To model a fully distributed system – Identify the systems devices and processors as for simpler client/server systems – Pay close attention to logical groupings of nodes, which you can specify by using packages – Model these devices and processors using deployment diagrams
Stereotype Examples in Deployment Diagrams<<printer>> <<router>> <<carController>>HP LaserJet 5MP Cisco X2000 SAAB 9-5 Navigator
Communication Associations in Deployment Diagrams NEC PowerMate i-Select VL4 PC:ClientA * <<TCP/IP>> VAX:DB Server Silicon Graphics O2:Server * <<DecNet>> * * * Dell Dimension * 2350 PC:ClientB <<TCP/IP>>
Component Support in UML Deployment Diagrams UNIX Transaction server sub-system <<supports>> NEC Server
Deployment Diagrams in the form of Class Diagrams
Deployment Diagram ExampleThe deployment diagram below shows that the users access the Reporting Tool byusing a browser running on their local machine and connecting via HTTP over theircompanys intranet to the Reporting Tool. This tool physically runs on the ApplicationServer named w3reporting.myco.com. The diagram shows the Reporting Toolcomponent drawn inside of IBM WebSphere, which in turn is drawn inside of thenode w3.reporting.myco.com. The Reporting Tool connects to its reporting databaseusing the Java language to IBM DB2s JDBC interface, which then communicates tothe actual DB2 database running on the server named db1.myco.com using nativeDB2 communication. In addition to talking to the reporting database, the Report Toolcomponent communicates via SOAP over HTTPS to the Billboard Service.
UML Deployment Diagram Example• The three-dimensional boxes represent nodes, either software or hardware. Physical nodes should be labeled with the stereotype device, to indicate that it is a physical device such as a computer or switch.• Connections between nodes are represented with simple lines, and are assigned stereotypes such as RMI and message bus to indicate the type of connection.
Concise UML 2 Deployment Diagram• 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.
Network Diagrams• Network diagrams are often drawn using software-based drawing tools (figure below was drawn using Microsoft Visio)
Deployment Diagram• Shows the configuration of run-time processing nodes and the components that live on them
Diagrams in UML – Component Diagramshows the organizations and dependencies among a set of components (mostly <<uses>>). In UML 1.1, a component represented implementation items, such as files and executables; … In UML 2.0, a component is a replaceable/reusable, architecture/design-time construct w. interfaces Billing.exe Register.exe Billing User Course People.dll Course.dll Student Professor Course Course Offering Student Professor
Diagrams in UML – Deployment Diagram• shows the configuration of run-time processing elements and the software processes living on them.• visualizes the distribution of components across the enterprise. Registrar Webserver Course Oracle Server Register.exe Course Course Offering RMI, sockets TCP/IP wireless Library Server Main Building Solaris People.dll Billing.exe Dorm PC People Database Student Professor