Назначение кнопок специальной панели инструментов

Специальная панель инструментов содержит кнопки с изображением графических примитивов, необходимых для разработки различных диаграмм проекта, например, диаграммы классов (табл. 1.4). Назначение отдельных кнопок панели можно узнать также из всплывающих подсказок.

Таблица 1.4. Назначение кнопок специальной панели инструментов (на примере работы с диаграммой классов)
Графическое изображение Всплывающая подсказка Назначение кнопки
Назначение кнопок специальной панели инструментов - student2.ru Selection Tool Превращает изображение курсора в форму стрелки для последующего выделения элементов на диаграмме
Назначение кнопок специальной панели инструментов - student2.ru Text Box Добавляет на диаграмму текстовую область
Назначение кнопок специальной панели инструментов - student2.ru Note Добавляет на диаграмму примечание
Назначение кнопок специальной панели инструментов - student2.ru Anchor Note to Item Добавляет на диаграмму связь примечания с соответствующим графическим элементом диаграммы
Назначение кнопок специальной панели инструментов - student2.ru Class Добавляет на диаграмму класс
Назначение кнопок специальной панели инструментов - student2.ru Interface Добавляет на диаграмму интерфейс
Назначение кнопок специальной панели инструментов - student2.ru Unidirectional Association Добавляет на диаграмму направленную ассоциацию
Назначение кнопок специальной панели инструментов - student2.ru Association Class Добавляет на диаграмму ассоциацию класс
Назначение кнопок специальной панели инструментов - student2.ru Package Добавляет на диаграмму пакет
Назначение кнопок специальной панели инструментов - student2.ru Dependency or Instantiates Добавляет на диаграмму отношение зависимости
Назначение кнопок специальной панели инструментов - student2.ru Generalization Добавляет на диаграмму отношение обобщения
Назначение кнопок специальной панели инструментов - student2.ru Realize Добавляет на диаграмму отношение реализации

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

Соответствующее диалоговое окно настройки специальной панели инструментов для диаграммы классов можно вызвать аналогично другим панелям с помощью операции контекстного меню Customize (Настройка) при позиционировании курсора на специальной панели инструментов.

ПЕРВОЕ ЛАБОРАТОРНОЕ ЗАНЯТИЕ

Тема:

Построение с помощью программы Rational Rose UML диаграмм прецедентов на примере главной диаграммы прецедентов АИС регистрации учебных курсов

Общие понятия

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

Каждая такая диаграмма или, как ее обычно называют, каждый Use case – это описание сценария поведения, которому следуютдействующие лица (Actors).

Данный тип диаграмм используется при описании бизнес процессов автоматизируемой предметной области, определении требований к будущей программной системе. Отражает объекты как системы, так и предметной области и задачи, ими выполняемые.

Общее описание модели

Сценарий проекта таков: Сначала каждый преподаватель (профессор) университета заполняет специальную форму, в которой указывает, какие учебные курсы он намерен вести в следующем семестре. Данные из формы помещаются в университетский компьютер работником регистратуры.

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

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

Первое, что требуется при построении модели, — определить действующие лица системы и сценарии поведения.

Действующих лиц в создаваемой системе четыре:

  1. преподаватель,
  2. студент,
  3. регистратор,
  4. биллинговая программа – система оплаты.

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

Элементы диаграммы

При построении диаграммы прецедентов будем использовать пиктограммы типа "прецеденты" и "актеры". Помним , что термин "прецедент" это не очень удачный перевод на русский язык английского выражения use case (Computer Aided Software Engineering).

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

Актер – это кто-то (или что-то) внешний по отношению к компьютерной системе, кто взаимодействует с ней. Графически актер изображается в виде пиктограммы, представляющей человека, поскольку актер это человек или группа людей, использующих данные, предоставляемые компьютерной системой.

Построение диаграммы

Теперь перенесем все это на диаграмму. Для этого нужно создать пустой проект, переключиться на папку Use Case View – для работы с диаграммами прецедентов (Use case) и открыть контекстное меню нажатием правой кнопки мыши. Если теперь выбрать пункт New•Actor (рис. 2.1), то вы получите действующее лицо;

Назначение кнопок специальной панели инструментов - student2.ru

