- •Лабораторна робота № 3
- •1. Особливості розробки діаграм кооперації в середовищі ibm rational rose
- •2. Додавання об'єкта на діаграму кооперації та редагування його властивостей
- •3. Додавання зв’язку і редагування його властивостей.
- •4. Додавання повідомлення і редагування його властивостей.
- •Завдання
- •5. Особливості розробки діаграми послідовності в середовищі ibm rational rose
- •6. Додавання повідомлення на діаграму послідовності та редагування його властивостей
- •Завдання
Завдання
Для завершення побудови діаграми кооперації необхідно описаним вище способом додати інші об’єкти, зв’язки і повідомлення. Для цього виконати наступні дії:
Додати об’єкти класів з іменами «Контролер банкомату», «Транзакція автомату», «Клавіатура Банкомату», «Екран Банкомату», «Принтер Банкомату», «Пристрій видачі готівки», «ІІнтерфейс Банку».
Додати зв'язки, що з'єднують об'єкти класів з іменами: «Контролер Банкомату» з «Пристроєм читання картки», «Контролер Банкомату» з «Транзакція Банкомату», «Контролер Банкомату» з «Клавіатура Банкомату», «Контролер Банкомату» з «Екран Банкомату», «Контролер Банкомату» з «Принтер Банкомату», «Контролер Банкомату» з «Пристрій видачі готівки» та «Контролер Банкомату» з «ІІнтерфейс Банку».
Додати повідомлення: «перевірити ідентифікатор картки» (Integer), спрямоване від об'єкта класу «Контролер Банкомату» до об'єкту класу «ІІнтерфейс Банку».
Додати повідомлення: «ввести пін-код» (), спрямоване від об'єкта класу-актора «Клієнт Банкомату» до об'єкту класу «Клавіатура Банкомату».
Додати повідомлення: «прочитати пін-код» (), спрямоване від об'єкта класу «Контролер Банкомату» до об'єкту класу «Пристрій читання картки».
Додати повідомлення: «створити нову транзакцію» (), спрямоване від об'єкта класу «Контролер Банкомату» до об'єкту класу «Транзакція Банкомату».
Додати повідомлення: «перевірити правильність пін-коду» (), спрямоване від об'єкта класу «Контролер Банкомату» до об'єкту класу «Транзакція Банкомату».
Додати повідомлення: «показати меню опцій» (), спрямоване від об'єкта класу «Контролер Банкомату» до об'єкту класу «Екран Банкомату».
Додати повідомлення: «ввести тип транзакції» (), спрямоване від об'єкта класу-актора «Клієнт Банкомату» до об'єкту класу «Клавіатура Банкомату».
Додати повідомлення: «показати меню зняття суми» (), спрямоване від об'єкта класу «Контролер Банкомату» до об'єкту класу «Екран Банкомату».
Додати повідомлення: «ввести суму зняття готівки» (), спрямоване від об'єкта класу-актора «Клієнт Банкомату» до об'єкту класу «Клавіатура Банкомат».
Послідовно додати 3 повідомлення: «відкрити рахунок клієнта» (Integer), «перевірити баланс клієнта» (Integer, Currency) і «зменшити рахунок клієнта» (Integer, Currency), спрямовані від об'єкта класу «Контролер Банкомату» до об'єкту класу «ІІнтерфейс Банку».
Додати повідомлення: «роздрукувати чек» (), спрямоване від об'єкта класу «Контролер Банкомату» до об'єкту класу «Принтер Банкомату».
Додати повідомлення: «повернути кредитну картку» (), спрямоване від об'єкта класу «Контролер Банкомату» до об'єкту класу «Пристрій читання картки».
Додати повідомлення: «видати готівку» (), спрямоване від об'єкта класу «Контролер Банкомату» до об'єкту класу «Пристрій видачі готівки».
Додати повідомлення: «завершити транзакцію» (), спрямоване від об'єкта класу «Контролер Банкомату» до об'єкту класу «Транзакція Банкомату».
Рис. 3.9. Діаграма кооперації для варіанту використання «Зняття готівки по кредитній картці»
Діаграма кооперації, що описує реалізацію типового перебігу подій варіанту використання «Зняття готівки по кредитній картці» для проекту системи управління банкоматом показана на рис. 3.9
За необхідності можливо змінити послідовність повідомлень та їх специфікацію, а також встановити додаткову синхронізацію повідомлень і зв’язати із повідомленнями коментарі. Вказані дії, а також побудови діаграм кооперації, що описують реалізацію виключень для варіанта використання «Зняття готівки по кредитній картці» і інших варіантів використання можуть біти виконані як додаткові вправи.
На закінчення цієї лекції слід зауважити, що серед властивостей повідомлень в середовищі IBM Rational Rose 2003 відсутня сторожова умова. В якості виходу з даної ситуації можна рекомендувати вказувати при необхідності сторожові умови в якості передумови для відповідної операції класу.
