Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Унифицированный язык моделирования (Unified Mod...doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.06 Mб
Скачать

Нотация

Состояние изображается прямоугольником с закругленными углами. Оно может содержать одну или больше секций. Все они необязательные. Определены следующие секции:

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

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

event-name argument-list '[' quard-condition ']''/' action-expression название-события список-аргументов '[' условие-защиты ']''/' выражение-действия

Каждое название события или псевдособытия может появляться в состоянии не более одного раза.

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

'entry' '/' action-expression 'entry' '/' выражение-действия Атомарное действие, выполняемое при входе в состояние.

'exit' '/' action-expression 'exit' '/' выражение-действия Атомарное действие, выполняемое при выходе из состояния.

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

Выражения действия может использовать имеющиеся у объекта атрибуты и связи и параметры входящих переходов (если они появляются на всех входящих переходах).

Следующее ключевое слово определяет вызов вложенного конечного автомата:

'do' '/' machine-name (argument-list) 'do' '/' название-автомата (список-аргументов)

Название-автомата должно быть названием конечного автомата, который имеет начальное и конечное состояния. Если вложенный автомат имеет параметры, то список аргументов должен корректно им соответствовать. Когда происходит вход в состояние, после входного действия выполнение вложенного конечного автомата начинается с начального состояния. Когда вложенный конечный автомат достигает заключительного состояния, и затем выполняется действие выхода из данного состояния, состояние рассматривается, как завершенное, и может происходить переход, основанный на неявном завершении процесса.

Пример

Рисунок 40. Состояние

Составные состояния Семантика

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

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

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