Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
examen.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
235 Кб
Скачать
☆

Семантика і нотація діаграми послідовностей. Нарисуйте елементи нотації і наведіть їх інтерпретацію.

Діаграма послідовності (sequence diagram) – відображає послідовність і час обміну повідомленнями об’єктів між собою (взаємодія по управлінню). Будують її тільки для об’єктів – конкретних екземплярів класу. Об'єкти зображають у вигляді прямокутників, які розміщуються у верхній частині свої лінії життя.

Лінія життя об’єкту (Object life line) – пунктирна вертикальна лінія, яку відносять до свого об’єкту, протягом його існування. На цій лінії є неможливою повторна поява цього об’єкту після його знищення і вивільнення ресурсів. Вісь часу напрямлена вниз і може бути відмічена часовими мітками.

Всередині прямокутників записують імена об’єктів і імена класів, які розділені двокрапкою, і запис підкреслюється, що є ознакою об’єкту, як екземпляра класу. Імена класів починаються з великої букви. Не виключеною є ситуація, коли присутнє тільки ім'я класу, а ім'я об’єкту може бути відсутнім (так звані, анонімні об’єкти). Іншим способом такого підкреслення є зображення багатоінстантності об’єкта (Multiinstance).

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

Фокус управління (Focus of control) – період активності об’єкту, під час якої об’єкт виконує, які небудь дії. Зображають фокус управління у вигляді вузького витягнутого прямокутника, розміщеного на лінії життя об’єкту. Його верхня грань означає отримання фокусу управління об’єкту (початок активності), а нижня грань – завершення фокусу управління. За умови постійної активності об’єкту фокус управління заміняє лінію життя, в іншому випадку в об’єкту може бути декілька фокусів управління. Якщо ж наступило знищення об’єкту, то виникнути знов у системі він може. Замість нього може бути створений інший екземпляр цього ж класу, який, насправді, є іншим об’єктом.

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

Повідомлення (Messages, Stimulus) – фрагмент інформації, який один об’єкт (відправник, клієнт) надсилає іншому (отримувач, сервер). Отримання сигналу може бути подією перемикання, яка запускає перехід в кінцевому автоматі. Повідомлення можуть відправлятися одночасно декільком об’єктам. Об'єкти можуть відправляти повідомлення паралельно або в певному порядку, який може бути визначений за допомогою обмеження. Час відправки або прийому може бути вказаний біля імені повідомлення. Якщо повідомлення є викликом процедури, то відправник блокується, до того часу поки ця процедура не завершиться і не поверне управління.

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

Розрізняють повідомлення – сигнал і повідомлення – виклик операції. Повідомлення – виклик відрізняється від сигналу наявністю неявного вказівника повороту, а саме, отримувач повинен після завершення операції повернути результат операції або повідомити про її закінчення (вернути управління).

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

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

Стрілка із замальованим наконечником (стереотип Create) представляє тип повідомлення – виклику, яке вимагає створення іншого об’єкту для виконання певних дій. Створений об’єкт може отримати (або не отримати) фокус управління.

Стрілка із звичайним наконечником (простий потік управління в молодших версіях UML, асинхронний потік управління в усіх версіях, стереотип Send) представляє собою тип повідомлення – сигналу. Простий потік управління представляє передачу управління від відправника до отримувача можливо безповоротно. Асинхронний потік управління представляє передачу повідомлення асинхронно від відправника до отримувача, у цьому випадку у відправника зберігається свій потік управління, який є незалежним від потоку управління отримувача.

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

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

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

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

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]