OpenU.Ru
Диаграмма, на которой изображается конфигурация для
работающих узлов и экземпляров
компонента, а также объектов,
которые на них существуют. Компоненты представляют собой выполнимые блоки программного
кола. Компоненты, которые не существуют как единицы времени выполнения (в том
случае, если они не были задействованы при компиляции), на этих диаграммах не
указываются. Их место - на диаграммах компонентов.
На диаграмме развертывания изображаются экземпляры компонентов, в то время как
на диаграмме компонентов показаны определения их типов.
См. component, interface,
node.
Семантика
В представлении развертывания содержатся экземпляры
узлов, соединенные между собой коммуникационными связями. Узлы могут содержать
экземпляры времени выполнения, такие как экземпляры компонентов и объекты. Экземпляры
компонентов и объекты могут, в свою очередь, содержать в себе прочие объекты.
Модель может демонстрировать зависимости, существующие между экземплярами и
их интерфейсами. Кроме этого, она может отображать миграцию сущностей между
узлами и другими контейнерами. У представления развертывания есть две формы
- форма дескриптора и форма экземпляра. Форма экземпляра (которую мы описали
выше) описывает месторасположение конкретных экземпляров компонентов на конкретных
экземплярах узлов в качестве одной из составляющих конфигурации системы.
Форма дескриптора - более привычный вид представления развертывания. Она указывает,
на каких видах узлов могут существовать определенные компоненты, а также какие
виды узлов могут соединяться между собой. Иными словами, эта форма напоминает
диаграмму классов.
Нотация
Диаграмма развертывания представляет собой схему, состоящую из символов узлов,
соединенных маршрутами коммуникационных ассоциаций (рис. 90). Внутри символов
узлов могут находиться экземпляры компонентов. Это указывает на то, что компонент
существует или выполняется на данном узле. Символы компонентов, в свою очередь,
могут содержать в себе символы объектов. Это обозначает, что объект является
частью компонента. Компоненты связаны между собой пунктирными стрелками зависимостей
(возможно, через интерфейсы). Такие связи обозначают, что один компонент использует
услуги другого. Когда на диаграмме нужно точно указать вид зависимости, используют
стереотип.
Рис. 90. Диаграмма развертывания системы клиент-сервер
Диаграммы развертывания во многом напоминают диаграммы
объектов. Как правило, на них изображаются отдельные экземпляры узлов, задействованных
в системе. Куда реже встречаются диаграммы развертывания, на которых показаны
существующие типы узлов и их отношения с другими типами узлов, как это делается
на диаграмме классов.
Миграцию компонентов между узлами или объектов между компонентами можно изобразить
с помощью ключевого слова "become" (превращаться), которое ставится
рядом с пунктирной стрелкой. В этом случае компонент или объект является резидентом
на споем узле или в компоненте только в течение определенного периода времени.
На рис. 133 изображена диаграмма развертывания, на которой показано передвижение
объекта между узлами.
См. become.