Схема конечного автомата - переход из всех состояний

Я строю диаграмму состояний UML и имею случай, когда такой же переход к определенному состоянию существует из большинства других состояний. Какое самое элегантное решение нарисовать его? В настоящее время я размышляю о двух вариантах: 1) использовать псевдосостояние соединения с выходом в целевое состояние; 2) обернуть исходные состояния в композит и выполнить переход из него.

Лучшие идеи ценятся

1 ответ

Решение

Оба решения будут подходящими, в зависимости от их разборчивости на диаграмме. Слишком много переходов имеют тенденцию загромождать диаграмму и затруднять ее чтение. Поэтому, если у вас есть только несколько состояний источника (скажем, меньше 4), использующих переходы в псевдосостояние соединения (не псевдосостояние соединения - другая семантика!), Это должно быть хорошо. Недостатком этого решения является то, что если вы хотите вернуться к исходному состоянию источника, вам придется хранить информацию (например, как часть сигнала). Если у вас есть больше, вы можете рассмотреть составное состояние для всех ваших исходных состояний. Обратите внимание, что если вы сделаете это, вы также можете перейти к истории, чтобы вернуться к оставленному подсостоянию, что может упростить реализацию логики диаграммы состояний (нет необходимости сохранять оставленное состояние) и диаграмму проще. читать.

Надеюсь, это поможет.

Другие вопросы по тегам