- •Университет машиностроения
- •Визуальное моделирование
- •Треугольник успеха
- •Роль нотации
- •Итеративная и инкрементальная разработка
- •Методология Rational Unified Process
- •Структурирование по времени
- •Структурирование по компонентам процесса
- •Стадии разработки
- •Начало проекта
- •Цели и задачи этапа (начало проекта)
- •Последовательность этапов проектирования
- •Последовательность этапов…
- •Последовательность этапов…
- •Последовательность этапов…
- •Примерный проект (описание)
- •Постановка задачи регистрации курсов
- •Начало проектирования Создание прецедентов
- •Актёры в системе регистрации курсов
- •Описание актёров
- •Прецеденты
- •Поток событий прецедента
- •Реализация потока событий
- •Пример потока событий для прецедента
- •Пример потока событий (продолжение)
- •Пример потока событий (продолжение)
- •Прикрепление описание потока событий
- •Отношения прецедентов
- •Диаграммы прецедентов (use cases diagrams)
- •Диаграммы прецедентов (use cases diagrams)
- •Диаграммы действий (activity diagrams)
- •Действия (Activity)
- •Переходы (State Transition)
- •Элементы выбора (Decision)
- •Условные переходы
- •Прямолинейный (Rectilinear) режим отображения
- •Линии синхронизации
- •Секции
- •Начальное и конечное состояния
- •Объекты и классы
- •Состояние, поведение и индивидуальность
- •Объекты и классы (продолжение)
- •Обозначение и регистрация классов
- •Стереотипы классов
- •Стереотипы классов
- •Определение стереотипа и описание класса
- •Пакеты
- •Объекты и классы в системе регистрации курсов
- •Создание пакетов в системе регистрации курсов
- •Диаграммы классов
- •Диаграммы классов (продолжение)
- •Диаграммы классов с отображением пакета
- •Реализация прецедентов
- •Диаграмма реализации прецедентов
- •Связь реализации с представлением
- •Диаграммы последовательности действий
- •Диаграммы последовательности действий
- •Диаграммы последовательности действий
- •Диаграммы последовательности действий
- •Диаграммы последовательности действий и граничные классы
- •«Сложность» диаграмм последовательности действий
- •Диаграммы взаимодействий
- •Диаграммы взаимодействий (продолжение)
- •Диаграммы для сценария добавление учебного курса
- •Диаграммы для сценария добавление учебного курса
- •Резюме
- •Определение отношений
- •Ассоциативные отношения
- •Агрегационные отношения
- •Агрегационные отношения
- •Роли классов в ассоциации
- •Мощность отношений
- •Возвратные отношения
- •Отношения в системе регистрации учебных курсов
- •Отношения между пакетами
- •Отношения между пакетами в системе регистрации учебных курсов
- •Анализ поведения и структуры классов
- •Добавление поведения и структуры
- •Документирование операций
- •Создание и документирование атрибутов
- •Отображение атрибутов и операций
- •Ассоциативные классы
- •Университет машиностроения Кафедра «Автоматика и процессы управления»
Цели и задачи этапа (начало проекта)
Основная цель – оформление (описание) процессов Решаемые задачи:
Анализ:
•бизнес-требований;
•доступных ресурсов;
•возможностей использования различных технологий;
•идей и пожеланий конкретных пользователей.
Выработка целевой концепции системы, описание задач
иприоритетов:
•профессиональные и научные исследования
•мозговой штурм;
•анализ эффективности;
•анализ функциональности;
•создание прототипов.
Первичное сокращение ресурсов и времени
Информатика. 2 семестр. Тема 13. UML
Последовательность этапов проектирования
при создании информационной системы
1.Составить общее словесное описание системы:
•Техническое (рабочее) наименование, отвечающее на вопрос «что делающая?»
•Краткое описание, определяющее преимущества и особенности (ограничения);
•Интерпретация основного процесса на естественном языке с предполагаемым распределением ролей.
2.Определить риски
3.Записать известные особенности работы системы:
•Что могут делать пользователи (использование);
•Какая информация выдается системой (содержание);
•Какие ограничения на множества известны (количества);
•Этапы (шаги) основного процесса;
•Условия возникновения альтернативных процессов.
Информатика. 2 семестр. Тема 13. UML
Последовательность этапов… |
(продолжение) |
Анализ поведения
4.Создать прецеденты (Use cases)
•Определить актёров (actor) и их роли (возможности, обязанности) в системе;
•Определить для актёров направления потоков данных (инициации взаимодействия);
•Описать возможности взаимодействия актёров с системой (диалоги актёр-система) как прецеденты;
•Записать потоки событий для прецедентов.
5.Установить отношения прецедентов
6.Составить диаграммы прецедентов
7.Составить диаграммы действий (Activity diagram) как схем решения каких-нибудь задач в системе
ДД могут затрагивать сразу нескольких актёров, включать основные и альтернативные потоки событий прецедентов
Информатика. 2 семестр. Тема 13. UML
Последовательность этапов… |
(продолжение) |
Анализ структуры
8.Определить классы и объекты
•Классы задают структуру объектов и их поведение
•В рамках ООП работа системы описывается через операции объектов над объектами
9.Определить стереотипы классов
Стереотип устанавливает принцип использования объектов данного класса в системе
10.При большом количестве классов создать пакеты
Изучение взаимодействия объектов
11. Исследовать реализацию прецедентов через сценарии (scenario) – одиночные проходы по потоку событий
Информатика. 2 семестр. Тема 13. UML
Последовательность этапов… |
(продолжение) |
12. Отобразить сценарии через диаграммы взаимосвязи (interaction diagrams) :
•диаграммы последовательности действий (sequence diagrams) – для просмотра сценария во времени;
•диаграммы взаимодействий (collaboration diagrams) – для анализа взаимодействия объектов.
Определение отношений объектов 13. Проанализировать семантические отношения
•ассоциативные;
•агрегационные.
14. Определить мощность (multiplicity) отношений
15.При наличии в проекте пакетов, между ними отображаются отношения зависимости.
16.Определить поведение и структуру для классов
Информатика. 2 семестр. Тема 13. UML
Примерный проект (описание)
Система регистрации учебных курсов для университета
Описание:
Учебный процесс построен на свободной записи студентов на учебные курсы. Контролируется общее количество учебных часов.
Организация процесса регистрации:
Перед началом семестра преподаватели решают, какие курсы они будут вести. Служба регистрации вносит информацию в каталог курсов. Студент заполняет регистрационную форму.
После сбора заявлений выполняется процедура распределения студентов по курсам. Возможна корректировка информации о студентах.
По окончании распределения студентам высылается расписание для проверки.
Повторяются операции сбора заявлений и распределения Преподаватель получает список студентов для каждого курса
Информатика. 2 семестр. Тема 13. UML
Постановка задачи регистрации курсов
Главные риски:
Эффективность сохранения и получения информации об учебных планах и учёта студентов
Порядок работы системы:
•В начале студенты могут запросить каталог курсов;
•Информация о курсе должна содержать фамилию преподавателя, название факультета и краткое описание, помогающее студенту сделать выбор;
•Студент должен выбрать четыре курса;
•Также студенту нужно указать ещё два варианта, на случай, если курсы будут переполнены или отменены;
•На каждый курс должно быть записано не менее трёх и не более десяти студентов;
•Курс, на который запишутся менее трёх студентов, будет отменён;
•По завершении регистрации система направляет
информацию в систему оплаты для выставления счетов.
Информатика. 2 семестр. Тема 13. UML
Начало проектирования Создание прецедентов
Поведение разрабатываемой системы описывается с помощью функциональной модели, отображающей
системные прецеденты (use cases), системное окружение (актёры – actors) и связи между прецедентами и актёрами (диаграммы прецедентов – use cases diagrams)
Актёры
Актёры не являются частью системы – они представляют собой кого-то или что-то, то должно взаимодействовать с системой
Актёры могут:
•только снабжать информацией систему;
•только получать информацию из системы;
•обмениваться информацией с системой.
Нотация языка UML для изображения актёра
Информатика. 2 семестр. Тема 13. UML
Актёры в системе регистрации курсов
Возможности актёров:
•Студент хочет зарегистрироваться на курсы;
•Преподаватель хочет выбрать курсы, которые будет читать;
•Регистратор должен создать учебный план и составить каталог на семестр;
•Регистратор должен хранить информацию о курсах, преподавателях и студентах;
•Система оплаты должна получать информацию из системы регистрации.
Регистрация актёра в Rational Rose
Информатика. 2 семестр. Тема 13. UML
Описание актёров
Возможный список актёров:
•Студент – человек, который регистрируется для посещения занятий в университете;
•Преподаватель – человек, который читает лекции в университете;
•Регистратор – человек, управляющий системой регистрации курсов;
•Система оплаты – внешняя система, выполняющая функции расчётов за курсы.
Описание
актёра
студент
Информатика. 2 семестр. Тема 13. UML