Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Копия Диплом Кілесо.doc
Скачиваний:
16
Добавлен:
16.09.2019
Размер:
7.62 Mб
Скачать

4.5.3. Лабораторна робота № 3 «Діаграма послідовності».

Мета роботи: освоїти прийоми розробки і побудови діаграми послідовності.

Зміст роботи:

1. створення і підготовка бланка діаграми;

2. виділення з виданого завдання прецеденту використання;

3. створення на діаграмі об'єктів, задіяних у прецеденті використання;

4. створення повідомлень між об'єктами;

5. збереження побудованої діаграми.

Теоретична частина

Діаграмою послідовностей (Sequence diagram) називається діаграма взаємодій, що акцентує увагу на тимчасовій впорядкованості повідомлень. Графічно така діаграма являє собою таблицю, об'єкти в якій розташовуються уздовж осі X, а повідомлення в порядку зростання часу - уздовж осі Y.

На діаграмах послідовностей увага акцентується, перш за все, на тимчасовій впорядкованості повідомлень. На рисунку 4.39 показано, що для створення такої діаграми треба, перш за все, розташувати об'єкти, які беруть участь у взаємодії, у верхній її частині уздовж осі X. Зазвичай ініціює взаємодію об'єкт розміщують ліворуч, а інші - праворуч (тим далі, чим більш підлеглим є об'єкт). Потім уздовж осі Y розміщуються повідомлення, які об'єкти посилають і приймають, причому більш пізні виявляються нижче. Це дає читачеві наочну картину, що дозволяє зрозуміти розвиток потоку керування в часі.

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

По-перше, на них показана лінія життя об'єкта. Це вертикальна пунктирна лінія, що відображає існування об'єкта в часі. Велика частина об'єктів, представлених на діаграмі взаємодій, існує протягом усього взаємодії, тому їх зображують у верхній частині діаграми, а їх лінії життя промальовані зверху до низу. Об'єкти можуть створюватися і під час взаємодій. Лінії життя таких об'єктів починаються з отримання повідомлення зі стереотипом create. Об'єкти можуть також знищуватися під час взаємодій; в такому разі їх лінії життя закінчуються одержанням повідомлення зі стереотипом destroy, а в якості візуального образу використовується велика буква X, що позначає кінець життя об'єкта (обставини життєвого циклу об'єкта можна вказувати за допомогою обмежень new, destroyed і transient ).

Рисунок 4.39 - Діаграма послідовностей

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

Як правило, діаграма взаємодії охоплює поведінку об'єктів в рамках тільки одного варіанту використання. На такий діаграмі відображається ряд об'єктів, які обмінюються між собою повідомленнями. Повідомлення можуть бути наступними:

• повідомлення (message) - це засіб, за допомогою якого об'єкт-відправник запитує в об'єкта одержувача виконання однієї з його операцій;

• інформаційне (informative) повідомлення - це повідомлення, постачає об'єкт-одержувач деякою інформацією для поновлення його стану;

• повідомлення-запит (interrogative) - це повідомлення, що запитує видачу деякою інформацією про об'єкт-одержувача;

• імперативне (imperative) повідомлення - це повідомлення, запитуюча в об'єкта-одержувача виконання деяких дій.

Розглянемо ще один приклад діаграми послідовності (рисунок 4.40).

Діаграма відображає потік подій, що відбуваються в рамках варіанту використання. На діаграмі послідовності об'єкт зображується у вигляді прямокутника, від якого вниз проведена пунктирна вертикальна лінія. Ця лінія називається лінією життя (lifeline) об'єкта. Вона являє собою фрагмент життєвого циклу об'єкта в процесі взаємодії.

Рисунок 4.40 - Діаграма послідовності для зняття клієнтом грошей з рахунку

Кожне повідомлення представляється у вигляді стрілки між лініями життя двох об'єктів. Повідомлення з'являються в тому порядку, як вони показані на сторінці зверху вниз. Кожне повідомлення позначається як мінімум ім'ям повідомлення; при бажанні можна додати також аргументи і деяку керуючу інформацію, і, крім того, можна показати само-делегування (self-delegation) - повідомлення, яке об'єкт посилає самому собі, при цьому стрілка повідомлення вказує на ту ж саму лінію життя.

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

Не всі об'єкти з'являються в потоці подій. Там, наприклад, може не бути форм для заповнення, але їх необхідно показати на діаграмі, щоб дозволити дійовій особі ввести нову інформацію в систему або переглянути її. У потоці подій, швидше за все, також не буде і керуючих об'єктів (control objects). Ці об'єкти керують послідовністю потоку у варіанті використання.