Диаграммы размещения (Deployment Diagram). Назначение, основные элементы (Processor, Device, Connection).
Первой из диаграмм физического представления является диаграмма компонентов. Вторая форма физического представления программной системы - это диаграмма развертывания (размещения).
Диаграммы размещения (deployment diagrams) отражают физические взаимосвязи между программными и аппаратными компонентами системы, а также используются для изображения маршрутов перемещения объектов в распределенной системе.
Каждый узел на диаграмме размещения представляет собой некоторый тип вычислительного устройства - в большинстве случаев, часть аппаратуры. Соединения между узлами показывают коммуникационные каналы, с помощью которых осуществляются системные взаимодействия. Компоненты на диаграмме размещения представляют собой физические модули программного кода. Зависимости между компонентами должны совпадать с зависимостями между пакетами. Эти зависимости показывают каким образом одни компоненты взаимодействуют с другими.
Диаграмма развертывания применяется для представления общей конфигурации и топологии распределенной программной системы и содержит изображение размещения компонентов по отдельным узлам системы. Кроме того, диаграмма развертывания показывает наличие физических соединений - маршрутов передачи информации между аппаратными устройствами, задействованными в реализации системы.
Диаграмма развертывания содержит графические изображения процессоров, устройств, процессов и связей между ними. В отличие от диаграмм логического представления, диаграмма развертывания является единственной для системы в целом, поскольку должна отражать все особенности ее реализации.
Узел (node) представляет собой физически существующий элемент системы, который может обладать вычислительным ресурсом или являться техническим устройством .
В качестве вычислительного ресурса узла может рассматриваться один или несколько процессоров, а также объем электронной или магнитооптической памяти. Однако в языке UML понятие узла включает в себя не только вычислительные устройства (процессоры), но и другие механические или электронные устройства, такие как датчики, принтеры, модемы, цифровые камеры, сканеры и манипуляторы.
Графически узел на диаграмме развертывания изображается в форме трехмерного куба. Узел имеет имя, которое указывается внутри этого графического символа. Сами узлы могут представляться как на уровне типа (рис. 13.1, а), так и на уровне экземпляра (рис. 13.1, б).
Рис. 13.1.Графическое изображение узла на диаграмме развертывания
В первом случае имя узла записывается в форме: <Имя типа узла > без подчеркивания и начинается с заглавной буквы. Во втором - имя узла -экземпляра записывается в виде: <имя узла ':' Имя типа узла >, а вся запись подчеркивается. Имя типа узла указывает на разновидность узлов, присутствующих в модели системы. Так, на представленном рисунке (рис. 13.1, а) узел с именем Видеокамера относится к общему типу и никак не конкретизируется. Второй узел (рис. 13.1, б) является узлом -экземпляром конкретной модели сканера.
Изображения узлов могут расширяться, чтобы включить дополнительную информацию о спецификации узла.
Рис. 13.2.Графическое изображение узла-экземпляра с дополнительной информацией в форме помеченного значения
При необходимости явно указать компоненты, которые размещаются или выполняются на отдельном узле, это можно сделать двумя способами. Первый из них позволяет разделить графический символ узла на две секции горизонтальной линией. В верхней секции записывают имя узла, а в нижней - размещенные на этом узле компоненты (рис. 13.3, а).
Второй способ разрешает показывать на диаграмме развертывания узлы с вложенными изображениями компонентов (рис. 13.3, б). Важно помнить, что в качестве таких вложенных компонентов могут выступать только исполняемые компоненты и динамические библиотеки.
Рис. 13.3.Варианты графического изображения узлов-экземпляров с размещаемыми на них компонентами
В качестве дополнения к имени узла могут использоваться различные текстовые стереотипы, которые явно специфицируют назначение этого узла. Для этой цели были предложены следующие текстовые стереотипы: "processor" (процессор), "sensor" (датчик), "modem" (модем), "net" (сеть), "printer" (принтер) и другие, смысл которых понятен из контекста.
На диаграммах развертывания допускаются специальные условные обозначения для различных физических устройств, графическое изображение которых проясняет назначение или выполняемые устройством функции.
Наиболее известны два специальных графических стереотипа для обозначения разновидностей узлов. Первый обозначает ресурсоемкий узел (processor), под которым понимается узел с процессором и памятью, необходимыми для выполнения исполняемых компонентов. Он изображается в форме куба с боковыми гранями, окрашенными в серый цвет (рис. 13.4, а). Второй стереотип в форме обычного куба обозначает устройство (device), под которым понимается узел без процессора и памяти (рис. 13.4, б). На этом типе узлов не могут размещаться исполняемые компоненты программной системы.
Рис. 13.4.Варианты изображения графических стереотипов узлов