Рис. 2.1 Создание действующего лица

Теперь создадим всех действующих лиц (рис.2.2), рассмотренных в п. «Общее описание модели».

Назначение кнопок специальной панели инструментов - student2.ru

Рис. 2.2 Вид окна браузера проекта после создания всех действующих лиц («Актеров»)

Теперь выделим сценарии использования для нашего примера. Каждый из них описывает некоторое требование к функциям системы:

  • Выбор курсов для преподавателя
  • Запрос расписания курсов
  • Регистрация на курсы
  • Создание каталогов ресурсов
  • Хранение информации о курсах
  • Хранение информации о преподавателях
  • Хранение информации о студентах

Если выбрать New•Use Case, то будет создан сценарий поведения. (Рис.2.3)

Назначение кнопок специальной панели инструментов - student2.ru

Рис. 2.3 Создание сценария поведения

Теперь создадим все описанные выше сценарии поведения (рис.2.4)

Назначение кнопок специальной панели инструментов - student2.ru

Рис. 2.4 Вид окна браузера проекта после создания всех сценариев поведения («Прецедентов»)

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

Далее, как правило, строится диаграмма сценариев поведения - прецедентов. Для этого двойным щелчком на пиктограмме Main из папки Use Case View открывается главная диаграмма сценариев.

В нее из окна браузера перетаскиваются все действующие лица и сценарии поведения, которые были созданы в рамках модели. (Рис.2.5)

Назначение кнопок специальной панели инструментов - student2.ru

Рис. 2.5 Диаграмма сценариев поведения (пока без связей)

После размещения эти компоненты нужно связать между собой, чтобы отобразить взаимосвязи. В нашей модели наилучшим образом подойдут связи типа «однонаправленная ассоциация» (Unidirectional Association).

Ассоциация – это структурное двунаправленное отношение, описывающее совокупность взаимоотношений между объектами. По сути дела ассоциация является сверткой бинарных отношений между объектами. Эту свертку может мысленно выполнить в своем сознании специалист (например, программист), который видит пиктограмму ассоциации на UML диаграмме.

Для реализации связей применяется метод перетаскивания. Сначала в палитре выбирается тип связи «однонаправленная ассоциация» (UniderectionalAssociation) Назначение кнопок специальной панели инструментов - student2.ru , после чего нужно протянуть линию между действующим лицом и сценарием поведения. В результате на диаграмме возникнет стрелка. Аналогичным образом поступают со всеми компонентами диаграммы. Готовая диаграмма показана на Рис. 3.1.

Для создания границы («интерфейса») между актерами и прецендентами можно воспользовавшись пунктом меню «Tools/Create/Note Anchor» иливыбратьсредипиктограмминструмент «Anchor Note to Item». Выбрав инструмент необходимо щелкнуть один раз на середине одной из стрелок отношения далее во всех углах интерфейса и завершить границу в месте начала ее рисования. Если прямоугольник получился не очень ровый то это можно исправить выбрав в меню «Format/Line Style/Rectilinear»

Назначение кнопок специальной панели инструментов - student2.ru

Рис. 3.1 Главная диаграмма прецедентов системы регистрации учебных курсов Университета

Назначение кнопок специальной панели инструментов - student2.ru Назначение кнопок специальной панели инструментов - student2.ru Назначение кнопок специальной панели инструментов - student2.ru Назначение кнопок специальной панели инструментов - student2.ru Назначение кнопок специальной панели инструментов - student2.ru

В среде Rational Rose так же легко создаются и диаграммы других видов, необходимые для генерации исходных текстов на выбранном языке программирования. И для каждого объекта диаграммы существует масса тонких настроек.

ВТОРОЕ ЛАБОРАТОРНОЕ ЗАНЯТИЕ

Тема:

Построение с помощью программы RationalRoseUML диаграмм, изображающих логические схемы баз данных, на примере построения UML диаграммы, изображающей фрагмент концептуальной схемы базы данных АИС регистрации учебных курсов.

Диаграмма классов

