Обсудим модель системы регулирования давления космического корабля, представленную на рис. 3.9.
Начнем с диаграммы потоков данных. Основной процесс в ПДД — Слежение и регулирование давления. На его входы поступают: измеренное Давление в кабине и Мах давление: На выходе процесса — поток данных Изменение давления. Содержание процесса описывается в его спецификации ПСПЕЦ.
Спецификация процесса ПСПЕЦ может включать:
1) поясняющий текст (обязательно);
2) описание алгоритма обработки;
3) математические уравнения;
4) таблицы;
5) диаграммы.
Элементы со второго по пятый не обязательны.
Рис. 3.9. Модель системы регулирования давления космического корабля
С помощью ПСПЕЦ разработчик создает описание для каждого преобразователя, которое рассматривается как:
q первый шаг создания спецификации требований к программному изделию;
q руководство для проектирования программ, которые будут реализовывать процессы.
В нашем примере спецификация процесса имеет вид
если Давление в кабине > мах
то Избыточное давление:=11;
иначе Избыточное давление:=0;
алгоритм регулирования;
выч.Изменение давления;
конец если;
Таким образом, когда давление в кабине превышает максимум, генерируется управляющее событие Избыточное давление. Оно должно быть показано на диаграмме управляющих потоков УПД. Это событие входит в окно управляющей спецификации УСПЕЦ.
Управляющая спецификация моделирует поведение системы. Она содержит:
q таблицу активации процессов (ТАП);
q диаграмму переходов-состояний (ДПС).
Таблица активации процессов показывает, какие процессы будут вызываться (активироваться) в потоковой модели в результате конкретных событий.
ТАП включает три раздела — Входные события, Выходные события, Активация процессов. Логика работы ТАП такова: входное событие вызывает выходное событие, которое активирует конкретный процесс. Для нашей модели ТАП имеет вид, представленный в табл. 3.1.
Таблица 3.1. Таблица активации процессов
Входные события: | |||
Включение системы | 1 | 0 | 0 |
Избыточное давление | 0 | 1 | 0 |
Норма | 0 | 0 | 1 |
Выходные события: | |||
Тревога | 0 | 1 | 0 |
Работа | 1 | 0 | 1 |
Активация процессов: | |||
Слежение и регулирование давления | 1 | 0 | 1 |
Уменьшение давления | 0 | 1 | 0 |
Видим, что в нашем примере входных событий три: два внешних события (Включение системы, Норма) и одно — условие данных (Избыточное Давление). Работа ТАП инициируется входным событием, «втекающим» в окно УСПЕЦ. В результате ТАП вырабатывает выходное событие — активатор. В нашем примере активаторами являются события Работа и Тревога. Активатор «вытекает» из окна УСПЕЦ, запуская в УПД конкретный процесс.
Другой элемент УСПЕЦ — Диаграмма переходов-состояний. ДПС отражает состояния системы и показывает, как она переходит из одного состояния в другое.
ДПС для нашей модели показана на рис. 3.10.
Системные состояния показаны прямоугольниками. Стрелки показывают переходы между состояниями. Стрелки переходов подписывают следующим образом: в числителе — событие, которое вызывает переход, в знаменателе — процесс, запускаемый как результат события.
Изучая ДПС, разработчик может анализировать поведение модели и установить, нет ли «дыр» в определении поведения.