Понятие автомата и деятельности

С помощью взаимодействий (они были описаны ранее) можно моделировать поведение сообщества совместно работающих объектов. Для моделирования поведения отдельного объекта применяется автомат.

Автомат (State machine) описывает поведение в терминах последовательности состояний, через которые проходит объект в течение своей жизни, отвечая на события, а также его реакций на эти события.

Автоматы используются для моделирования динамических аспектов системы. В основном под этим понимается описание жизни экземпляров класса, прецедентов и системы в целом. Экземпляры могут реагировать на такие события, как сигналы, операции или истечение промежутка времени.

Диаграмма, которая описывает все возможные состояния, в которых может находиться объект в процессе работы системы называется диаграммой состояний. Она указывает, какие события могут влиять на объект, и в каких ситуациях он меняет свое состояние.

Действие (Action) - это атомарное вычисление, которое приводит к изменению состояния модели или возврату значения.

Событие - это спецификация существенного факта, имеющего место в пространстве и во времени. В контексте автоматов событие - это некий стимул, инициирующий переход из одного состояния в другое.

Состояние объекта - это ситуация в его жизни, на протяжении которой он удовлетворяет некоторому условию, осуществляет определенную деятельность или ожидает какого-то события.

Переход - это отношение между двумя состояниями, показывающее, что объект, находящийся в первом состоянии, должен выполнить определенные действия и перейти во второе состояние, как только произойдет указанное событие, и будут удовлетворены определенные условия.

Графически состояние изображается в виде прямоугольника с закругленными углами. Переход обозначается линией со стрелкой.

Когда происходит событие, в зависимости от текущего состояния объекта имеет место та или иная деятельность.

Деятельность (Activity) -это занимающее некоторое время неатомарное вычисление внутри автомата. Результатом деятельности является некоторое действие, составленное из атомарных вычислений, которое приводит к изменению состояния модели или возврату значения. Последовательность деятельностей составляют диаграмму деятельности (активности).

Визуализировать автомат можно двумя способами: выделяя передачу потока управления от одной деятельности к другой (с помощью диаграммы деятельности) или выделяя потенциальные состояния объектов и переходы между ними (с помощью диаграммы состояний).

Хорошо структурированные автоматы подобны хорошо структурированным алгоритмам, они эффективны, просты, адаптируемы к разным ситуациям и просты для понимания.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: