Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
компьютерная техника (конспектировать ).docx
Скачиваний:
69
Добавлен:
05.11.2018
Размер:
1.56 Mб
Скачать

Данные событий и состояния

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

Правило тех же данных. Все события, которые вызывают переход в определенное состояние, должны нести одни и те же данные события.

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

Правило состояния несоздания. Если событие может вызывать переход в состояние, которое не является состоянием создания, то идентификатор экземпляра, к которому событие применяется, должно переноситься как данные.

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

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

Абстрагирование событий из инцидентов

Один инцидент в реальном мире может быть абстрагирован в более чем одно событие. Например, предположим, что Вы имеете железную дорогу, в которой железнодорожная сеть разделена на определенные сегменты дороги, и что местонахождение поезда определяется как сегмент дороги, занимаемый головным вагоном. Тогда реальный инцидент перемещения поезда в другой сегмент мог бы породить два приемлемых события: для поезда - информирующее, что новый сегмент был достигнут, - и для сегмента дороги, который только что стал занятым.

Спецификация события против экземпляров события

Когда событие (VI: например, кнопка нажата) появляется на ДПС, оно представляет собой понятие типичного, но неопределенного инцидента - в этом случае нажата любая кнопка любой микроволновой печи. Это понятие должно отличаться от частного происшествия VI: кнопка печи 5 нажата в 15 ч, второй раз - в 15 ч 10 мин, и кнопка печи 25 нажата в 21 ч. Формально оба понятия рассматриваются как событие, их значение обычно ясно из контекста. Однако, когда необходимо их различать посредством терминологии, мы используем понятие спецификация события но отношению к типичному неопределенному происшествию (нажата любая кнопка любой печи) и экземпляр события по отношению к определенному происшествию (нажата эта же кнопка печи 5 в 15 ч 10 мин).

3.5 Действия Действия и экземпляры

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

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

Когда действие начинается, это обеспечивается данными события, которые передаются событием, вызвавшим переход. Данные события содержат достаточно информации, чтобы идентифицировать существующий экземпляр, от чьего имени выполняется действие. В случае состояния несоздания данные события включают идентификатор экземпляра. В случае состояния создания действие будет создавать новый экземпляр, основанный на информации, переданной данными события. Как только экземпляр создан, действие продолжается для выполнения дополнительной работы.