- •Построение и обсуждение uml-диаграмм. Содержание
- •Часть 1. Построение модели поведения в rational rose 3
- •Часть 2. Конструирование классов. 9
- •Часть 3. Диаграммы взаимодействия. 20
- •Часть 1. Построение модели поведения в rational rose при помощи диаграмм действий (activity).
- •1 Диаграммы действий
- •1.1 Назначение диаграмм действий.
- •2 Инструменты диаграммы activity
- •3 Создание диаграмм действий.
- •3.1 Действия
- •3.2 Переходы
- •3.3 Точки принятия решений (элементы выбора)
- •3.4 Линии синхронизации
- •3.5 Секции (зоны)
- •3.6 Начальное и конечное состояния (исходное и завершающеедействия).
- •Контрольные вопросы
- •Часть 2. Конструирование классов.
- •1 Создание классов.
- •1.1 Стереотипы и классы
- •1.2 Определение классов
- •Классы-сущности
- •Граничные классы
- •Управляющие классы
- •1.3 Документирование классов
- •2 Создание пакетов.
- •3 Объекты и классы в системе регистрации курсов
- •4 Диаграммы классов
- •4.1 Панель инструментов.
- •4.2 Контекстное меню класса
- •4.3 Спецификации класса
- •Вкладка сом
- •Контрольные вопросы.
- •Часть 3. Диаграммы взаимодействия.
- •1 Реализации вариантов использования
- •2 Создание реализации Вариантов использования.
- •3 Документирование сценариев
- •4 Диаграммы последовательностей действий
- •4.1 Строка инструментов диаграммы
- •4.2 Настройка времени жизни объекта
- •4.3 Создание диаграммы последовательности действий
- •4.4 Свойства сообщений
- •5 Диаграммы сотрудничества
- •6 Диаграмма последовательности действий для системы регистрации курсов
- •Контрольные вопросы
- •Часть 4. Отношения между классами. Определение отношений.
- •1 Ассоциативные отношения
- •2 Агрегационные отношения
- •2.1 Именование отношений
- •2.2 Мощность отношений
- •3 Возвратные отношения
- •Отношения в системе регистрации учебных курсов
- •4 Отношения между пакетами
- •Отношения между пакетами в системе регистрации учебных курсов
- •Контрольные вопросы:
- •Часть 5. Представление поведения и структуры классов.
- •1. Поведение и структура класса.
- •2. Создание операций
- •Документирование операций
- •Отношения и сигнатуры операций
- •Создание атрибутов
- •Документирование атрибутов
- •Отображение атрибутов и операций
- •Ассоциативные классы
- •Часть 6. Понятие наследования.
- •1 Обобщение
- •2 Специализация
- •3 Иерархии наследования.
- •5 Единичное и множественное наследование
- •6 Наследование и агрегация
- •Часть 7. Диаграмма состояний.
- •1 Диаграмма состояний
- •2 Состояния
- •3 Переходы между состояниями
- •4 Особые состояния
- •5 Параметры переходов
- •6 Параметры состояний
- •Часть 8. Проектирование архитектуры системы.
- •1 Пять уровней архитектуры
- •2 Логический уровень
- •2.1 Ключевые механизмы для задачи регистрации учебных курсов
- •3 Уровень реализации
- •3.1 Программные компоненты
- •3.2 Программные компоненты в задаче регистрации учебных курсов
- •4 Уровень выполнения.
- •5 Уровень промышленного внедрения
- •5.1 Диаграмма размещения для системы регистрации учебных курсов
- •6 Уровень вариантов использования
4 Особые состояния
Есть два особых состояния, присутствующих на диаграмме состояний, - начальное (start state) и конечное (stop state).
Каждая диаграмма должна иметь одно и только одно начальное состояние, так как объект может находиться в целостном состоянии сразу после создания. В языке UML начальное состояние изображается в виде маленького закрашенного круга.
Объект может иметь несколько конечных состояний, которые изображаются в виде закрашенного круга, обведенного дополнительной окружностью.
Чтобы создать начальное состояние в программе Rational Rose:
Щелкните по кнопке Start (Начальное состояние) на панели инструментов.
Щелкните по диаграмме, чтобы поместить на нее значок исходного состояния.
Щелкните по кнопке State Transition на панели инструментов.
Щелкните по начальному состоянию и проведите линию перехода к последующему состоянию.
Для создания конечного состояния в программе Rational Rose выполните следующие действия:
Щелкните по кнопке Stop (Конечное состояние) на панели инструментов.
Щелкните по диаграмме, чтобы поместить на нее значок конечного состояния.
Щелкните по кнопке State Transition на панели инструментов.
Щелкните по одному из состояний на диаграмме и проведите линию перехода к конечному состоянию.
Рис.7.3
5 Параметры переходов
С переходом между состояниями может быть связано условие (guard condition) и/или определенное действие (action). Переход может также вызывать событие (event). Действие - это поведение, проявляющееся при возникновении перехода. Событие - сообщение, отправляемое другому объекту системы. Условие - булево выражение значений атрибутов, которое допускает переход, только если оно верно. И действие, и проверка условия представляют собой поведение объекта и обычно реализуются в виде операций. Часто такие операции являются скрытыми (private), то есть используются только самим объектом. В языке UML параметры перехода изображаются так, как показано на рисунке 7.4.
Наименование
события [Контролируемое условие] /
Действие ˆИмя класса. Имя события
Рис.7.4
Последовательность добавления параметров перехода в программе Rational Rose:
Щелкните правой кнопкой мыши по стрелке перехода на диаграмме.
В появившемся контекстно-зависимом меню выберите команду Specification (Параметры), чтобы вызвать диалоговое окно параметров перехода.
Выберите вкладку Detail (Детально)
Укажите в полях Guard Condition, Action и Send Event действие, условие и событие для перехода.
Щелкните по кнопке ОК, чтобы закрыть диалоговое окно настройки параметров
Параметры перехода на диаграмме состояний показаны на рис 7.5.
Рис.7.5
6 Параметры состояний
Действия, сопровождающие возможные переходы в определенное состояние, можно рассматривать как входные действия (entry action) для этого состояния. И наоборот, действия, сопровождающие переходы из данного состояния, являются для него выходными (exit action) Поведение, возникающее внутри состояния, называется деятельностью (activity). Деятельность начинается при входе в состояние и завершается или прерывается при переходе из него. Поведение может быть простым действием или событием, посылаемым другому объекту.
Как и в случае с действиями и проверками условий для перехода, поведение внутри состояния обычно реализуется в виде операций. В языке UML параметры состояний изображаются так, как показано на рис.7.6.
Рис.7.6
Определение входных, выходных и внутренних действий для состояния в программе Rational Rose предусматривает выполнение следующих шагов.
Щелкните правой кнопкой мыши по изображению состояния на диаграмме.
В появившемся контекстно-зависимом меню выберите команду Open Specification (Параметры), чтобы вызвать диалоговое окно параметров состояния.
Выберите вкладку Actions (Действия).
Щелкните правой кнопкой мыши по списку Action (Действие).
В появившемся контекстно-зависимом меню выберите команду Insert (Добавить) В список будет добавлено новое действие.
Дважды щелкните по новому действию в списке, чтобы открыть диалоговое окно Action Specification (Параметры действия).
Укажите момент выполнения действия on entry (при входе), on exit (при выходе), on event (при определенном событии).
Введите описание действия или события.
Укажите тип действия: action (действие) или send event (вызов события).
Если требуется, введите название действия или события.
Щелкните по кнопке ОК, чтобы закрыть диалоговое окно Action Specification
Щелкните по кнопке ОК, чтобы закрыть диалоговое окно State Specification.
Параметры состояний на диаграмме состояний показаны на рис. 7.7
Рис.7.7
РЕЗЮМЕ
Классы, характеризующиеся выраженным динамическим поведением, анализируются с помощью диаграмм состояний. На таких диаграммах отображаются все состояния объекта, поступающие к объекту события и результирующие действия. Считается, что переходы между состояниями и сопровождающие их действия выполняются за нулевое время и не могут быть прерваны. Пребывание объекта в определенном состоянии и сопутствующая деятельность могут быть прерваны.