Мета роботи
Засвоїти створення моделей, що описують поведінку взаємодіючих груп об'єктів; вивчити нотації, вживані при побудові діаграм взаємодії і освоїти їх застосування в процесі об'єктно-орієнтованого аналізу і проектування.
Завдання
Побудувати діаграму послідовності на основі діаграм класів і діаграми представлення використання, розроблених на попередніх заняттях;.
Основні поняття
Діаграми взаємодії є моделями, що описують поведінку взаємодіючих груп об'єктів. Як правило, діаграма взаємодії охоплює поведінку тільки одного варіанта використання. На такій діаграмі відображається ряд об'єктів і ті повідомлення, якими вони обмінюються між собою в рамках одного варіанта використання.
Приклад. Управління проектами (рисунок 13)
a. Менеджер обдумує доручення звіту виконавцеві;
b. дає вказівки на створення Звіту Виконавцеві;
c. якщо Звіт незадовільний, Менеджер посилає запит Виконавцеві на оновлення Звіту;
d. Виконавець створює новий Звіт;
e. Менеджер робить повторний запит Звіту.
Існує два види діаграм взаємодії: діаграми послідовності (sequence diagrams) і кооперативні, або співпраці (collaboration diagrams).
Діаграми послідовності визначають тимчасову послідовність передаючих повідомлень, порядок, вигляд і тип повідомлення що відбуваються в рамках варіанта використання. Діаграми послідовності і кооперативні є різними поглядами на одних і ті ж процеси, тому Rational Rose дозволяє створити з діаграми послідовності діаграму Кооперації і навпаки, а також проводить автоматичну синхронізацію цих діаграм.
На діаграмі послідовності взаємодія зображується у вигляді двовимірної схеми: вертикальне (час) і горизонтальне (об'єкти, що беруть участь у взаємодії) (Рисунок 10). Істотна тільки послідовність повідомлень, проте тимчасова вісь може служити реальною метрикою вимірювання активності об'єкту.
f. Дійові особи з варіанта використання.
g. Об'єкти, потрібні системі для виконання варіанта використання.
h. Лінії життя, що представляють фрагмент життєвого циклу об'єкта в процесі взаємодії, де перебіг часу йде зверху вниз йдуть зверху.
i. Активний період лінії життя.
j. Повідомлення, яке передається від одного об'єкта до іншого в порядку проходження життєвого циклу; за бажання може бути помічене ім'ям і аргументом, подією, що управляє, наприклад, повідомлення посилається, якщо Звіт не застарів.
k. Самоделегування (рекурсивне повідомлення) - повідомлення самому собі.
На кооперативній діаграмі екземпляри об'єктів показані у вигляді піктограм. Лінії між ними позначають повідомлення, обмін якими здійснюється в рамках даного варіанта використання. Кожен вид діаграм має свої переваги. На діаграмі послідовності легко спостерігати порядок, в якому відбуваються події. У разі кооперативних діаграм можна використовувати просторове розташування об'єктів, щоб показати їх статичну взаємодію (Рисунок 11).
Рисунок 9. Приклад діаграми послідовності
l. - зображення об'єкта
m. - лінія життя
Рисунок 10. Зображення взаємодій на діаграмі послідовності
Рисунок 11. Приклад послідовності дій і кооперація між об'єктами при створенні звіту "Управління проектами".
Діаграма послідовності і створення звіту зображена на рисунку 12.
Рисунок 12. Діаграма послідовності і створення звіту
Кооперативна діаграма «Управління проектами» представлена на рисунку 13
Рисунок 13. Кооперативна діаграма «Управління проектами».
Технологія виконання роботи
Технологічний процес створення діаграми послідовності:
1. Підготовка:
a) У меню вибрати команду Browse/Interaction Diagram/New виклику вікна Select Interaction Diagram.
b) У підвікні Package вікна Select Interaction Diagram вибрати Use Case View, натиснути ОК.
c) У діалоговому вікні New Interaction Diagram в полі Title ввести ім'я діаграми послідовності.
d) У діалоговому вікні New Interaction Diagram вибрати тип діаграми sequence, натиснути ОК.
2. Створення об'єкта:
a) Натиснути кнопку створення об'єкта.
b) У вікні діаграми класів вказати місце об'єкта.
c) Клацанням викликати зображення об'єкта і відповідною йому лінії життя.
d) Через контекстне меню відкрити вікно Object Specification і ввести ім'я об'єкту і відповідний йому клас.
3. Створення повідомлення:
a) Натиснути кнопку створення повідомлення Object Message.
b) Намалювати стрілку від лінії одного об'єкта до лінії життя іншого об'єкту
c) Відрегулювати розміщення елементів діаграми прецедентів.
4. Побудова відповідної діаграми кооперації:
a) Натиснути функціональну клавішу F5.
b) Змінити повідомлення, викликавши закладку Messages.