Диаграмма классов является основным логическим представлением разрабатываемой модели и содержит детальную информацию о внутреннем устройстве объектно-ориентированной программной системы или, используя современную терминологию, об архитектуре программной системы. Активизировать рабочее окно диаграммы классов можно несколькими способами:

  1. окно диаграммы классов появляется по умолчанию в рабочем окне диаграммы после создания нового проекта (Рис.1.1);
  2. щелкнуть на кнопке с изображением диаграммы классов на стандартной панели инструментов;
  3. раскрыть логическое представление (Logical View) в браузере проекта и дважды щелкнуть на пиктограммеMain (Главная);
  4. выполнить операцию главного меню: Browse Назначение кнопок специальной панели инструментов - student2.ru Class Diagram (Обзор Назначение кнопок специальной панели инструментов - student2.ru Диаграмма классов).

Назначение кнопок специальной панели инструментов - student2.ru

Рис. 1.1 Рабочее окно диаграммы классов

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

Назначение отдельных кнопок панели можно узнать также из всплывающих подсказок.

Таблица 1.1 Назначение кнопок специальной панели инструментов для диаграммы классов
Графическое изображение Всплывающая подсказка Назначение кнопки
Назначение кнопок специальной панели инструментов - student2.ru Selection Tool Превращает изображение курсора в форму стрелки для последующего выделения элементов на диаграмме
Назначение кнопок специальной панели инструментов - student2.ru Text Box Добавляет на диаграмму текстовую область
Назначение кнопок специальной панели инструментов - student2.ru Note Добавляет на диаграмму примечание
Назначение кнопок специальной панели инструментов - student2.ru Anchor Note to Item Добавляет на диаграмму связь примечания с соответствующим графическим элементом диаграммы
Назначение кнопок специальной панели инструментов - student2.ru Class Добавляет на диаграмму класс
Назначение кнопок специальной панели инструментов - student2.ru Interface Добавляет на диаграмму интерфейс
Назначение кнопок специальной панели инструментов - student2.ru Unidirectional Association Добавляет на диаграмму направленную ассоциацию
Назначение кнопок специальной панели инструментов - student2.ru Association Class Добавляет на диаграмму ассоциацию класс
Назначение кнопок специальной панели инструментов - student2.ru Package Добавляет на диаграмму пакет
Назначение кнопок специальной панели инструментов - student2.ru Dependency or Instantiates Добавляет на диаграмму отношение зависимости
Назначение кнопок специальной панели инструментов - student2.ru Generalization Добавляет на диаграмму отношение обобщения
Назначение кнопок специальной панели инструментов - student2.ru Realize Добавляет на диаграмму отношение реализации

На специальной панели инструментов по умолчанию присутствует только часть пиктограмм элементов, которые могут быть использованы для построения диаграммы классов. Добавить кнопки с пиктограммами других графических элементов или удалить ненужные кнопки можно с помощью настройки специальной панели инструментов. Соответствующее диалоговое окно настройки специальной панели инструментов для диаграммы классов можно вызвать аналогично другим панелям с помощью операции контекстного меню Customize (Настройка) при позиционировании курсора на специальной панели инструментов.

Для добавления класса на диаграмму классов нужно с помощью левой кнопки мыши нажать кнопку с изображением пиктограммы класса на специальной панели инструментов, отпустить левую кнопку мыши и щелкнуть левой кнопкой мыши на свободном месте рабочего листа диаграммы. На диаграмме появится изображение класса с маркерами изменения его геометрических размеров и предложенным средой именем по умолчанию NewClass. Или создать класс через пункт всплывающего меню New->Class (Рис.1.2), а потом “перетащить” созданный класс из окна браузера проекта в область окна диаграммы классов (Рис. 1.4).

Назначение кнопок специальной панели инструментов - student2.ru

Рис. 1.2 Создание нового класса

В нашем случае (АИС регистрации учебных курсов) нужно создать 4 класса (Рис.1.3):

  • Пользователь;
  • Преподаватель;
  • Студент;
  • Учебный курс (из объектов университета).

Назначение кнопок специальной панели инструментов - student2.ru

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

“Перетащим” мышкой только что созданные классы из окна браузера проекта в область окна диаграммы классов (рис. 1.4.)

Назначение кнопок специальной панели инструментов - student2.ru

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

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

На этом лабораторном занятии мы рассмотрим только создание и редактирование атрибутов классов, операции же будут подробно описаны в лабораторной работе №3.

