Группировка классов в пакеты
МИНОБРНАУКИ РОССИИ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «НИЖЕГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ ИМ. Р.Е. АЛЕКСЕЕВА»
Кафедра: «Графические информационные системы»
Лабораторная работа №2 по дисциплине
ИС «Университет»
Выполнила: Изосова С.Е. Группа 12-ИТ Проверил: Райкин Л.И.
г. Нижний Новгород 2015 г. 1. Цель работы Получить навыки построения диаграмм классов, создания пакетов и группировки классов в пакеты в среде визуального объектно-ориентированного моделирования систем IBM Rational Rose Enterprise. 2. Создание диаграммы вариантов Предметной областью разработки системы является «Университет» со следуюей ER-диаграммой:
Создание диаграммы классов для сценария "Добавить новую лекцию" прецедента "Управление информацией о лекции" Диаграммы классов будем рассматривать с концептуальной точки зрения. Для упрощения задачи и чтобы не загромождать диаграммы несущественными деталями методы setX, getX для каждого атрибута Х классов задавать не будем. Создадим в Логическом представлении браузера новую диаграмму классов и назовем ее "Добавить новую лекцию". В поле документации запишем для нее следующий текст: "Диаграмма классов для сценария" Добавить новую лекцию " прецедента " Управление информацией о лекции". Заполнение диаграммы начнем с определения классов-сущностей. Рассматриваемый сценарий состоит из: - Самой лекции; - Дисциплины, которой принадлежит лекция; - Преподавателя, который ведет лекцию. Создадим классы-сущности Лекция, Дисциплина и Преподаватель. Опишем каждый класс. Таблица 1 Класс Lecture
Таблица 2 Класс Discipline
Таблица 3 Класс Teacher
Результат создания классов-сущностей показан на рис.1 Рис. 1 Добавим отношения между классами (рис. 2): - - класс Teacher и Discipline – отношение ассоциации, поскольку данные два класса просто связаны друг с другом и никакие другие типы связей здесь применить нельзя. Один преподаватель может преподавать несколько дисциплин, каждую дисциплину может преподавать несколько преподавателей, поэтому кратность связи со стороны класса Teacher и Discipline – 1…n; - класс Discipline и Lecture - отношение композиции, поскольку лекция является частью дисциплины, и без неё существовать не может. К одной дисциплине относиться несколько лекций, в то время как лекция может принадлежать только одной дисциплине, поэтому кратность связи со стороны Discipline - 1, со стороны Lecture - 1..n;
Рис. 2 Добавим теперь на диаграмму граничные (стереотип boundary) и управляющие (стереотип control) классы (рис. 3). Рассматриваемый сценарий - это только одно из действий, которые обеспечивает прецедент "Добавить лекцию". Прецедент также позволяет просмотреть, отредактировать или удалить лекцию. Это означает, что необходимо предусмотреть механизм, который позволяет выбирать необходимое действие. Создадим для этого граничный класс LectureOptions (Параметры работы с лекцией) с комментарием "Класс, обеспечивающий механизм работы с лекциями". Также создадим граничный класс AddNewLecture (Добавление новой лекции), который будет служить для добавления новой лекции (комментарий - "Класс служит для добавления новой лекции"). Отношение между этими классами - агрегация, поскольку в данном случае класс AddNewLecture рассматривается как часть класса LectureOptions, частями которого также будут классы для просмотра, редактирования и удаления заказов. Кратность связи 1 к 1, поскольку в состав класса LectureOptions входит только один класс AddNewLecture. Перейдем теперь к управляющим классам. Добавим управляющий класс ColleagueEducDep (Сотрудник учебного отдела) с комментарием "Управляющий класс для обработки потока событий прецедента "Добавить новую лекцию", который будет обеспечивать обработку потока событий для рассматриваемого прецедента. Данный класс будет связан с классами AddNewLecture и Lecture. Отношение между классами AddNewLecture и ColleagueEducDep - однонаправленная ассоциация с кратностью связи 1 к 1, поскольку один экземпляр класса AddNewLecture взаимодействует только с одним экземпляром класса ColleagueEducDep. Отношение между классами ColleagueEducDep и Lecture - однонаправленная ассоциация с кратностью связи 1 к 1..n, поскольку один класс ColleagueEducDep может взаимодействовать с несколькими классами Lecture. Окончательный вариант диаграммы классов показан на рис. 3: Рис. 3 Создание пакетов
Пакеты предназначены для группировки элементов в группы по определенным критериям. В простейшем случае классы можно группировать по их стереотипам. Создадим три пакета: Entities (классы-сущности), Boundaries (граничные классы) и Control (управляющие классы). Для этого необходимо щелкнуть правой кнопкой мыши на Logical View (Логическое представление) браузера, в появившемся контекстном меню выбрать пункт New > Package (Создать > Пакет), и ввести имя пакета. Результат создания пакетов показан на рис.4: Рис. 4 В поле документации (Documentation) для каждого пакета зададим комментарий: - для пакета Boundaries комментарий: пакет содержит граничные классы; - для пакета Control комментарий: пакет содержит управляющие классы; - для пакета Entities комментарий: пакет содержит классы-сущности.
Группировка классов в пакеты
Группировка классов в пакеты осуществляется путем перетаскивания в Логическом представлении браузера соответствующего класса в соответствующий пакет. Группировать созданные классы будем следующим образом: - классы Teacher, Lecture, Discipline перенесем в пакет Entities; - классы LectureOptions и AddNewLecture перенесем в пакет Boundary; - класс ColleagueEducDep перенесем в пакет Control.
Итоговой результат приведен на рис. 5 Рис. 5
Популярное: Почему стероиды повышают давление?: Основных причин три... Как вы ведете себя при стрессе?: Вы можете самостоятельно управлять стрессом! Каждый из нас имеет право и возможность уменьшить его воздействие на нас... Организация как механизм и форма жизни коллектива: Организация не сможет достичь поставленных целей без соответствующей внутренней... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (1110)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |