Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Построение сложной диаграммы классов

Поиск

Создадим диаграмму классов и добавим на нее следующие классы (аналогично примеру второго лабораторного занятия) (Рис.1.1, 1.2):

· Вуз;

· Факультет;

· Студент;

· Курс;

· Преподаватель.

Рис. 1.1 Браузер проектов – отображает все зозданные классы

 

Рис. 1.2 Окно диаграммы классов – отображает все созданные классы

 

Далее добавим атрибуты для каждого класса (Рис.1.3).

 

 

Рис. 1.3 Всплывающее меню – открываем свойства класса “ВУЗ”

 

 

Для редактирования свойств атрибутов предназначено специальное диалоговое окно спецификации атрибута Class Attribute Specification, которое открывается двойным щелчком мыши на строке выбранного атрибута в окне спецификации свойств класса. В окне свойств отдельного атрибута класса можно задать тип данных атрибута и его начальное значение, а также назначить атрибуту стереотип из раскрывающегося списка или изменить его квантор видимости.

Рассмотрим изменение свойств атрибутов на примере атрибутов класса “ВУЗ”: Для атрибута “адрес” в качестве типа его допустимых значений из вложенного списка Type следует выбрать тип String (строка) и нажать “ОК”. Для атрибута “Название” зададим свой тип Name, а для атрибута “Телефон” - Number (числовой). (Рис.1.4 и 1.5)

Рис. 1.4 Диалоговое окно спецификации атрибута ”Адрес”

 

Рис. 1.5 Диалоговое окно спецификации класса ”ВУЗ”

 

 

Теперь перейдем к добавлению и редактированию операций классов.

Добавить операцию к созданному ранее классу можно одним из следующих способов:

  1. С помощью операции контекстного меню New Operation (Новая операция) для класса, выделенного на диаграмме классов. В этом случае активизируется курсор ввода в области графического изображения класса на диаграмме.
  2. С помощью операции контекстного меню: New Operation (Новая Операция) для класса, выделенного в браузере проекта. В этом случае активизируется курсор ввода в области иерархического представления класса в браузере под именем соответствующего класса.
  3. С помощью операции контекстного меню Insert (Вставить), вызванного при позиционировании курсора в области открытой вкладки операций в диалоговом окне свойств Class Specification соответствующего класса.(Рис.2.1)

Применим третий метод: на вкладке “Операции” (Operations) уже открытого диалогового окна спецификации класса ”ВУЗ” добавим операции – см. Рис. 2.1 и 2.2.

Рис.2.1 Диалоговое окно спецификации класса ”ВУЗ” - добавление операций

 

После добавления операции к классу по умолчанию ей присваивается имя opname и некоторый квантор видимости. Видимость операций на диаграмме классов также изображается в форме специальных пиктограмм или украшений. Используемые пиктограммы видимости изображаются перед именем соответствующей операции и имеют следующий смысл (Табл. 1.1).

 

 

Таблица 1.1 Пиктограммы видимости операций классов
Графическое изображение Текстовый аналог Назначение пиктограммы
Public Общедоступный или открытый. В нотации языка UML такому атрибуту соответствует знак «+»
Protected Защищенный. В нотации языка UML такому атрибуту соответствует знак «#»
Private Закрытый. В нотации языка UML такому атрибуту соответствует знак «-»
Implementation Реализация. В нотации языка UML такому атрибуту соответствует знак «∼»

В контексте рассматриваемой модели а в качестве имени первой операции для класса “ВУЗ” следует задать: “Добавить студента”. При этом скобки при задании имени операции не записываются, поскольку программа IBM Rational Rose добавляет их автоматически, следуя правилам именования операций в языке UML.

Каждая из операций классов имеет собственное диалоговое окно спецификации свойств Operation Specification, которое может быть открыто по двойному щелчку на имени операции на соответствующей вкладке спецификации класса или на имени этой операции в браузере проекта.

Рис.2.2 Диалоговое окно спецификации класса ”ВУЗ” - добавленные операции

 

Получим следующее изображение класса в окне диаграммы классов (Рис.2.3)

 

Рис.2.3 Класс ”ВУЗ” - атрибуты и операции

 

Добавим аналогично атрибуты и операции во все классы нашей диаграммы. (Рис.2.4)

 

Рис.2.4 Диаграмма классов с добавленными атрибутами и операциями для каждого класса

 

Следующий этап – это установление взаимосвязей между классами нашей диаграммы. (Вспоминаем первое и второе лабораторные занятия).

В этой лабораторной работе мы будем использовать два типа отношений (взаимосвязей):

  • ассоциацию;
  • агрегирование.

 

Вспомним из курса лекций:

Частным случаем ассоциации является отношение типа "часть/целое". Отношение такого типа называется агрегированием. В языке UML оно причислено к отношениям вида "имеет". Агрегирование изображается в виде ассоциации с незакрашенным ромбом со стороны целого.

Добавить на диаграмму отношение агрегации между двумя классами можно следующими способами:

l Щелкнуть на кнопке с изображением отношение агрегации на специальной панели инструментов и провести линию агрегации от одного класса к другому.

l Провести линию ассоциации между выбранными классами и изменить ее свойства таким образом, чтобы превратить данную ассоциацию в агрегацию.

В первом случае может оказаться, что по умолчанию на специальной панели инструментов диаграммы классов отсутствует кнопка с пиктограммой агрегации. В этом случае необходимо предварительно добавить ее на панель инструментов одним из описанных ранее способов.

Во втором случае следует открыть окно спецификации свойств ассоциации Association Specification и на вкладке деталей соответствующего конца ассоциации выставить отметку в строке выбора Aggregate (Агрегация) (Рис. 3.1).

Добавим агрегацию – взаимосвязь между классами “ВУЗ” и “Факультет” (Рис.3.1). Выставим кратность через свойство агрегации Multiplicity 1 к 1..*. (См. Второе лабораторное занятие) (Рис.3.2)

Рис.3.1 Диаграмма классов – выбор кратности для агрегации

 

Рис.3.2 Диаграмма классов – выбор кратности для агрегации

 

 

Добавим на диаграмму классов недостающие агрегации и ассоциации аналогично примерам второго и третьего лабораторного занятия. (Рис.3.3)

 

Рис.3.3 Сложная диаграмма классов, моделирующая объекты системы регистрации курсов и отношения между ними

 

Рис.3.4 Сложная диаграмма классов, моделирующая объекты системы регистрации курсов и отношения между ними

 




Поделиться:


Последнее изменение этой страницы: 2016-09-05; просмотров: 376; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.16.82.208 (0.005 с.)