Давайте добавим аттрибуты для класса “Пользователь”:

l Имя;

l Ид.номер.

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

  • С помощью операции контекстного меню NewAttribute (Новый атрибут) для класса, выделенного на диаграмме классов. В этом случае активизируется курсор ввода текста в области графического изображения класса на диаграмме (Рис. 1.5).
  • С помощью операции контекстного меню: New Назначение кнопок специальной панели инструментов - student2.ru Attribute (Новый Назначение кнопок специальной панели инструментов - student2.ru Атрибут) для класса, выделенного в браузере проекта. В этом случае активизируется курсор ввода текста в области иерархического представления класса в браузере проекта под именем соответствующего класса.
  • С помощью операции контекстного меню Insert (Вставить), вызванного при позиционировании курсора в области открытой вкладки атрибутов в диалоговом окне свойств ClassSpecification соответствующего класса (Операция контекстного меню OpenSpecification или двойной «щелчок» мышью на изображении класса) (Рис. 1.6).

Назначение кнопок специальной панели инструментов - student2.ru

Рис. 1.5 Окно диаграммы классов – добавляем атрибут к классу

Назначение кнопок специальной панели инструментов - student2.ru Назначение кнопок специальной панели инструментов - student2.ru

Рис. 1.6 Диалоговое окно свойств класса – нужно перейти к вкладке Attributes

Назначение кнопок специальной панели инструментов - student2.ru

Рис. 1.7 Класс “Пользователь”

После добавления атрибута к классу по умолчанию ему присваивается имя name и некоторый квантор видимости (Рис. 1.7). Нужно запомнить, что имена атрибутов и операций классов должны начинаться со строчной буквы.

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

Назначение кнопок специальной панели инструментов - student2.ru

Теперь добавим атрибуты всем классам, изображенным в окне диаграммы классов (Рис.1.8).

Назначение кнопок специальной панели инструментов - student2.ru

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

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

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

l ассоциацию;

l обобщение.

Добавление на диаграмму ассоциации между двумя классами выполняется аналогично тому как это делалось на 1ой Лабораторной работе (Рис.2.1, 2.2) Назначение кнопок специальной панели инструментов - student2.ru . Построим взаимосвязь между классами “Преподаватель” и “Учебный курс” (Рис.2.2).

Назначение кнопок специальной панели инструментов - student2.ru

Рис. 2.1 Окно диаграммы классов – отображает элемент специальной панели инструментов- “Ассоциация”

Но тогда ассоциация будет однонаправленной (Рис. 2.2), а нам нужно будет получить двунаправленное отношение “1” к “0..5”, т.е. один преподаватель может вести от 0 до 5 учебных курсов.

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

Ассоциация– это структурное двунаправленное отношение, описывающее совокупность взаимоотношений между объектами. По сути дела ассоциация является сверткой бинарных отношений между объектами. Эту свертку может мысленно выполнить в своем сознании специалист (например, программист), который видит пиктограмму ассоциации на UML диаграмме.

Пометка единица (1) на левом конце линии ассоциации означает, что в двунаправленном отношении, наряду с многими, например, работниками участвует один работодатель. Единица и звездочка на правом конце линии означает "единица или больше" (1..*). Если один конец линии ассоциации помечен единицей (1), то пометка на другом конце линий называется кратностью ассоциации.

На линии ассоциации можно также задать кратность равную единице (1), можно указать диапазон кратности: ноль или единица (0..1), много (0..*). Разрешается также указывать кратность определенным числом (например 5). С помощью списков можно задавать и более сложные кратности. Например, список 0..1, 3..4, 6..* означает "любое число объектов кроме 2 и 5".

Назначение кнопок специальной панели инструментов - student2.ru

Рис. 2.2 Окно диаграммы классов – отображает однонаправленную взаимосвязь (отношение) двух классов “Преподаватель” и “Учебный курс”

Изменим свойства для даннойассоциации, предложенные средой по умолчанию. Это можно выполнить с помощью окна спецификации свойств ассоциации. Доступ к диалоговому окну спецификации свойств ассоциацииAssociationSpecification можно получить после выделения линии ассоциации на диаграмме классов (Рис. 2.3) или в браузере проекта и двойного щелчка на ней левой кнопки мыши (Рис. 2.4) .

