- •Вступление
- •Задачи курса.
- •Описание пособия
- •Тема 1. Основные принципы объектно-ориентированного проектирования. История развития языка uml. Программный продуктRationRose. Процедурно-ориентированная методология
- •Объектно-ориентированная методология
- •Особенности унифицированного языка моделирования (uml)
- •Основные диаграммы языка uml:
- •Программный продукт RationalRose
- •Основные возможности RationalRose:
- •Вопросы:
- •Тема 2 Диаграмма прецедентов (Use Case Diagram) Назначение диаграммы прецедентов
- •Основные элементы диаграммы
- •Типы отношений на диаграмме прецедентов
- •Вопросы:
- •Тема 3. Диаграмма последовательности (SequenceDiagram)
- •Вопросы:
- •Тема 4. Диаграмма классов (ClassDiagram) Основные понятия
- •Типы отношений на диаграмме классов
- •Выявление классов (одна из основных задач проектирования системы- определить классы и отношения между ними)
- •Вопросы
- •Тема 5. Диаграмма кооперации (Collaboration Diagram)
- •Вопросы:
- •Тема 6. Диаграмма состояний (Statechart Diagram)
- •Рассмотрим примеры:
- •Спецификация состояний
- •Переход (transition) из одного состоянияв другое (из предыдущего в последующее)
- •Вопросы:
- •Тема 7. Диаграмма компонентов (Component Diagram) Основные понятия
- •Типы компонентов
- •Подготовка к генерации программного кода:
- •Проверка модели на корректность
- •Установка свойств генерации кода
- •Генерация программного кода
- •Полиморфизм
- •Инкапсуляция
- •Абстрагирование
- •Отношение агрегации и композиции
- •Задания для знакомства с RationRose. Создание пакетов.
- •Задача для лабораторных работ
- •Лабораторная работа № 2. Создание диаграммы прецедентов.
- •Этапы выполнения работы Создать основных Прецедентов и Актёров
- •Добавить ассоциации
- •Создать уточняющих прецедентов и актёров
- •Указать абстрактных актёров
- •Указать связи обобщения между актёрами
- •Добавить связи расширения, включения, ассоциации
- •Добавить интерфейсы
- •Прикрепление файла с документацией к прецеденту
- •Лабораторная работа № 3. Создание диаграмм последовательностей
- •Этапы выполнения работы Настройка
- •Создание диаграммы последовательности
- •Добавление на диаграмму актёровиобъектов
- •Добавление сообщенийна диаграмму
- •Добавление на диаграмму примечаний(нотаций).
- •Добавление нового объектаисообщений
- •Указание типов сообщений
- •Построенная диаграмма должна выглядеть как на рис. 3l.2.
- •Лабораторная работа № 4. Диаграмма классов.
- •Этапы выполнения работы Настройка
- •Создание пакетов
- •Создание Главной диаграммы классов
- •Создание диаграммы классов для сервиса (прецедента) «Наполнить виртуальную корзину»
- •Добавление стереотипов к классам
- •Объединение классов в пакеты
- •Соотнесение объектов с классами
- •Добавление атрибутов и методов для классов
- •Структурирование классов
- •Лабораторная работа № 5. Определение связей между классами.
- •Добавление связей обобщения
- •Построение недостающих связей (с указанием свойств)
- •Построение связей между пакетами
- •Построение диаграммы кооперации
- •Лабораторная работа № 6.Создание диаграмм компонентов. Генерация программного кода. Проверка построенной модели
- •Этапы создания диаграммы компонентов Создание пакетов компонентов
- •Добавление пакетов и связей на Главную диаграмму компонентов
- •Добавление компонентов к пакетам и рисование зависимостей
- •Создание диаграммы компонентов для сервиса «наполнить виртуальную корзину»
- •Размещение компонентов на диаграмме компонентов «наполнить виртуальную корзину»
- •Соотнесение классов с компонентами
- •Добавление зависимостейна диаграмму компонентовTo_fill_Virtual_Basket
- •Ввод тел пакетов на диаграмму Компонентов To_fill_Virtual_Basket
- •Заключение
- •Новые термины
- •Источники
Этапы выполнения работы Настройка
В меню модели выберите пункт Tools > Options (Инструменты > Параметры).
Перейдите на вкладку диаграмм.
Убедитесь, что помечен контрольный переключатель Show Stereotypes (Показать стереотипы).
Убедитесь, что помечены контрольные переключатели Show All Attributes (Показать все атрибуты) и Show All Operations (Показать все операции).
Убедитесь, что не помечены переключатели Suppress Attributes (Не показывать атрибуты) и Suppress Operations (Не показывать операций).
Создание пакетов
Щелкните правой кнопкой мыши на Логическом представлении броузера.
В открывшемся меню выберите пункт New > Package (Создать > пакет).
Назовите новый пакет Entities (Сущности).
Повторите этапы с первого по третий для создания пакета Boundaries (Границы).
Так как планируется написание программного кода на OO языке Си++, то классов, отвечающих за управление и координацию других классов, для данного проекта создавать не нужно. Классы управления следует строить, есть предполагается реализация на языке описания структуры данных DDL.
Создание Главной диаграммы классов
Дважды щелкните на Главной диаграмме классов (под Логическим представлением броузера), чтобы открыть эту диаграмму классов.
Перетащите пакет Entities из броузера на диаграмму.
Перетащите пакет Boundaries на диаграмму.
Создание диаграммы классов для сервиса (прецедента) «Наполнить виртуальную корзину»
Сделав анализ объектов, размещенных на диаграмме последовательности для прецедента «Наполнить виртуальную корзину» пришли к выводу, что необходимо создать следующие классы:
Forma_of_Input_Output (Форма Ввода Вывода),
List_of_Catalogues (Список каталогов),
List_of_Goods (Список товаров),
Goods (Товар),
Basket (Корзина).
Для создания класса следует выполнить следующие действия:
1. Щелкните правой кнопкой мыши на Логическом представлении броузера.
2. В открывшемся меню выберите пункт New > Class Diagram (Создать > Диаграмму классов).
3. Назовите новую диаграмму классов «Наполнить виртуальную корзину»
4. Щелкните в броузере на этой диаграмме дважды, чтобы открыть ее.
5. Создайте следующие классы Forma_of_Input_Output (Форма Ввода Вывода), List_of_Catalogues (Список каталогов), List_of_Goods (Список товаров), Goods (Товары), Basket (Корзина), использую кнопку «создание класса» на панели инструментов .
Добавление стереотипов к классам
Щелкните правой кнопкой мыши на классе Forma_of_Input_Output диаграммы.
В открывшемся меню выберите пункт Open Specification (Открыть спецификацию).
В поле стереотипа введите слово Boundary.
Нажмите на кнопку ОК.
Повторите этапы 1 - 4, связав классы List_of_Catalogues, List_of_Goods, Goods и Basket - со стереотипом Entity.
Объединение классов в пакеты
Перетащите в броузере класс Forma_of_Input_Output в пакет Boundaries.
Перетащите классы List_of_Catalogues, List_of_Goods , Goods и Basket в пакет Entities.
Диаграмма классов должна выглядеть как на рис. 4L.1.
Рис. 4L.1. Диаграмма классов. |
Соотнесение объектов с классами
В лабораторной работе № 3 предложены инструкции к первому этапу построения диаграммы последовательности для прецедента«Наполнить виртуальную корзину». В данной лабораторной работе (в ходе построения и уточнения диаграммы классов) описывается последовательность действий для соотнесенияобъектовсклассами,сообщенийсметодами(второй этап построения диаграммы последовательности).
Перейдите на диаграмму последовательности «Наполнить виртуальную корзину».
Щелкните правой кнопкой мыши на объекте Форма Ввода_Вывода_1.
В открывшемся меню выберите пункт Open Specification (Открыть спецификацию).
В раскрывающемся списке классов выберите пункт Forma_of_Input_Output.
Щелкните на кнопке ОК, чтобы вернуться к диаграмме
Для соотнесения остальных объектов с классами повторите этапы с 1 по 4:
Класс List_of_Catalogues с объектом Список_каталогов_1.
Класс List_of_Goods с объектом Список_товаров_1.
Класс Goods с объектом Товар_1.
Класс Basket с объектом Корзина_1.