<На страницу назад | На страницу вперед>
3.3.5 Переходы смены состояний
Переходы смены состояний представляют механизм, используемый для спецификации
логики потенциального множества маршрутов в поведении переходов состояний. Например,
на рис. 3-54 представлено использование неразделительного дизъюнктивного
перехода, показывающего, что определенное состояние объекта может переходить
альтернативно в одно из определенного числа других состояний.
Рис. 3-54
Схематика дизъюнктивных переходов состояний
Использование неразделительного дизъюнктивного перехода обеспечивает переход из состояния A в одно или несколько последующих состояний. Для включения разделительной дизъюнкции, которая обеспечивает переход только в одно из последующих состояний; в этом случае используется конструкция, приведенная на рис. 3-55.
Рис. 3-55
Схематика разделительных дизъюнктивных переходов состояний
По тому же принципу вводится конъюнктивная схематика для обозначения перехода из данного состояния во все последующие состояния, как показано на рис. 3-56.
Рис. 3-56
Схематика конъюнктивных переходов состояний
Семантика, используемая для схематик, включающих логические переходы, представляет обобщение семантик, используемых для базовых схематик переходов состояний. Снова интуитивно можно понять, что схематика рис. 3-56 представляет определенный тип ситуации, в которой имеется переход состояний, включающий процесс P, из объекта a в состоянии A в объекты a1... an в состояниях A1 ... An, соответственно. Как и в базовых схематиках переходов состояний, объект a должен находиться в состоянии A до или по крайней мере не позднее начала p; а bi должен начинать переход в состояние Bi после начала p. Возможное изменение начальных и конечных точек для bi указывается посредством пунктирных линий в общей комбинации реализации, представленной на рис. 3-57.
Рис. 3-57
Общие схематики рис. 3-56
Эти логические схематики также имеют "обратные импликации" - в частности, где "*" представляет O, X или &, рис. 3-58 также представляет схематику.
Рис. 3-58
Схематика с обратной импликацией
Эти схематики в любом случае представляют точную обратную импликацию соответствующей схематики, приведенной выше.
Наконец, возможно, что переход состояний включает сложную логику в начале и в конце процесса избыточных переходов (overarching). Например, вполне возможно, что объекты в состояниях A1 и A2 могут перейти в состояние B1 или B2 по ходу выполнения процесса P. Общий синтаксис для определения таких переходов состояний представлен на рис. 3-59, где "*" и "#" представляют два любых символа из числа логических символов O, X или & (возможно, тот же символ).
Рис. 3-59
Использование множества символов переходов для отображения
сложной логики переходов состояний
Как правило, схематики этого типа являются неоднозначными; например, если при использовании n = m = 2, "*" представляет &, а "#" представляет O, то рис. 3-59 может означать, что в экземпляре P оба объекта a1 и a2 в состояниях A1 и A2 могут перейти в B1 или в B2 или что a1 переходит в состояние B1, а а2 переходит в состояние B2 и т.д. Такую неоднозначность можно решить в форме детального описания для данной связи.