Поведение (behavior) определяет, как объект реагирует на запросы других объектов и что может делать сам объект. Поведение реализуется с помощью набора операций (operation) для объекта. В системе регистрации курсов объект учебный курс может иметь операции добавить студента и удалить студента.
Индивидуальность (identity) означает, что каждый объект уникален, даже если его состояние идентично состоянию другого объекта. Например: Алгебра 101, секция 1 и Алгебра 101, секция 2 — два объекта в системе регистрации курсов. Хотя они оба являются учебными курсами, каждый из них уникален.
В языке UML объект изображается в виде прямоугольников, а его имя пишется с подчеркиванием — см. рис. 4.1.

Рис. 4.1. Нотация языка UML для объекта
Что такое класс
Класс (class) — это описание группы объектов с общими свойствами (атрибутами), поведением (операциями), отношениями с другими объектами и семантикой. Таким образом, класс представляет собой шаблон для создания объекта.
Каждый объект является экземпляром конкретного класса и не может быть экземпляром нескольких классов. Например, класс учебный курс (CourseOffering) может определяться следующими характеристиками:
□ атрибуты — место занятий, время занятий;
□ операции — получить место занятий, получить время занятий, добавить студента на курс.
Алгебра 101, секция 1 и Алгебра 101, секция 2 — это объекты, принадлежащие классу учебный курс. Каждый объект имеет значения атрибутов и доступ к операциям, определенным классом учебный курс.
«Хороший» класс представляет одну и только одну абстракцию, то есть должен отражать одну основную сущность. Например, класс, способный хранить информацию о студентах и данные о курсах, которые студент посещает в течение нескольких лет, не является «хорошим» классом, потому что не представляет одну сущность. Такой класс необходимо разделить на два связанных класса: студент и история студента.
Названия классов выбираются в соответствии с понятиями предметной области. Имя должно быть существительным в единственном числе, наиболее точно характеризующим предмет. В качестве имени класса можно использовать акроним, если он имеет одинаковое значение для всех представляемых сущностей. При использовании акронима в описании класса желательно указать полное название.
Иногда трудно отличить объект от класса. Почему, например, Алгебра 101, секция 1 — объект, а не класс? Что отличает его от объекта Алгебра 101, секция 2? Ответы на эти вопросы субъективны. Изучив эти объекты, можно заключить, что у них одинаковая структура и поведение. Они лишь являются разными учебными предметами семестра. Кроме того, в системе регистрации курсов можно обнаружить множество схожих сущностей с одинаковой структурой и поведением: Музыка 101, секция 1; История 101, секция 1; История 101, секция 2 и т. п. Значит, допустимо создание единого класса учебный курс (CourseOffering).
В языке UML классы изображаются в виде разделенных прямоугольников. В верхней секции указывается имя класса, средняя секция содержит его структуру — атрибуты, а нижняя описывает его поведение — операции. Класс показан на рис. 4.2.

Рис. 4.2. Нотация языка UML для класса

Рис. 4.3. Класс, созданный в окне браузера
Порядок создания классов в программе Rational Rose:
1. Щелкните правой кнопкой мыши по разделу LogicalView (Логическое представление) в окне браузера.
2. В появившемся контекстно-зависимом меню выберите команду New => Class(Создать => Класс). В список браузера будет добавлен новый класс с именем New Class.
3. Введите нужное имя класса.
Класс в окне браузера показан на рис. 4.3.
Стереотипы и классы
Мы уже говорили о стереотипах отношений на диаграмме функций. Классы тоже могут иметь стереотипы. Как и ранее, стереотип используется для создания нового типа элемента моделирования, в данном случае для создания новых типов классов. Некоторые основные стереотипы класса — это сущность, граничный элемент, элемент управления, сервисный элемент и исключение.
Стереотип класса указывается под его именем и заключается в двойные треугольные скобки. Если требуется, стереотип можно отобразить графическим значком или выделить цветом. В программе Rational Rose есть изображения для стереотипов Rational Unified Process — управляющего элемента, сущности и граничного элемента. Эти стереотипы, а также пример класса со стереотипом исключение показаны на рис. 4.4.
Читать дальше
Конец ознакомительного отрывка
Купить книгу