Есть два способа выхода из состояния — автоматический и неавтоматический. Автоматическая смена состояния происходит, когда действие исходного состояния будет завершено — с переходом не связано каких-либо событий. Неавтоматический переход между состояниями вызывается определенным событием (от другого объекта или из внешней среды). Считается, что оба типа переходов выполняются за нулевое время и не могут быть прерваны. Переход между состояниями изображается в виде стрелки, направленной от исходного состояния к последующему.
Для создания переходов между состояниями в программе Rational Rose:
1. Щелкните по кнопке State Transition (Переход) на панели инструментов.
2. Щелкните по исходному состоянию диаграммы.
3. Проведите линию перехода к последующему состоянию.
4. Если требуется, введите название нового перехода.
Переходы между состояниями показаны на рис. 9.4.
Особые состояния
Есть два особых состояния, присутствующих на диаграмме состояний, —
Каждая диаграмма должна иметь одно и только одно начальное состояние, так как объект может находиться в целостном состоянии сразу после создания. В языке UML начальное состояние изображается в виде маленького закрашенного круга (см. рис. 9.5).
Объект может иметь несколько конечных состояний, которые изображаются в виде закрашенного круга, обведенного дополнительной окружностью (см. рис. 9.5).
Чтобы создать начальное состояние в программе Rational Rose:
1. Щелкните по кнопке Start (Начальное состояние) на панели инструментов.
2. Щелкните по диаграмме, чтобы поместить на нее значок исходного состояния.
3. Щелкните по кнопке State Transition на панели инструментов.
4. Щелкните по начальному состоянию и проведите линию перехода к последующему состоянию.
Начальное состояние на диаграмме состояний показано на рис. 9.6.
Для создания конечного состояния в программе Rational Rose выполните следующие действия:
1. Щелкните по кнопке Stop (Конечное состояние) на панели инструментов.
2. Щелкните по диаграмме, чтобы поместить на нее значок конечного состояния.
3. Щелкните по кнопке State Transition на панели инструментов.
4. Щелкните по одному из состояний на диаграмме и проведите линию перехода к конечному состоянию.
Конечное состояние на диаграмме состояний показано на рис. 9.7.
Параметры переходов
С переходом между состояниями может быть связано
Последовательность добавления параметров перехода в программе Rational Rose:
1. Щелкните правой кнопкой мыши по стрелке перехода на диаграмме.
2. В появившемся контекстно-зависимом меню выберите команду Specification (Параметры), чтобы вызвать диалоговое окно параметров перехода.
3. Выберите вкладку Detail (Детально).
4. Укажите действие, условие и событие для перехода.
5. Щелкните по кнопке OK, чтобы закрыть диалоговое окно настройки параметров.
Параметры перехода на диаграмме состояний показаны на рис. 9.9.
Параметры состояний
Действия, сопровождающие возможные переходы в определенное состояние, можно рассматривать как