- •Вступление
- •Задачи курса.
- •Описание пособия
- •Тема 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
- •Заключение
- •Новые термины
- •Источники
Основные элементы диаграммы
Основными элементами диаграммы прецедентов являются: актёры, прецеденты, интерфейсы, а также отношения между ними.
Проектируемая система представляется в виде некоторого набора актёров, которые взаимодействуют с системой с помощью прецедентов (вариантов использования).
Актёр (Actor) - это некоторая сущность, которая взаимодействует системой из вне (актёр является источников воздействия на систему).
Прецедент (Use Case)- служит для описания сервисов, которые система предоставляет актёру.
Интерфейс (Interface) - служит для выделения параметров модели, которые видимы извне без указания их внутренней структуры.
В среде проектирования Ration Rose (98/2000) актер изображается фигурой человечка, под которой записывается имя актёра, графическим преставлением прецедента является овал, под которым указывается имя прецедента, интерфейс изображается окружностью см. рис.2.1.
В любом месте на диаграмме прецедентов (аналогично для всех диаграмм) могут быть добавлены комментарии (note) в виде прямоугольника с текстом. Комментарии необходимы для пояснения элементов и связей на диаграмме, а также для уточнения ограничений и требований.
|
Рис. 2.1. Диаграмма прецедентов для Системы продажи билетов. |
Диаграмма прецедентов предназначена для определения требований к системе будущих пользователей. Проектируемая система рассматривается с точки зрения функциональных возможностей, которые будут предоставлены клиентам данной системы.
Возможность купить билет на самолет (рис.2.1) является главным требованием к Системе продажи билетов с точки зрения её пользователей, поэтому был построен соответствующий этому требованию Прецедент. Покупка билета осуществляется через заполнение клиентом соответствующего бланка заказа данной авиакомпании. Интерфейс Бланк заказа выступает посредником, который обеспечивает выполнение прецедента (Купить билет на самолёт) для актёра (Клиент авиакомпании).
Типы отношений на диаграмме прецедентов
Для построения диаграммы прецедентов могут быть использованы следующие типы отношений:
ассоциации (association),
обобщения (generalization),
расширения (extend),
включения (include).
Рассмотрим некоторые отношения. Отношение ассоциации устанавливает, какую конкретную роль играет актёр в системе, определяет спецификацию актёра. Отношение ассоциации может иметь дополнительные характеристики: кратность (multiplicity) и имя. Этот вид отношений изображается прямой линией и может быть использован между прецедентами, между актерами, между прецедентом и актёром (рис. 2.1).
Актёры могут наследовать свойства друг друга. Для изображения связи наследования между родительским и дочерним прецедентом используют отношение обобщения (рис. 2.2). На диаграммах UML отношение обобщение изображается прямой линией с не закрашенным треугольником, указывающим на родителя. Постоянный клиент авиакомпании наследует все свойства Клиента авиакомпании и может иметь свои собственные, например, пользоваться скидкой при покупке билета. Отношение обобщения также может быть использовано для отображения связи наследования между прецедентами (рис. 2.3).
|
Рис. 2.2. Пример отношения обобщения между двумя актёрами на диаграмме прецедентов. |
Рис. 2.3. Пример отношения обобщения между двумя прецедентами на диаграмме прецедентов. |
Для группировки элементов UML используют пакеты. Пакеты позволяют структурировать и систематизировать информационную составляющую модели, повысить ее наглядность.