Мета розробки: описати можливі послідовності станів та переходів, які у сукупності характеризують поведінку елемента моделі протягом його життєвого циклу.
Автомат – це деякий формалізм для моделювання елементів моделі та системи в цілому. Кожна діаграма станів це деякий автомат.
Обов’язкові умови автомату:
1. Незапам’ятовується історія переміщення з одного стану в інший.
2. Кожний момент часу автомат може знаходитися лише в одному із станів.
3. Час явно не входить в формалізм автомату.
4. Кількість станів кінцева.
5. Не міститься ізольованих станів та переходів.
6. Не міститься переходів з одного стану у два або більшу.
Стан – це деякий клас для моделювання ситуації протягом якої виконується деяка умова.
Позначається:
Ім'я записується з великої літери, зазвичай це дієслово з дієприкметником. В кожній дії ставиться для відповідності рядок тексту:
мітка/вираз дії;
Мітка вказує на умову при якій буде виконуватися дія. Зарезервовані мітки:
1) entry – дія виконується в момент входу у даний стан;
|
|
2) exit – момент виходу;
3) do – діяльність, яка виконується протягом усього часу доки об’єкт знаходиться у даному стані.
4) include – звернення до підавтомату, замість дії вказується назва діаграми станів.
Перехід між станами
Початковий стан
Кінцевий стан
Складний стан з прихованою внутрішньою структурою:
Складний стан з паралельними підстанами:
Складний стан з вкладеними послідовними підстанами:
Недавній історичний стан:
Давній історичний стан:
Синхронізований стан:
В складних станах використовують наступні переходи:
Історичний стан використовується в складному стані для запам’ятовування того з послідовних під станів який був поточним під час виходу із складного стану.
Недавній – замінює собою початковий стан підавтомату; давній – запам’ятовую всі підстани підавтомату.
Синхронізуючий стан використовується з складними переходами для того щоб вказати що події в інших підавтоматах впливають на поведінку в даному.