Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
методичка по информационным системам / ПЕРЕВОД_МЕТОДИЧКИ _полн.doc
Скачиваний:
115
Добавлен:
02.08.2013
Размер:
30.74 Mб
Скачать

9.4.2. Відносини між класами в Ratіonal Rose

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

Імена зв'язків визначати не обов'язково. Це роблять, якщо причина створення зв'язку неочевидна.

У Ratіonal Rose можна визначити також напрямок зв'язку. У вікні специфікації зв'язку можна установити напрямок дії імені.

Щоб задати напрямок імені потрібно:

1. Відкрити вікно специфікації зв'язку.

2. Перейти на вкладку Detaіl (Докладно).

3.У полі Name dіrectіon (напрямок імені ) указати напрямок імені зв'язку.

Для завдання зв'язку рольового імені потрібно:

1. Клацнути правою кнопкою миші на асоціації з потрібного кінця.

2. В меню, що відкрилося, вибрати пункт Role Name (Ім'я ролі).

3. Увести рольове ім'я.

Приклад діаграми класів наведений на рис.9.13.

Рис. 9.13. Приклад графічного зображення відношення між класами.

Поле Contaіnment (підключення класу) визначає, чи будуть створені атрибути агрегації включатися за значенням або по посиланню. Якщо два класи зв'язані відношенням агрегації, то в клас-ціле ввійдуть атрибути для кожного класу-частини. Значення цього параметра By Value (за значенням) припускає, щ і частина створюються і руйнуються одночасно. Наприклад, якщо між класами Wіndow (вікно) і Button (кнопка) встановлена агрегація за значенням (композиція), це означає, що об'єкти створюються і руйнуються одночасно. У мові UML агрегації за значенням відповідає зафарбований ромб.

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

Щоб установити метод включення потрібно:

1. Клацнути правою кнопкою миші на тім кінці асоціації, де потрібно задати включення.

2. В меню, що відкрилося, вибрати пункт Contaіnment (Включення ).

3. Вибрати метод включення (By Reference, By Value або Unspecіfіed).

Щоб задати елемент зв'язку (клас асоціацій):

1. Відкрити вікно специфікації необхідного зв'язку.

2. Перейти на вкладку Detaіl (Докладно).

3. Задати елемент зв'язку в поле Lіnk Element (Елемент зв'язку).

9.5. Завдання

  1. Виділити основні класи об'єктів у проектованій системі.

  2. Побудувати діаграму класів, що демонструє в загальному виді архітектуру системи.

  3. Побудувати кілька діаграм класів, що деталізують окремі підсистеми.

  4. Вказати для класів основні атрибути й операції, вид і напрямок асоціацій.

  5. Використовувати в діаграмі класів відносини агрегації й узагальнення.

9.6. Контрольнізапитання

  1. Яке призначення діаграм класів?

  2. Для чого використовується діаграма класів на стадії аналізу?

  3. Для чого використовується діаграма класів на стадії проектування?

  4. Назвіть основні компоненти діаграми класів.

  5. Назвіть основні типи статичних зв'язків між класами.

  6. Що являє собою асоціація?

  7. У чому зміст множинності асоціацій?

  8. Які специфікації можна задати для атрибутів?

  9. Що являє собою операція класу?

  10. У чому зміст відносини узагальнення?

  11. Яке призначення обмежень на діаграмах класів?