При моделировании топологии системы часто бывает полезно визуализировать или специфицировать физическое распределение ее артефактов по процессорам и устройствам, входящим в состав системы.
Моделирование распределения компонентов состоит из следующих шагов:
1. Припишите каждый значимый артефакт системы к определенному узлу.
2. Рассмотрите возможности дублирования размещения артефактов. Часто встречается распространен случай, когда одни и те же артефакты (например, некоторые исполняемые программы и библиотеки) размещаются одновременно в нескольких узлах.
3. Изобразите распределение артефактов по узлам одним из трех способов:
o не делайте размещение видимым, но оставьте его на заднем плане модели, то есть в спецификации узла;
o соедините каждый узел с артефактами, которые на нем развернуты, отношением зависимости;
o перечислите артефакты, развернутые на узле, в дополнительном разделе.
Для иллюстрации третьего способа на рис. 2.37, основанном на предыдущих диаграммах, специфицированы исполняемые артефакты, размещенные в каждом узле. Эта диаграмма несколько отличается от предыдущих и является диаграммой объектов, на которой визуализированы конкретные экземпляры каждого узла. В данном случае экземпляры RAID -массив и Киоск анонимны, а у остальных двух экземпляров есть имена (с для Консоли и s для Сервера). Для каждого процессора на рисунке отведен дополнительный раздел, показывающий, какие компоненты на нем развернуты. Объект Сервер также изображен со своими атрибутами (processorSpeed - скоростьПроцессора и memory - память), причем их значения видимы.
|
|
Раздел размещения может содержать список имен артефактов в текстовом виде или вложенные графические символы артефактов.
Рис. 2.37 Моделирование распределения компонентов
Артефакты не обязательно должны быть статически распределены по узлам системы. В UML можно моделировать динамическую миграцию артефактов из одного узла в другой, как бывает в системах, включающих агенты, или в системах повышенной надежности, в состав которых входят кластерные серверы и реплицируемые базы данных.
Хорошо структурированный узел обладает следующими свойствами:
· представляет четкую абстракцию некоей сущности из словаря аппаратных средств области решения;
· декомпозирован только до уровня, необходимого для того, чтобы донести ваши идеи до читателя;
· раскрывает только те атрибуты и операции, которые относятся к моделируемой области;
· явно показывает, какие артефакты на нем развернуты;
· связан с другими узлами способом, отражающим топологию реальной системы.
Изображая узел в UML, руководствуйтесь следующими принципами:
· определите для своего проекта или организации в целом набор стереотипов с подходящими пиктограммами, которые несут очевидную для читателя смысловую нагрузку;
· показывайте только те атрибуты и операции (если таковые существуют), которые необходимы для понимания назначения узла в данном контексте.