Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 11 лет назад пользователемСергей Шудегов
1 Формализация динамического поведения объектов.
2 Модели поведений Многие предметы на протяжении их сроков жизни проходят через различные стадии. Порядок эволюционирования предмета через стадии формирует характерную черту поведения данного предмета. Реальный предмет находится в одной единственной стадии модели в любое данное время.
3 Модели поведений Предметы эволюционируют от одной стадии к другой скачкообразно, частично это зависит от выбора определения или восприятия стадий. В схеме поведения разрешены не все эволюции между стадиями. В реальном мире существуют инциденты, которые заставляют предметы эволюционировать между стадиями.
5 Модель состояний Мура (диаграмма переходов в состояния) Множество состояний. Каждое состояние представляет стадию в жизненном цикле типичного экземпляра объекта. Множество событий. Каждое событие это инцидент или указание на то, что происходит эволюционирование.
6 Модель состояний Мура Правила перехода – определяют, какое новое состояние достигается, когда с экземпляром в данном состоянии происходит некоторое событие. Действия – деятельность или операция, которые должны быть выполнены, когда экземпляр достигает состояния. Одно действие связывается с каждым состоянием.
8 Эти инциденты абстрагируются как события
10 Конечный автомат Все экземпляры объекта совместно используют одну и ту же модель состояния. Конечный автомат – некоторый образец модели состояний, выполняющийся одним экземпляром.
13 Состояние Это положение объекта, в котором применяется определенный набор правил, линий поведения, предписаний и физических законов. Каждому состоянию дается имя, уникальное в рамках модели состояния. Каждому состоянию присваивается номер, уникальный в рамках модели состояния.
14 Состояние создания Одно или несколько состояний в модели состояний, в которых экземпляр появляется впервые.
15 Заключительное состояние Одно или несколько состояний в модели состояний, которые являются концом жизненного цикла экземпляра. Может быть 2-х типов. Экземпляр становится неподвижным. Продолжает существовать, но более не имеет динамического поведения. Экземпляр прекращает существование.
17 Текущее состояние В любой момент времени, различные экземпляры объекта могут находиться в различных состояниях. Состояние, в котором находится экземпляр, называют текущим состоянием. Текущее состояние представляется атрибутом, который называют текущим состоянием или статусом. Это описательный атрибут, его домен задается перечислением состояний объектной модели состояний.
18 Событие Это абстракция инцидента или сигнала в реальном мире, который сообщает нам о перемещении чего-либо в новое состояние. Описывается 4 аспекта: значение, предназначение, метка, данные события.
19 Значение Короткая фраза о том, что происходит в реальном мире.
20 Предназначение Модель состояний (не автомат), которая принимает событие. Может быть один единственный приемник для данного события
21 Метка Уникальная метка требуется для того, чтобы отличать события одно от другого, особенно для событий сходного значения. Метка начинается с ключевого литерала объекта, затем номер события. Если событие происходит между двумя объектами, то можно использовать особый литерал, например, E, от слова external.
22 Данные события Идентифицирующие данные – это множество из одного или более атрибутов, включающих идентификатор объекта-предназначения, то есть определяют экземпляр (конечный автомат), который собирается принимать событие.
23 Данные события Дополнительные данные – это множество из одного или более атрибутов, помимо идентифицирующих данных. Могут приводить атрибуты не только объекта-предназначения, но и любого другого объекта.
24 Правила для данных Все события, которые вызывают переход в определенное состояние, должны нести одни и те же данные события. Если событие может вызвать переход в состояние, которое не является состоянием создания, то ID экземпляра, к которому событие применяется, должно переноситься как данные.
25 Правила для данных Событие, которое вызывает переход в состояние создания, не несет ID, если получаемая модель состояния создает ID в действии состояния создания.
26 Абстрагирование событий из инцидентов Один инцидент в реальном мире может быть абстрагирован в несколько событий. Например, поезд достиг некоторого участка пути, участок пути стал занят.
27 Спецификация события и экземпляр события Спецификация события – типичное, неопределенное происшествие, например, нажата кнопка на любом устройстве. Экземпляр события – определенное происшествие, например, в четко заданное время нажата кнопка конкретного устройства (экземпляра объекта).
28 Действие Деятельность или операция, которая должна быть выполнена экземпляром, когда он достигает состояния. Действия должны быть определены таким образом, чтобы они могли быть выполнены любым экземпляром (так как для всех экземпляров – одна модель состояния).
29 Что может делать действие 1.Читать и записывать атрибуты того экземпляра, для которого выполняется. 2.Читать и записывать атрибуты других экземпляров собственного объекта. 3.Читать и записывать атрибуты экземпляров других объектов.
30 Что может делать действие 4.Выполнять любое вычисление. 5.Порождать событие для любого экземпляра любого объекта, включая экземпляр, для которого вызвано действие. 6.Порождать событие для чего-либо вне области анализа: оператора, аппаратного устройства или объекта в другой системе.
31 Что может делать действие 7.Создавать, удалять, устанавливать, сбрасывать или считывать таймер.
32 Что должно делать действие 1.Должно оставлять данные, описывающие собственный экземпляр непротиворечивыми.
33 Что должно делать действие 2. Если действие создает или удаляет экземпляры, то оно должно гарантировать, что любые связи, включающие эти экземпляры, не противоречат правилам, установленным на информационной модели.
34 Что должно делать действие 3.Оставлять подтипы и супертипы непротиворечиво наполненными. Если создает экземпляр супертипа, то должно создать и экземпляр одного из объектов подтипа. Если удаляет экземпляр подтипа, то должно удалять и соответствующий экземпляр супертипа.
35 Что должно делать действие 4.Должно модифицировать атрибут текущего состояния, чтобы соответствовать текущему состоянию, которое экземпляр занимает в данный момент времени, как результат выполнения действия.
36 Описание действия
38 Действия, события, время 1.Только одно действие данного конечного автомата может выполняться в любой момент времени. Если действие начато, то оно должно завершиться прежде, чем конечным автоматом (КА) этого экземпляра будет получено другое событие.
39 Действия, события, время 2.Действия в различных КА могут выполняться одновременно. 3.События никогда не теряются. 4.Если событие порождено для экземпляра, который в настоящее время выполняет действие, данное событие не будет принято, пока действие не закончено.
40 Действия, события, время 5.Каждое событие прекращается, когда оно представляется для КА, событие тогда исчезает как событие.
41 Запоминание событий В ситуации, когда модель состояния принимает событие, которое будет воздействовать на дальнейшее поведение объекта, но на которое нельзя реагировать, пока объект находится в текущем состоянии, необходимо сохранить событие либо в состояниях, либо в данных.
42 Запоминание событий
43 Запоминание событий в состояниях 2 инцидента – время смешивания истекло и бак для хранения выбран, и его клапан открыт. Так как это разные инциденты, то они абстрагируются в 2 отдельных события. Нельзя абстрагировать событие для представления составного условия
45 Запоминание событий в состояниях
46 Запоминание событий в данных
48 Диаграмма и таблица переходов в состояния (ДПС и ТПС) Каждая модель состояний имеет набор правил переходов, которые определяют, какое достигается новое состояние, если конкретное событие происходит в определенном состоянии. Переход представляется на ДПС стрелкой, направленной от одного состояния к другому
49 ДПС Переход представляется на ДПС стрелкой, направленной от одного состояния к другому. Стрелка обозначается событием (меткой и значением).
50 ТПС Каждая строка – одно из возможных состояний, каждый столбец – событие, которое имеет эту модель состояний как предназначение. Ячейки заполняются для определения того, что происходит, когда экземпляр в данном состоянии принимает конкретное событие.
51 Типы наполнений ячеек 1.Новое состояние – в точности соответствует стрелке перехода на ДПС. Событие может заставить экземпляр переходить в состояние, в котором он уже находится. При этом состояние не изменяется, но экземпляр повторно выполняет действие.
52 Типы наполнений ячеек 2.Событие игнорируется. Отличается от перехода к тому же состоянию тем, что экземпляр повторно НЕ выполняет действие. 3.Не может произойти. Например, в состоянии «Лампа горит» не может произойти событие «Лампа зажглась».
54 Роль таблицы переходов в состояния
55 Таймер Это механизм, который может использоваться действием для создания события через определенное время в будущем. Этот механизм представляет собой часть формализации ООА и обеспечивается в форме объекта Таймер.
56 Атрибуты объекта Таймер
57 Модель состояний Таймера
58 Условные обозначения
59 Рабочие продукты Модели состояний – ДПС, ТПС, описания каждого действия на ДПС (если действия занимают много места и не могут поместиться на ДПС) Список событий
60 Пример ТПС
61 Пример списка событий
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.