- •Введение
- •Управление моделью
- •Сноски (Note)
- •Общие механизмы расширения
- •Ограничение (constraint)
- •Комментарии (comment)
- •Свойства элементов
- •Стереотипы
- •Диаграммы статических структур
- •Диаграмма классов
- •Диаграмма объектов
- •Классификатор (Classifier)
- •Семантика
- •Нотация
- •Варианты представления
- •Рекомендации по оформлению
- •Секция названия Нотация
- •Секция список Нотация
- •Варианты представления
- •Атрибут
- •Семантика
- •Нотация
- •Варианты представления
- •Нотация
- •Интерфейсы Семантика
- •Нотация
- •Параметризованный класс (шаблон) Семантика
- •Нотация
- •Варианты представления
- •Связанный элемент Семантика
- •Нотация
- •Импортирование пакета Семантика
- •Нотация
- •Варианты представления
- •Варианты представления
- •Рекомендации по оформлению
- •Варианты
- •Варианты представления
- •Рекомендации по оформлению
- •Семантика
- •Нотация
- •Нотация
- •Рекомендации по проектированию
- •Варианты представления
- •Подробности
- •Нотация
- •Диаграммы последовательности Виды диаграмм взаимодействия
- •Диаграмма последовательности Семантика
- •Нотация
- •Варианты представления
- •Варианты представления
- •Время переходов Семантика
- •Нотация
- •Диаграммы сотрудничества
- •Сотрудничество Семантика
- •Нотация
- •Диаграмма сотрудничества Семантика
- •Нотация
- •Структура шаблона Семантика
- •Нотация
- •Взаимодействия
- •Семантика
- •Нотация
- •Активный объект
- •Варианты представления
- •Нотация
- •Составные состояния Семантика
- •Нотация
- •События Семантика
- •Нотация
- •Простые переходы Семантика
- •Нотация
- •Переходы во вложенные состояния Семантика
- •Нотация
- •Варианты представления
- •Внутренние переходы Семантика
- •Состояние действия Семантика
- •Нотация
- •Пиктограммы управления
- •Стереотипы
- •Диаграммы реализации
- •Компонентная диаграмма Семантика
- •Нотация
- •Диаграммы развертывания Семантика
- •Нотация
- •Узлы Семантика
- •Нотация
- •Компоненты Семантика
- •Нотация
Нотация
Детализация состояния показывает его точную структуру. В дополнение к секциям (необязательным) названия и внутреннего перехода, состояние может иметь секцию включающую область, содержащую вложенную диаграмму. В целях удобства и красоты, текстовые секции могут быть сокращены по горизонтали внутри графической области.
Детализация состояния на параллельные подсостояния показывается разделением пунктирными линиями графической области состояния на подобласти. Каждая подобласть может иметь необязательное название и должна содержать вложенную диаграмму состояний с непересекающимися состояниями. Текстовые секции целого состояния отделяются от параллельных подсостояний сплошной линией.
Детализация состояния на разобщенные подсостояния изображается показом вложенной диаграммы состояний в графической области.
Начальное (псевдо) состояние показывается как маленький, полностью залитый, круг. В конечном автомате верхнего уровня переход из начального состояния может помечаться создающим объект событием; иначе он не должен помечаться. Отсутствие пометки означает переход к составному состоянию. Начальный переход может иметь действие. Начальное состояние - условный символ; объект не может находиться в таком состоянии, а должен перейти в реальное состояние.
Завершающее (псевдо) состояние показывается как окружность, охватывающая маленький, полностью залитый, круг (глаз быка). Оно означает завершение процесса в составном состоянии и вызывает переход на составное состояние, помеченное неявным событием завершения процесса (обычно показывается как непомеченный переход).
Пример
Рисунок 41. Последовательные подсостояния
Рисунок 42. Параллельные подсостояния
События Семантика
Событие - заслуживающее внимание происшествие. Для практических целей на диаграммах состояний оно является происшествием, вызывающим переход состояния. События могут быть нескольких видов (необязательно взаимно исключающих друг друга):
выделенное условие становится истинным (обычно описывается как логическое выражение). Это - Событие Изменения. Оно описывается ключевым словом when с последующим логическим выражением в круглых скобках. Событие происходит, когда значение выражения изменяется с ложного на истинное. Заметим, что оно отличается от условия защиты: Условие защиты вычисляется одновременно с возникновением его сообщения; если оно ложно, то переход не происходит и сообщение теряется. Например: when(баланс < 0).
получение явного сигнала одним объектом от другого. Это - Событие Сигнал. Оно описывается сигнатурой события, как условием инициирования, на переходе.
получение объектом запроса операции. Это - Событие Вызов. Оно описывается сигнатурой операции, как условием инициирования, на переходе. Визуальных отличий от события сигнала нет; предполагается, что они различаются по названиям.
завершение назначенного периода времени после выделенного события (часто наступления текущего состоянием) или наступление заданных даты/времени. Это - Событие Времени. Оно описывается временным выражением, как условием инициирования, на переходе. Одним из распространенных временных выражений является отсчет времени от момента наступления текущего состояния; что описывается ключевым словом after с последующим количеством времени в круглых скобках. Например: after (10 seconds).
Объявление события имеет область действия внутри пакета, в котором оно возникает, и может использоваться в диаграммах состояния для классов, которые видимы в пакете. Событие не является локальным для класса.
