
- •1.1. Методологія процедурно‑ орієнтованого програмування
- •1.2. Методологія об'єктно-орієнтованого програмування
- •1.3. Методологія об'єктно-орієнтованого аналізу і проектування
- •1.4. Методологія системного аналізу і системного моделювання
- •Розділ 2
- •2.1. Передісторія. Математичні основи
- •Мал. 2.4. Приклади неорієнтованого (а) і орієнтованого (б) графів
- •Мал. 2.5. Приклади неорієнтованого (а) і орієнтованого (б) дерев
- •Мал. 2.6. Ієрархічні схеми неорієнтованого дерева (а) і орієнтованого дерева (б)
- •2.2. Діаграми структурного системного аналізу
- •I (Input) – вхід, т. Е. Все, що поступає в процес або споживається процесом.
- •2.3. Основні етапи розвитку uml
- •2. Забезпечити початкові поняття язика uml можливістю розширення і спеціалізації для більш точного представлення моделей систем в конкретній наочній області.
- •3. Опис язика uml повинен підтримувати таку специфікацію моделей, яка не залежить від конкретних язиків програмування і інструментальних засобів проектування програмних систем.
- •4. Опис язика uml повинен включати семантичний базис для розуміння загальних особливостей ооап.
- •7. Інтегрувати в себе новітні і якнайкращі досягнення практики ооап.
- •3.2. Загальна структура язика uml
- •3.3. Пакети в язиці uml
- •3.4. Основні пакети метамоделі язика uml
- •3.5. Специфіка опису метамоделі язика uml
- •3.6. Особливості зображення діаграм язика uml
- •4.1. Варіант використовування
- •4.2. Актори
- •4.3. Інтерфейси
- •4.4. Примітки
- •4.5. Відносини на діаграмі варіантів використовування
- •4.6. Приклад побудови діаграми варіантів використовування
- •4.7. Рекомендації по розробці діаграм варіантів використовування
- •5.1. Клас
- •5.2. Відносини між класами
- •5.5. Шаблони або класи, що параметризуються
- •5.6. Рекомендації по побудові діаграм класів
- •6.1. Автомати
- •Include – ця мітка використовується для звернення до підавтомата, при цьому наступний за нею вираз дії містить ім'я цього підавтомата.
- •6.3. Перехід
- •6.4. Складовий стан і підстан
- •6.5. Історичний стан
- •Мал. 6.10. Графічне зображення недавнього (а) і давнього (б) історичного стану
- •6.6. Складні переходи
- •Мал. 6.11. Графічне зображення паралельного переходу з паралельних станів (а) і паралельного переходу в паралельні стани (б)
- •6.7. Заключні рекомендації по побудові діаграм станів
- •7.1. Стан дії
- •7.2. Переходи
- •7.5. Рекомендації по побудові діаграм діяльності
- •8.2. Повідомлення
- •Мал. 8.7. Діаграма послідовності із стереотипними значеннями повідомлень
- •8.3. Приклад побудови діаграми послідовності
- •8.4. Заключні рекомендації по побудові діаграм послідовності
- •9.1. Кооперація
- •9.3. Зв'язки
- •9.4. Повідомлення
- •9.6. Заключні рекомендації по побудові діаграм кооперації
- •10.1. Компоненти
- •10.2. Інтерфейси
- •10.3. Залежність
- •10.4. Рекомендації по побудові діаграми компонентів
- •11.1. Вузол
- •11.2. З'єднання
- •Мал. 11.4. Фрагмент діаграми розгортання із з'єднаннями меходу вузлами
- •11.3. Рекомендації по побудові діаграми розгортання
- •12.1. Загальна характеристика case‑ засобу Rational Rose 98/2000
- •12.2. Особливості робочого інтерфейсу Rational Rose
- •12.3. Початок роботи над проектом в середовищі Rational Rose
- •12.4. Розробка діаграми варіантів використовування в середовищі Rational Rose
- •12.5. Розробка діаграми класів в середовищі Rational Rose
- •12.6. Розробка діаграми станів в середовищі Rational Rose
- •12.7. Розробка діаграми послідовності в середовищі Rational Rose
- •12.8. Розробка діаграми кооперації в середовищі Rational Rose
- •12.9. Розробка діаграми компонентів в середовищі Rational Rose
- •12.10. Розробка діаграми розгортання в середовищі Rational Rose
4.3. Інтерфейси
Інтерфейс (interface) служить для специфікації параметрів моделі, які видимі ззовні без вказівки їх внутрішньої структури. В язиці UML інтерфейс є класифікатором і характеризує тільки обмежену частину поведінки модельованого єства. Стосовно діаграм варіантів використовування, інтерфейси визначають сукупність операцій, які забезпечують необхідний набір сервісів або функціональності для акторів. Інтерфейси не можуть містити ні атрибутів, ні станів, ні направлених асоціацій. Вони містять тільки операції без вказівки особливостей їх реалізації. Формально інтерфейс еквівалентний абстрактному класу без атрибутів і методів з наявністю тільки абстрактних операцій.
На діаграмі варіантів використовування інтерфейс зображається у вигляді маленького круга, поряд з яким записується його ім'я (мал. 4.3, а). Як ім'я може бути іменник, який характеризує відповідну інформацію або сервіс (наприклад, «датчик», «сирена», «відеокамера»), але частіше рядок тексту (наприклад, «запит до бази даних», «форма введення», «пристрій подачі звукового сигналу»). Якщо ім'я записується на англійському, то воно повинне починатися із заголовної букви I, наприклад, ISecurelnformation, ISensor (мал. 4.3, би).
Мал. 4.3. Графічне зображення інтерфейсів на діаграмах варіантів використовування
Примітка
Імена інтерфейсів підкоряються загальним правилам найменування компонентів язика UML, т. е. ім'я може складатися з будь-якого числа букв, цифр і деяких розділових знаків, таких як подвійна двокрапка"::". Останній символ використовується для складніших імен, що включають не тільки ім'я самого інтерфейсу (після знака), але і ім'я єства, яке включає даний інтерфейс (перед знаком). Прикладами таких імен є: «мережа підприємства сервер» для вказівки на сервер мережі підприємства або «Система аутентифікації клієнтів::форма введення пароля».
Графічний символ окремого інтерфейсу може з'єднуватися на діаграмі суцільною лінією з тим варіантом використовування, який його підтримує. Суцільна лінія в цьому випадку указує на той факт, що пов'язаний з інтерфейсом варіант використовування повинен реалізовувати всі операції, необхідні для даного інтерфейсу, а можливо і більше (мал. 4.4, а). Окрім цього, інтерфейси можуть з'єднуватися з варіантами використовування пунктирною лінією із стрілкою (мал. 4.4, би), що означає, що варіант використовування призначений для специфікації тільки того сервісу, який необхідний для реалізації даного інтерфейсу.
Мал. 4.4. Графічне зображення взаємозв'язків інтерфейсів з варіантами використовування
З системно‑ аналітичної точки зору інтерфейс не тільки відділяє специфікацію операцій системи від їх реалізації, але і визначає загальні межі проектованої системи. В подальшому інтерфейс може бути уточнений явною вказівкою тих операцій, які специфікують окремий аспект поведінки системи. В цьому випадку він зображається у формі прямокутника класу з ключовим словом «interface» в секції імені, з порожньою секцією атрибутів і з непорожньою секцією операцій. Проте подібне графічне уявлення використовується на діаграмах класів або діаграмах, що характеризують поведінку модельованої системи.
Важливість інтерфейсів полягає в тому, що вони визначають стикувальні вузли в проектованій системі, що абсолютно необхідне для організації колективної роботи над проектом. Більш того, специфікація інтерфейсів сприяє «безболісній» модифікації вже існуючої системи при переході на нові технологічні рішення. В цьому випадку зміні піддається тільки реалізація операцій, але ніяк не функціональність самої системи. А це забезпечує сумісність подальших версій програм з первинними при спіральній технології розробки програмних систем.