Что такое диаграмма состояний
Изменения в системе можно охарактеризовать так: объекты изменяют свое состояние в ответ на происходящие события и с течением времени. Вот несколько простых примеров.
• При щелчке на выключателе освещение меняет свое состояние с "Выключено" на "Включено".
• При щелчке на кнопке пульта дистанционного управления телевизор изменяет свое состояние и показывает передачи другого канала.
• По истечении заданного времени стиральная машина изменяет свое состояние со "Стирка" на "Полоскание".
Диаграмма состояний UML охватывает приведенные выше типы изменений. Она представляет состояния объекта и переходы между ними, а также показывает начальное и конечное состояние объекта.
Диаграмму состояний также называют автоматом состояний.
Запомните, что диаграмма состояний по своей сути значительно отличается от диаграммы классов, диаграммы объектов или диаграммы прецедентов, и это отличие очень важно. Изученные ранее диаграммы моделируют поведение всей системы или, по крайней мере, группы классов, объектов или прецедентов. Диаграмма состояний показывает состояния одного объекта!
|
|
Имя состояния всегда начинается с прописной буквы. Состояниям желательно присваивать имена, указывающие на действие (а для английских имен выбирать существительные с окончанием "ing"), например Набор номера (Dialing), Отправка факса (Faxing). Иногда ЭТО невозможно (состояние ожидания по-английски Idle).
Набор символов
На рис. 1 состояние показано в виде прямоугольника с округленными углами, а переход между состояниями — сплошной линией со стрелкой. Она указывает на состояние, в направлении которого происходит переход. Закрашенный круг символизирует начальную точку, а "глазок" — конечную.
Рис. 1. Обозначения UML для диаграммы состояний. Состояние изображается прямоугольником с округленными углами, переход — сплошной линией со стрелкой. Закрашенный круг соответствует начальной точке последовательности состояний, а обведенный круг ("глазок ") представляет конечную точку