13 Діаграми розгортання

9 Діаграммиразвертиванія (deployment diagram)

Фізичне представлення програмної системи не може бути повним, якщо відсутня інформація про те, на якій платформі і на яких обчислювальних засобах вона реалізована. Діаграма розгортання призначена для візуалізації елементів і компонентів програми, які існують лише на етапі її виконання (runtime). При цьому подаються тільки компоненти-екземпляри програми, які є здійснимими файлами або динамічними бібліотеками. Ті компоненти, які не використовуються на етапі виконання, на діаграмі розгортання не відображаються. Так, компоненти з вихідними текстами програм можуть бути присутніми тільки на діаграмі компонентів. На діаграмі розгортання вони не вказуються.

Діаграма розгортання містить графічні зображення процесорів, пристроїв, процесів і зв'язків між ними. На відміну від діаграм логічного представлення, діаграма розгортання є єдиною для системи в цілому, оскільки повинна повністю відображати особливості її реалізації. Ця діаграма, по суті, завершує процес ООАП для конкретної програмної системи і її розробка, як правило, є останнім етапом специфікації моделі.

9.1 Елементи діаграми компонентів

До основних елементів діаграми розгортання відносяться вузли і з'єднання.

Вузол (node) являє собою деякий фізично існуючий елемент системи, що володіє деяким обчислювальним ресурсом. Як обчислювального ресурсу вузла може розглядатися наявність щонайменше деякого об'єму електронної або магнитооптической пам'яті і / або процесора. Поняття вузла також може включати в себе і інші механічні або електронні пристрої, такі як датчики, принтери, модеми, цифрові камери, сканери і маніпулятори.

Графічно на діаграмі розгортання вузол зображується у формі тривимірного куба. Вузол має власне ім'я, яке вказується всередині цього графічного символу. Самі вузли можуть представлятися як в якості типів (рис. 67, а), так і в якості примірників (рис. 67, б).

Мал. 67 Графічне зображення вузла на діаграмі розгортання

Позначене значення - це розширення властивостей елемента UML, що дозволяє вводити нову інформацію в його специфікацію. У кожної сутності в UML є фіксований набір властивостей: класи мають імена, атрибути і операції; асоціації-імена і кінцеві точки (кожна зі своїми властивостями) і т.д. Помічені значення дозволяють додавати нові властивості.

Наприклад, як показано на рис. 68, в діаграмі розгортання можна вказати число процесорів, встановлених на вузлі кожного виду, або зажадати, щоб кожному компоненту був приписаний стереотип бібліотеки, якщо його передбачається розгорнути на клієнті або сервері.

Мал. 68 Помічені значення

Так само, як і на діаграмі компонентів, зображення вузлів можуть розширюватися, щоб включити деяку додаткову інформацію про специфікації вузла. Якщо додаткова інформація відноситься до імені вузла, то вона записується під цим ім'ям в формі поміченого значення (рис. 69).

13 Діаграми розгортання

Мал. 69 Графічне зображення вузла-екземпляра з додатковою інформацією в формі поміченого значення

З'єднання вказують відносини між вузлами і є різновидом асоціації. Зображуються відрізками ліній без стрілок. Наявність такої лінії вказує на необхідність організації фізичного каналу для обміну інформацією між відповідними вузлами. Характер з'єднання може бути додатково специфікований приміткою, поміченим значенням або обмеженням (рис. 70). У розглянутому прикладі явно визначені не тільки вимоги до швидкості передачі даних в локальній мережі за допомогою поміченого значення, а й рекомендації по технології фізичної реалізації з'єднань в формі примітки.

13 Діаграми розгортання

Мал. 70 Фрагмент діаграми розгортання з сполуками між вузлами

Крім з'єднань на діаграмі розгортання можуть бути присутніми відносини залежності між вузлом і розгорнутими на ньому компонентами. Подібний спосіб є альтернативою вкладеному зображенню компонентів всередині символу вузла, що не завжди зручно, оскільки робить цей символ надмірно об'ємним (рис. 71).

13 Діаграми розгортання

Мал. 71 Діаграма розгортання з відношенням залежності між вузлом і розгорнутими на ньому компонентами

9.2 Приклад діаграми розгортання

Розглянемо фрагмент фізичного представлення системи віддаленого обслуговування клієнтів банку (рис. 72).

13 Діаграми розгортання

Мал. 72 Діаграма розгортання для системи віддаленого обслуговування клієнтів банку

На діаграмі розгортання вузлами системи є віддалений термінал (вузол-тип) і сервер банку (вузол-екземпляр). Вказана залежність компонента реалізації діалогу "dialog.exe" на вилученому терміналі від інтерфейсу lAuthorise, реалізованого компонентом "main.exe", який, в свою чергу, розгорнуто на анонімному вузлі-екземплярі "Сервер банку". Останній залежить від компонента бази даних "Клієнти банку", який розгорнуто на цьому ж сайті. Примітка вказує на необхідність використання захищеної лінії зв'язку для обміну даними в даній системі. Інший варіант запису цієї інформації полягає в доповненні діаграми вузлом зі стереотипом "закрита мережа".