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

13.5.2. Відношення розширення

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

Відношення розширення між варіантами використання позначається пунктирною лінією зі стрілкою (варіант відношення залежності), направленою від того варіанту використання, який є розширенням для початкового варіанту використання. Така лінія зі стрілкою позначається ключовим словом "extend" ("розширює"), як показано на рис. 18.7.

Рис. 18.7. Приклад графічного зображення відношення розширення між варіантами використання

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

Один з варіантів використання може бути розширенням для декількох базових варіантів, а також мати як власні розширення дещо інших варіантів. Базовий варіант використання може додатково ніяк не залежати від своїх розширень.

Семантика відношення розширення визначається таким чином. Якщо екземпляр варіанту використання виконує деяку послідовність дій, яка визначає його поведінку, і при цьому є точка розширення на екземпляр іншого варіанту використання, яка є першою зі всіх точок розширення у початкового варіанту, то перевіряється умова даного відношення. Якщо умова виконується, початкова послідовність дій розширюється за допомогою включення дій екземпляра іншого варіанту використання. Слід відмітити, що умова відношення розширення перевіряється лише один раз – при першому посиланні на точку розширення, і якщо воно виконується, то всі розширювані варіанти використання вставляються в базовий варіант.

У представленому вище прикладі (рис. 18.7) при оформленні замовлення на придбання товару тільки в деяких випадках може потрібно надавати клієнтові каталог всіх товарів. При цьому умовою розширення є запит від клієнта на отримання каталогу товарів. Очевидно, що після отримання каталогу клієнтові необхідно якийсь час на його вивчення, протягом якого оформлення замовлення припиняється. Після ознайомлення з каталогом клієнт вирішує або на користь вибору окремого товару, або відмови від покупки взагалі. Сервіс або варіант використання "Оформити замовлення на придбання товару" може відреагувати на вибір клієнта вже після того, як клієнт отримає для ознайомлення каталог товарів.

Рис. 18.8. Графічне зображення відношення розширення з примітками умов виконання варіантів використання

Точка розширення може бути як окремою точкою в послідовності дій, так і множиною окремих точок. Якщо відношення розширення має деяку послідовність точок розширення, тільки перша з них може визначати множину окремих точок. Всі останні повинні визначати в точності одну таку точку. Яка з точок має бути першою точкою розширення, тобто визначатися єдиним розширенням. Такі посилання на розташування точок розширення можуть бути представлені різними способами, наприклад, за допомогою тексту примітки на природній мові (рис. 18.8), перед- і після- умов, а також за допомогою використання імен станів в автоматі.