- •Сочинский государственный университет курортного дела и туризма
- •Назначение диаграммы
- •Создание заготовок классов
- •Создание StateСhart-диаграммы
- •Инструменты диаграммы Statechart
- •State (состояние)
- •Start State (начало)
- •End State (завершение)
- •State Transition (состояние перехода)
- •Transition To Self (переход на себя)
- •Первые шаги в создании диаграммы
- •Состояние тестирования датчиков
- •Вывод диаграммы из цикла
- •Добавление замечания
- •Настройка среды
- •Скрытие вложенных состояний
- •States History (история состояний)
- •Примерные вопросы для самопроверки и защиты
- •Литература
Создание StateСhart-диаграммы
В нашей системе самым сложным поведением обладает класс EnvironmentalController, поэтому будем разбирать создание модели поведения на его примере.
Замечание. Для моделирования поведения объектов в Rational Rose 98i существует State Diagram (Диаграмма состояний). Для версии 2000 эта диаграмма получила расширение в виде двух вариантов диаграмм — диаграммы Activity и Statechart, где Statechart аналогична State Diagram в 98i.
Для создания диаграммы есть несколько путей.
Создать посредством меню Menu=>Browse=>State Machine Diagram.
Создать посредством строки инструментов при помощи значка Statechart
Выбрать пункт New Statechart Diagram из контекстного меню класса.
Третий пункт работает для всех версий программы Rational Rose, а при создании посредством первых двух имеются различия.
Версия 98i не позволяет создавать этот тип диаграммы, если текущим объектом не является объект класса. Поэтому для этой версии необходимо:
вставить вновь созданный класс EnvironmentalController в Class диаграмму при помощи буксировки мышкой или при помощи меню Query;
щелкнуть по нему мышкой, для того чтобы объект стал активным;
выбрать доступный теперь пункт меню или значок на панели инструментов.
Версия 2000 лишена таких сложностей, по причине возможности создавать любые диаграммы в любом месте. Для этого активизируется окно выбора диаграммы (рис. 6.2).
Рис. 6.2. Выбор диаграммы Statechart или Activity
При помощи этого диалогового окна пользователь может выбрать диаграмму для назначения ее текущей, создать новую, удалить или переименовать уже существующую. При создании новой диаграммы будет предложено выбрать из двух возможных (рис. 6.3).
Рис. 6.3. Выбор типа диаграммы
Для создания диаграммы выберем тип Statechart. Создание диаграммы Activity мы рассмотрим в следующей теме.
Замечание. В версии 98i существует только один тип диаграммы State Machine, а диаграмма Activity появилась только в версии 2000.
Инструменты диаграммы Statechart
После активизации диаграммы становятся доступны следующие инструменты (рис. 6.4).
Рис. 6.4. Инструменты Statechart Diagram
Не будем подробно останавливаться на значках, которые уже знакомы нам по предыдущим диаграммам, а лишь перечислим, их для того чтобы освежить их назначение в памяти:
Selection Tool — выбор объекта, с которым будет производиться дальнейшая работа;
Text Box — создание отвлеченной надписи на диаграмме;
Note — создание надписи к значку состояния State;
Anchor Note — соединение значка Note и State.
State (состояние)
Инструмент State позволяет отразить состояние или ситуацию в течение жизни объекта, которая отвечает некоторому положению объекта или ожиданию им некоторого события. Каждое состояние представляет собой совокупную историю поведения объекта. Его имя должно быть уникально внутри класса, так как состояния с одинаковыми именами считаются представлением одних и тех же состояний. В текущем значке State могут быть отражены действия по входу, выходу из состояния, действия не связанные с событиями или реакция на события. Подробнее установку этих действий рассмотрим далее.
