Лекции.Орг


Поиск:




Второе лабораторное занятие

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

Тема:

Построение с помощью программы 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), то вы получите действующее лицо;

 

 

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

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

 

 

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

 

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

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

 

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

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

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

 

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

 

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

 

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

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

 

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

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

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

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

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

 

 

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

 

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


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

Тема:

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

 

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

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

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

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

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

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

Таблица 1.1 Назначение кнопок специальной панели инструментов для диаграммы классов

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

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

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

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

 

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

 

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

 

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

 

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

 

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

 

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

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

l Имя;

l Ид.номер.

 

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

 

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

 

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

      

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

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

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

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

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

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

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

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

l обобщение.

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

Рис. 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".

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

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

 

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

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

Рис. 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”.

 

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

 

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

 

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

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

 

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

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

 

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

 

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

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

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

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

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




<== предыдущая лекция | следующая лекция ==>
Методика проверки анероидно-манометрических приборов | Третье лабораторное занятие
Поделиться с друзьями:


Дата добавления: 2018-10-15; Мы поможем в написании ваших работ!; просмотров: 556 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Что разум человека может постигнуть и во что он может поверить, того он способен достичь © Наполеон Хилл
==> читать все изречения...

978 - | 888 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.011 с.