Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Самовчитель по UML.doc
Скачиваний:
4
Добавлен:
01.07.2025
Размер:
2 Мб
Скачать
☆

4.2. Актори

Актор є будь-яким зовнішнім по відношенню до модельованої системи єством, яке взаємодіє з системою і використовує її функціональні можливості для досягнення певної мети або рішення приватних задач. При цьому актори служать для позначення злагодженої безлічі ролей, які можуть грати користувачі в процесі взаємодії з проектованою системою. Кожний актор може розглядатися як якась окрема роль щодо конкретного варіанту використовування. Стандартним графічним позначенням актора на діаграмах є фігурка «чоловічка», під якою записується конкретне ім'я актора (мал. 4.2).

Мал. 4.2. Графічне позначення актора

В деяких випадках актор може позначатися у вигляді прямокутника класу з ключовим словом «актор» і звичайними становлячими елементами класу. Імена акторів повинні записуватися заголовними буквами і слідувати рекомендаціям використовування імен для типів і класів моделі. При цьому символ окремого актора зв'язує відповідний опис актора з конкретним ім'ям. Імена абстрактних акторів, як і інших абстрактних елементів язика UML, рекомендується позначати курсивом.

Примітка

Ім'я актора повинне бути достатньо інформативним з погляду семантики. Цілком підходять для цієї мети найменування посад в компанії (наприклад, продавець, касир, менеджер, президент). Не рекомендується давати акторам імена власні (наприклад, «Про.Бендер») або моделей конкретних пристроїв (наприклад, «маршрутизатор Cisco 3640»), навіть якщо це з очевидністю виходить з контексту проекту. Річ у тому, що одна і та ж особа може виступати в декількох ролях і, відповідно, звертатися до різних сервісів системи. Наприклад, відвідувач банку може бути як потенційним клієнтом, і тоді він запитає один з його сервісів, а може бути і податковим інспектором або слідчим прокуратури. Сервіс для останнього може бути абсолютно винятковим по своєму характеру.

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

Примітка

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

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

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

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

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