Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Проектування інформаційних систем.doc
Скачиваний:
95
Добавлен:
21.09.2019
Размер:
28.77 Mб
Скачать

18.1. Варіант використання

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

Окремий варіант використання позначається на діаграмі еліпсом, всередині якого міститься його коротка назва або ім'я у формі дієслова із словами пояснень (рис. 18.1).

Рис. 18.1. Графічне позначення варіанту використання

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

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

Варіанти використання описують не тільки взаємодії між користувачами і сутністю, але також реакції сутності на отримання окремих повідомлень від користувачів і сприйняття цих повідомлень за межами сутності. Варіанти використання можуть включати опис особливостей способів реалізації сервісу і різних виняткових ситуацій, таких як коректне опрацювання помилок системи. Множина варіантів використання в цілому повинна визначати всі можливі сторони очікуваної поведінки системи. Для зручності множина варіантів використання може розглядатися як окремий пакет.

З системно-аналітичної точки зору варіанти використання можуть застосовуватися як для специфікації зовнішніх вимог до проектованої системи, так і для специфікації функціональної поведінки вже існуючої системи. Окрім цього, варіанти використання неявно встановлюють вимоги, що визначають, як користувачі повинні взаємодіяти з системою, щоб мати можливість коректно працювати з сервісами, що надаються даною системою!

Примітка

Кожний виконуваний варіантом використання метод реалізується як неподільна транзакція, тобто виконання сервісу не може бути перерване ніяким іншим екземпляром варіанту використання.

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

У метамоделі UML варіант використання є підкласом класифікатора, який описує послідовності дій, що виконуються окремим екземпляром варіанту використання. Ці дії включають зміни стану і взаємодії з середовищем варіанту використання. Ці послідовності можуть описуватися різними способами, включаючи такі, як графи діяльності і автомати.

Прикладами варіантів використання можуть бути наступні дії: перевірка стану поточного рахунку клієнта, оформлення замовлення на покупку товару, отримання додаткової інформації про кредитоспроможність клієнта, відображення графічної форми на екрані монітора та інші дії.