Назначение кнопок специальной панели инструментов - student2.ru

Рис. 2.3Диалоговое окно спецификации свойств ассоциации

Первое, что мы делаем — убираем направленность отношения: во всплывающем меню ассоциации («Клик» правой кнопкой мыши) убираем галочку с пункта «Navigate» (Рис.2.4).

Назначение кнопок специальной панели инструментов - student2.ru

Рис. 2.4 Всплывающее меню свойств ассоциации

Вторым шагом нужно указать кратности для ассоциации: со стороны “Пользователя” 1, а со стороны “Учебного курса” диапацон кратности “0..5” (от 0 до 5).

Это можно сделать двумя способами:

l с помощью всплывающего меню ассоциации (см.выше) – выбрать в пункте Multiplicity (дословно “Сложность отношения”) нужную кратность (Рис. 2.5);

l в диалоговом окне свойств ассоциации (OpenSpecification - Рис.2.5) на вкладках RoleADetail и RoleBDetail выбрать кратности для обеих сторон ассоциации из выпадающего списка пункта Multiplicity.

Воспользуемся вторым способом (Рис. 2.6). У стороны “Учебного курса” в меню Multiplicity выберем пункт “один ко многим” (1..* или 1..n) и вместо n поставим “5”.

Назначение кнопок специальной панели инструментов - student2.ru

Рис. 2.5 Всплывающее меню свойств ассоциации

Назначение кнопок специальной панели инструментов - student2.ru Назначение кнопок специальной панели инструментов - student2.ru

Рис. 2.6 Диалоговое окно свойств ассоциации

Полученная взаимосвязь (отношение) представлено на Рис.2.7.

Назначение кнопок специальной панели инструментов - student2.ru

Рис. 2.7Окно диаграммы классов – отображает взаимосвязь (отношение) двух классов “Преподаватель” и “Учебный курс”

Создадим аналогично взаимосвязь между классами “Студент” и “Учебный курс” (Рис.2.8)

Назначение кнопок специальной панели инструментов - student2.ru

Рис. 2.8Окно диаграммы классов – отображает взаимосвязь (отношение) двух классов “Студент” и “Учебный курс”

Заключительным этапом построения нашей диаграммы классов будет создание взаимосвязи типа “обобщение”(Generalization) между классами “Пользователя”, “Преподавателя” и “Студента”.

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

Обобщение - это однонаправленное отношение, называемое "потомок/прародитель", в котором объект "потомок" может быть подставлен вместо объекта прародителя (родителя или предка). Потомок наследует структуру и поведение своего родителя. Стрелка всегда указывает на родителя.

В данном случае родитель – это “Пользователь”.

Добавление на диаграмму отношения обобщения между двумя классами выполняется следующим образом. На специальной панели инструментов необходимо нажать кнопку с изображением пиктограммы обобщения Назначение кнопок специальной панели инструментов - student2.ru и отпустить левую кнопку мыши. Далее на диаграмме классов надо выделить первый элемент обобщения или потомок, от которого исходит стрелка, и, не отпуская нажатую левую кнопку мыши, переместить ее указатель ко второму элементу отношения или предку, к которому направлена стрелка. (Рис.3.1)

Назначение кнопок специальной панели инструментов - student2.ru

Рис. 3.1Окно диаграммы классов – Фрагмент простой концептуальной схемы базы данных компьютерной системы университета “Истерн”

ТРЕТЬЕ ЛАБОРАТОРНОЕ ЗАНЯТИЕ

Тема:

Построение с помощью программы RationalRoseUML диаграмм, изображающих логические схемы баз данных, на примере построения UML диаграммы, изображающей большой фрагмент концептуальной схемы базы данных АИС регистрации учебных курсов

Введение

Пример построения простой диаграммы классов был детально рассмотрен на втором лабораторном занятии. Поэтому некоторые шаги построения диаграммы классов данного лабораторного занятия будут рассмотрены вкратце.

На лабораторном занятии мы подробно рассмотрим добавление и изменение свойств атрибутов классов, а так же добавление операций классов.

Наши рекомендации