Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методички итоговые.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
1.85 Mб
Скачать

3.5.2. Добавление перехода

Для добавления перехода нажмите кнопку State Transitions (Переход между состояниями) панели инструментов. Щелкните мышью по пиктограмме того состояния, откуда осуществляется переход. Проведите линию к тому состоянию, в которое переход должен приводить.

Для добавления рефлексивного перехода нажмите кнопку Transition to Self (Рефлексивный переход ) панели инструментов.

Для добавления к переходу текстового описания используйте окно документирования среды, предварительно выделив документируемый переход на диаграмме или в браузере.

3.5.3. Спецификация перехода

Переход может характеризоваться следующим набором спецификаций: событие, аргументы, сторожевые условия, действия и посылаемой информацией о событии.

Событие (Event) –это то, что вызывает переход объекта из одного состояния в другое. События играют роль стимулов. Про них говорят, что они происходят. События размещают на диаграмме вдоль линии перехода. В зависимости от природы моделируемого объекта в качестве события можно использовать имя операции класса или обычную фразу на естественном языке.

У событий могут быть аргументы, которые Rational Rose позволяет к ним добавлять.

Большинство переходов должно иметь события, так как именно они инициируют срабатывание переходов. Тем не менее среда допускает наличие автоматических переходов, не имеющих событий. При этом объект сам перемещается из состояния в состояние со скоростью, предусматривающей выполнение входных и выходных действий.

Сторожевые условия (Guard Condition) определяют, когда переход может быть выполнен, а когда нет. На диаграмме состояний сторожевые условия располагаются вдоль линии перехода и заключаются в квадратные скобки.

Сторожевые условия задавать необязательно, однако если существует нескольких автоматических переходов из состояния или если два и более перехода срабатывают при наступлении одного и того же события, необходимо определить для них взаимно исключающие сторожевые условия.

Действием является поведение объекта, выполняемое как часть перехода. Спецификация действия, располагаемого вдоль перехода идентична спецификации действия, выполняемого во время пребывания состоянии. Действие, выполняемой при переходе размещается вдоль линии перехода после имени события, и ему предшествует косая черта (/).

Для добавления на диаграмму события и задания его аргументов откройте окно его спецификации, дважды щелкнув мышью на переходе. Перейдите на вкладку General (Общие). Введите событие в поле Event (Событие). Введите аргументы в поле Arguments (Аргументы).

Если необходимо задать сторожевое условие, откройте окно спецификации перехода, дважды щелкнув на нем мышью. Перейдите на вкладку Detail (Подробно). Введите сторожевое условие в поле Guard Condition (Сторожевое условие).

Для добавления действия, выполняемого при переходе, введите данные в поле Action (Действие).

Отправить информацию о событии можно следующим образом. Дважды щелкнув мышью на переходе, откройте его спецификацию. Перейдите на вкладку Detail (Подробно). Введите событие в поле Send Event (Отправляемая информация о событии). Введите аргументы в поле Send Argument (Отправляемые аргументы). Укажите цель в поле Send Target (Цель события).