-
Notifications
You must be signed in to change notification settings - Fork 6
Объектно ориентированный анализ. Динамика систем, схемы взаимодействия, каналы управления, имитирование
Модель взаимодействия объектов (МВО) – графическое представление взаимодействия между моделями состояний и внешними сущностями. (Строится для каждой подсистемы или домена).
МВО рисуется в овале, внешняя сущность – прямоугольник (именуемый терминатором). События, которые порождаются одной моделью для другой, рисуются стрелкой – так же могут приходить события от внешних сущностей. События могут быть направлены к терминаторам. МВО формируется иерархически – объекты, наиболее осведомленные о всей системе (активные) располагаются вверху диаграммы. Если событие приходит извне к МВО, находящимся вверху, терминаторы рисуются вверху – терминаторы верхнего уровня. Если события уходят или приходят к МВО нижнего уровня, терминаторы рисуются снизу. Может быть схема верхнего и нижнего управления – система ограничена терминаторами сверху или снизу. Надо стремиться к тому, чтобы на верхнем уровне взаимодействие терминатора сводилось к одной модели. С нижним этого ограничения нет – может быть сколько угодно МВО, взаимодействующих с терминаторами нижнего уровня. Как правило на нижнем уровне терминатор (внешняя сущность) может быть физическим объектом, с которым мы работаем. С точки зрения организации МВО, есть более и менее осведомленные объекты; терминаторы в этой иерархии взаимодействуют чётко: верхние терминаторы взаимодействуют с осведомлёнными объектами, нижние с неосведомлёнными. Противных схем лучше избегать – нужно продолжать формализацию, искусственно выделяя объекты меньшей осведомленности.
💠 Типы событий:
-
Внешние события (приходят и уходят от терминатора)
- Незапрашиваемые события (не являются результатом действий подсистемы)
- Запрашиваемые (порождаются какой-либо моделью состояний подсистемы)(соединяют одну модель состояний с другой)
- внутренние (соединяют одну модель состояний с другой).
Канал управления – последовательность событий и действий, происходящих в ответ на поступление некоторого незапрашиваемого события. Если возникло событие к терминатору, влекущее за собой новые события от терминатора, то они тоже включаются в канал управления.
💠 Процесс имитирования(тесты): понять, насколько правильно была выбрана модель, нет ли ошибок. Необходимо рассмотреть всевозможные начальные состояния объектов подсистемы. Далее, в любом состоянии надо проверить, как подсистема будет реагировать на все незапрашиваемые события, и построить соответствующие каналы управления.
💠 Время имитирования:
- Время выполнения действия;
- Время задержки – время, в течении которого объект должен находится в определенном состоянии (резкий переход из состояния в состояние невозможен).
Этапы имитирования:
- Установка начального состояния
- Прием незапрашиваемого события и выполнение канала управления
- Оценка конечного результата