Диаграми на състоянието (диаграма на карта на състоянието)
Основната цел на тази диаграма е да опише възможните последователности от състояния и преходи, които заедно характеризират поведението на моделен елемент по време на неговия жизнен цикъл. Диаграмите на състоянието се използват за моделиране на динамичните аспекти на системата. В по-голямата си част това означава моделиране на поведението на реактивни обекти. Казва се, че даден обект е реактивен, ако поведението му се характеризира най-добре от реакцията му на събития, случващи се извън неговия собствен контекст. Реактивният обект има добре дефиниран жизнен цикъл, където текущото поведение се ръководи от миналото.

Фигура 3.48. Пример за диаграма на дейността
Ако външните действия, които променят състоянието на системата, се инициират в произволни случайни времена, тогава говорим за асинхронно поведение на модела.
Представете си как симулирате поведението на вградена система за сигурност във вашия дом. Той работи непрекъснато, реагирайки на външни събития, като например счупен прозорец. Редът на събитията променя поведението на системата. Например, откриването на счупен прозорец ще задейства аларма само ако системата е била активирана преди това. Поведението на такава система се описва най-добре чрез моделиране на нейните стабилни състояния (напр. Изчакване, Активност, Проверка и т.н.), събитията, които задействат прехода на състоянието, и действията, предприети при всеки такъв преход.
Автоматично
Диаграмата на състоянието по същество е графика от специален вид, която представлява някакъв автомат. Върховете на този граф са състояния, които се представят със съответните графични символи. Графичните дъги служат за обозначаване на преходи от състояние към състояние. Диаграмите на състоянието могат да бъдат вложени една в друга, образувайкивложени диаграми за по-детайлен изглед на отделните елементи на модела.
Най-простият пример за автомат с две състояния се демонстрира от ситуацията със здравето на компютъра. Тук се разглеждат двете най-често срещани състояния: "здрав" и "дефектен" и два прехода: "отказ" и "ремонт". Графично тази информация може да бъде представена под формата на изобразената диаграма на състоянието на компютъра (фиг. 3.49).
Основните понятия, описващи автомата, са състояние и преход. Предполага се, че системата е в някакво състояние за известно време, докато преходът на обект от състояние в състояние се случва моментално.

Фиг. 3.49. Пример за диаграма на състоянието
Състояние
Състояние (състояние) е ситуация в живота на обект, по време на която той отговаря на определено състояние, извършва определена дейност или чака някакво събитие.
Състоянието на диаграмата е представено от правоъгълник със заоблени върхове (фиг. 3.50), който може да бъде разделен с хоризонтална линия на две части.

Фиг. 3.50. Графично представяне на състояния в диаграма на състоянията
Правоъгълникът може да съдържа „Име на състоянието“ (първият раздел) и „Списък на вътрешните действия в това състояние“ (вторият раздел). В същото време под действието (действието) на езика UML те разбират някаква атомарна операция, чието изпълнение води до промяна на състоянието или връщане на някаква стойност.
Име на състоянието
Името на държава е ред от текст, започващ с главна буква, който разкрива смисловото значение на държавата. Името е незадължителен елемент. Препоръчително е да използвате глаголи в сегашно време като име (пръстени, отпечатъци,очаква) или съответните причастия (зает, свободен, прехвърлен, получен).
Списък с вътрешни действия
Този раздел съдържа списък с вътрешни действия или дейности, които се изпълняват, докато моделираният елемент е в дадено състояние. Всяко от действията се записва на отделен ред и има следния формат:
Етикетът за действие показва обстоятелствата или условията, при които ще се извърши дейността, дефинирана от израза за действие. В този случай изразът за действие може да използва всякакви атрибути и релации, които принадлежат към пространството на имената или контекста на обекта, който се моделира. Ако списъкът с изрази за действие е празен, тогава разделителят на наклонена черта '/' може да бъде пропуснат.
На фиг. Фигура 3.51 показва пример за състояние, четещо запис след отваряне на файл, съдържащ множество записи.

Фиг. 3.51. Пример за състояние с непразна секция от вътрешни действия
Началното и крайното състояние са описани в раздела за описание на диаграмата на дейността (вижте Фигура 3.45).
Преход
Простият преход е връзка между две последователни състояния, която показва факта, че едно състояние се е променило в друго. Престоят на симулирания обект в първото състояние може да бъде придружен от извършване на определени действия, а преминаването към второ състояние ще бъде възможно след приключване на тези действия, както и след изпълнение на някои допълнителни условия. В този случай се казва, че преходът се задейства. Преди преходът да бъде задействан, обектът е в предишното състояние от него, наречено начално състояние, или в източника (да не се бърка с началното състояние - това са различни понятия), а след като се задейства, обектът е в следващото от негосъстояние (целево състояние).
В диаграмата на състоянието преходът е представен от плътна линия със стрелка, сочеща към целевото състояние (например, "отказ" на Фигура 3.49). До реда може да има ред с текст, описващ задействащото събитие, което причинява прехода (в този случай преходът ще бъде задействане), и защитното условие, при което се извършва преходът. В примера на фиг. 3.49 преходът ще работи, когато възникне събитие - "отказ".
Събитие
Събитието е спецификация на съществен факт, който се случва във времето и пространството. В контекста на автоматите събитието е стимул, способен да задейства преход.
Състояние на часовника
Условието за защита (условие за защита), ако има такова, винаги се записва в скоби след задействащото събитие и е булев израз (израз, който се оценява на „вярно“ или „невярно“).

Фиг. 3.52. Диаграма на състоянието за симулиране на пощенски
Заключение