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

18.3. Інтерфейси

Інтерфейс (interface) служить для специфікації параметрів моделі, які видно ззовні без вказівки їх внутрішньої структури. У мові UML інтерфейс є класифікатором і характеризує тільки обмежену частину поведінки модельованої сутності. Стосовно діаграм варіантів використання, інтерфейси визначають сукупність операцій, які забезпечують необхідний набір сервісів або функціональності для акторів. Інтерфейси не можуть містити ні атрибутів, ні станів, ні направлених асоціацій. Вони містять тільки операції без вказівки особливостей їх реалізації. Формально інтерфейс еквівалентний абстрактному класу без атрибутів і методів з наявністю тільки абстрактних операцій.

На діаграмі варіантів використання інтерфейс зображається у вигляді маленького круга, поряд з яким записується його ім'я (рис. 4.3, а). Іменем може бути іменник, який характеризує відповідну інформацію або сервіс (наприклад, "датчик", "сирена", "відеокамера"), але частіше рядок тексту (наприклад, "запит до бази даних", "форма введення", "пристрій подачі звукового сигналу"). Якщо ім'я записується англійською мовою, то воно повинне починатися із заголовної букви I, наприклад, ISecurelnformation, ISensor (рис. 13.3, б).

Рис. 18.3. Графічне зображення інтерфейсів на діаграмах варіантів використання

Примітка

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

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

Рис. 18.4. Графічне зображення взаємозв'язків інтерфейсів з варіантами використання

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

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