- •Вступление
- •Задачи курса.
- •Описание пособия
- •Тема 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
- •Заключение
- •Новые термины
- •Источники
Вопросы:
Какие основные типы сообщений используются для построения диаграммы последовательности?
Какие стереотипы используются для спецификации сообщений?
Что означает ветвление потока управления? Для каких целей используется ветвление потока управления?
Как и где используются временныеограничения на диаграмме последовательности?
Тема 4. Диаграмма классов (ClassDiagram) Основные понятия
Одним из главных понятий языка UML является понятие класса (сущности класса), поэтому диаграмма классов является ключевой диаграммой при построении модели какой-либо системы.
Графически класс изображается в виде прямоугольника (рис. 4.1), который дополнительно может быть разделен горизонтальными линиями на три секции. Обязательным элементов обозначения класса является его имя, имя класса записывается в первую секцию.
Рис. 4.1. Графическое представление классовна диаграмме. |
Во второй сверху секции прямоугольника класса записываются его атрибуты или свойства. В языке UML принята определенная стандартизация записи атрибутов:
<квантор видимости> <имя атрибута>[кратность]: <тип атрибута> = <исходное значение> {строка-свойство}
Квантор видимости может быть определён одним из следующих значений: public (открытый), protect (защищенный), privet (закрытый). Имя атрибута должна быть уникальной в пределах данного класса. Имя класса является единственным обязательным элементом обозначения атрибута. Кратностью разработчики определяют число экземпляров данного атрибута, которые будут входить в состав каждого отдельного объекта указанного класса. Строка-свойство служит для указания фиксированного значения данного атрибута для всех объектов класса, это значение не может быть изменено. Среда разработки Ration Rose 98/2000 не позволяет задавать кратность атрибута и строку-свойство.
На рис. 4.2 представлен пример построения атрибутов для класса Автомобиль. Атрибуты Марка и Модель определены с квантором видимости public, атрибут Владелец имеет квантор видимости protect, для атрибута Пробег задан квантор видимости privet.
|
Рис. 4.2. Представление классаАвтомобиль. |
В третьей сверху секции прямоугольника записываются операции или методы класса. Операция представляет собой некоторый сервис, который предоставляет каждый объект класса по определенному требованию. Совокупность операций характеризует функциональный аспект поведения класса и его объектов. Также как и для атрибутов есть специальные требования для оформления операций: <квантор видимости> <имя операции>(список параметров): <тип возвращаемого значения>{строка-свойство}. В качестве строки-свойства используются специальные служебные слова, которые характеризуют данную операцию, помогают наглядно отразить её свойства. На рис. 4.3 представлены операции для класса Автомобиль.
|
Рис. 4.3. Представление класса Автомобиль с атрибутами и методами. |
На диаграмме классов следует уточнить атрибуты интерфейсов. Интерфейсы изображаются прямоугольником с двумя секциями. Первая секция предназначена для имени интерфейса (в Ration Rose к указанному имени автоматически добавляется стереотип <<Interface>>), во второй секции определяются атрибуты.