- •Университет машиностроения
- •Визуальное моделирование
- •Треугольник успеха
- •Роль нотации
- •Итеративная и инкрементальная разработка
- •Методология Rational Unified Process
- •Структурирование по времени
- •Структурирование по компонентам процесса
- •Стадии разработки
- •Начало проекта
- •Цели и задачи этапа (начало проекта)
- •Последовательность этапов проектирования
- •Последовательность этапов…
- •Последовательность этапов…
- •Последовательность этапов…
- •Примерный проект (описание)
- •Постановка задачи регистрации курсов
- •Начало проектирования Создание прецедентов
- •Актёры в системе регистрации курсов
- •Описание актёров
- •Прецеденты
- •Поток событий прецедента
- •Реализация потока событий
- •Пример потока событий для прецедента
- •Пример потока событий (продолжение)
- •Пример потока событий (продолжение)
- •Прикрепление описание потока событий
- •Отношения прецедентов
- •Диаграммы прецедентов (use cases diagrams)
- •Диаграммы прецедентов (use cases diagrams)
- •Диаграммы действий (activity diagrams)
- •Действия (Activity)
- •Переходы (State Transition)
- •Элементы выбора (Decision)
- •Условные переходы
- •Прямолинейный (Rectilinear) режим отображения
- •Линии синхронизации
- •Секции
- •Начальное и конечное состояния
- •Объекты и классы
- •Состояние, поведение и индивидуальность
- •Объекты и классы (продолжение)
- •Обозначение и регистрация классов
- •Стереотипы классов
- •Стереотипы классов
- •Определение стереотипа и описание класса
- •Пакеты
- •Объекты и классы в системе регистрации курсов
- •Создание пакетов в системе регистрации курсов
- •Диаграммы классов
- •Диаграммы классов (продолжение)
- •Диаграммы классов с отображением пакета
- •Реализация прецедентов
- •Диаграмма реализации прецедентов
- •Связь реализации с представлением
- •Диаграммы последовательности действий
- •Диаграммы последовательности действий
- •Диаграммы последовательности действий
- •Диаграммы последовательности действий
- •Диаграммы последовательности действий и граничные классы
- •«Сложность» диаграмм последовательности действий
- •Диаграммы взаимодействий
- •Диаграммы взаимодействий (продолжение)
- •Диаграммы для сценария добавление учебного курса
- •Диаграммы для сценария добавление учебного курса
- •Резюме
- •Определение отношений
- •Ассоциативные отношения
- •Агрегационные отношения
- •Агрегационные отношения
- •Роли классов в ассоциации
- •Мощность отношений
- •Возвратные отношения
- •Отношения в системе регистрации учебных курсов
- •Отношения между пакетами
- •Отношения между пакетами в системе регистрации учебных курсов
- •Анализ поведения и структуры классов
- •Добавление поведения и структуры
- •Документирование операций
- •Создание и документирование атрибутов
- •Отображение атрибутов и операций
- •Ассоциативные классы
- •Университет машиностроения Кафедра «Автоматика и процессы управления»
Состояние, поведение и индивидуальность
Состоянием (state) объекта называется одно из условий, в которых он может находиться.
Состояние меняется со временем и определяется набором свойств, называемых атрибутами (attribute), значений свойств и отношений между объектами.
Поведение (behavior) определяет, как объект реагирует на запросы других объектов и что может делать сам объект.
Поведение реализуется с помощью наборов операций (operation) для объекта.
Индивидуальность (identity) означает, что каждый объект уникален, даже если его состояние идентично состоянию другого объекта.
Информатика. 2 семестр. Тема 13. UML
Объекты и классы (продолжение)
Класс (class) – это описание группы объектов с общими свойствами (атрибутами), поведением (операциями), отношениями с другими объектами и семантикой.
Фактически, класс представляет собой шаблон для создания объекта. Каждый объект является экземпляром конкретного класса и не может быть экземпляром нескольких классов.
Класс учебный курс (CourseOffering) может определяться следующими характеристиками:
•атрибуты – место занятий, время занятий;
•операции – получить место занятий, получить время занятий, добавить студента на курс.
«Алгебра 101, раздел 1» и «Алгебра 101, раздел 2» – это объекты, принадлежащие классу учебный курс.
Информатика. 2 семестр. Тема 13. UML
Обозначение и регистрация классов
Нотация для обозначения класса содержит три секции: имя класса, структуру (атрибуты) и поведение (операции).
Нотация языка UML для обозначения класса
Регистрация класса в разделе LogicalView модели в Rational Rose
Информатика. 2 семестр. Тема 13. UML
Стереотипы классов
Стереотип класса определяет его тип – характер использования.
Классы со стереотипами
Базовые стереотипы классов – это класс-сущность, граничный класс, управляющий класс.
Собственные стереотипы задаются двойными треугольными скобками вокруг наименования стереотипа. UML допускает использование собственных обозначений (значков) для стереотипов классов.
Информатика. 2 семестр. Тема 13. UML
Стереотипы классов
Класс-сущность (entity class) используется для моделирования данных и поведения с длинным жизненным циклом. Как правило, такие классы представляют сущности реального мира или внутренние элементы системы.
Часто классы-сущности называют классами предметной области, потому что они представляют абстракции предметов реального мира.
Граничные классы (boundary class) обеспечивают взаимодействие между окружающей средой и внутренними элементами системы. Граничные классы предоставляют интерфейс для пользователя или другой системы (актёров).
Управляющие классы (control class) служат для моделирования последовательного поведения одного или нескольких прецедентов и координации событий, реализующих заложенное в них поведение. Управляющие классы «исполняют» прецедент и определяют его динамику.
Информатика. 2 семестр. Тема 13. UML
Определение стереотипа и описание класса
Документирование (описание) класса поясняет его назначение, а не структуру. Трудности с описанием класса, скорее всего,
свидетельствуют о том, что он – недостаточно хорошая абстракция.
Установка стереотипа и описание класса в Rational Rose
Информатика. 2 семестр. Тема 13. UML
Пакеты
Пакет (package) в логическом представлении модели – это набор классов и других связанных пакетов.
Каждый пакет содержит интерфейс, реализуемый набором его общедоступных классов (public classes) – тех, с которыми могут общаться классы из других пакетов.
Остальные классы пакета – это классы реализации (implementation classes), которые не взаимодействуют с классами в других пакетах.
Нотация язык UML для пакета
Регистрация пакета и перемещение класса
Информатика. 2 семестр. Тема 13. UML
Объекты и классы в системе регистрации курсов
(Для сценария добавление учебного курса – внутреннего потока прецедента выбор предметов для преподавания)
Граничные классы
Прецедент взаимодействует только с актёром преподаватель.
Интерфейс преподавателя: параметры курса преподавателя, и добавление учебного курса.
Классы-сущности
Предмет, курс, преподаватель (данные)
Управляющие классы
Нужен всего один класс для обработки
потока событий для прецедента –
менеджер курсов преподавателя
Классы для сценария
Информатика. 2 семестр. Тема 13. UML
Создание пакетов в системе регистрации курсов
Нужно выделить классы и объединить их в логические группы Классы
Предмет, учебный курс, преподаватель, параметры курса преподавателя, добавление учебного курса, менеджер курсов преподавателя.
Группы
•Объекты, специфические для университета;
•Объекты, содержащие информацию о людях;
•Интерфейсы для актёров.
Пакеты
•Интерфейсы
•Объекты университета
•Сведения о людях
Пакеты
Информатика. 2 семестр. Тема 13. UML
Диаграммы классов
Диаграммы классов (class diagrams) используются для представления классов в модели
Главная диаграмма классов отображает пакеты системы
Главная диаграмма классов
Информатика. 2 семестр. Тема 13. UML
