Начальное моделирование — это шаг к созданию описания системы как модели реального мира. Описание создается с помощью диаграммы системной спецификации.
Элементами диаграммы системной спецификации являются физические процессы (имеют суффикс 0) и их модели (имеют суффикс 1). Как показано на рис. 3.16, предусматриваются 2 вида соединений между физическими процессами и моделями.
Рис. 3.16. Соединения между физическими процессами и их моделями
Соединение потоком данных производится, когда физический процесс передает, а модель принимает информационный поток. Полагают, что поток передается через буфер неограниченной емкости типа FIFO (обозначается овалом).
Соединение по вектору состояний происходит, когда модель наблюдает вектор состояния физического процесса. Вектор состояния обозначается ромбиком.
Диаграмма системной спецификации для системы обслуживания перевозок приведена на рис. 3.17.
ПРИМЕЧАНИЕ
При нажатии кнопки формируется импульс, который может быть передан в модель как элемент данных, поэтому для кнопки выбрано соединение потоком данных.
Датчики, регистрирующие прибытие и убытие транспорта, не формируют импульса, они воздействуют на электронный переключатель. Состояние переключателя может быть оценено. Поэтому для транспорта выбрано соединение по вектору состояний.
Рис. 3.17. Диаграмма системной спецификации для системы обслуживания перевозок
Для фиксации особенностей процессов-моделей Джексон предлагает специальное описание — структурный текст. Например, структурный текст для модели КНОПКА-1 имеет вид
КНОПКА-1
читать BD;
НАЖАТЬ цикл ПОКА BD
нажать;
читать ВD;
конец НАЖАТЬ;
конец КНОПКА-1;
Структура модели КНОПКА-1 отличается от структуры физического процесса КНОПКА-0 добавлением оператора для чтения буфера ВD, который соединяет физический мир с моделью.
Прежде чем написать структурный текст для модели ТРАНСПОРТ-1, мы должны сделать ряд замечаний.
Во-первых, состояние транспорта будем отслеживать по переменным ПРИБЫЛ, УБЫЛ. Они отражают состояние электронного переключателя физического транспорта.
Во-вторых, для учета инерционности процессов в физическом транспорте в модель придется ввести дополнительные операции:
q ЖДАТЬ (ожидание в изменении состояния физического транспорта);
q ТРАНЗИТ (операция задержки в модели на перемещение транспорта между остановками).
С учетом замечаний структурная диаграмма модели примет вид, изображенный на рис. 3.18.
Соответственно, структурный текст модели записывается в форме
ТРАНСПОРТ-1
опрос TSV;
ЖДАТЬ цикл ПОКА ПРИБЫЛ(1)
опрос TSV;
конец ЖДАТЬ;
покинуть(1);
ТРАНЗИТ цикл ПОКА УБЫЛ(1)
опрос TSV;
конец ТРАНЗИТ;
ТРАНСПОРТ цикл
ОСТАНОВКА
прибыть(i);
ЖДАТЬ цикл ПОКА ПРИБЫЛ(i)
опрос TSV;
конец ЖДАТЬ;
покинуть(i);
ТРАНЗИТ цикл ПОКА УБЫЛ(i)
опрос TSV;
конец ТРАНЗИТ;
конец ОСТАНОВКА;
конец ТРАНСПОРТ;
прибыть(1);
конец ТРАНСПОРТ-1;
Рис. 3.18. Структурная диаграмма модели транспорта
Контрольные вопросы
1. Какие задачи решает аппарат анализа?
2. Что такое диаграмма потоков данных?
3. Чем отличается диаграмма потоков данных от блок-схемы алгоритма?
4. Какие элементы диаграммы потоков данных вы знаете?
5. Как формируется иерархия диаграмм потоков данных?
6. Какую задачу решает диаграмма потоков данных высшего (нулевого) уровня? Почему ее называют контекстной моделью?
7. Чем нагружены вершины диаграммы потоков данных?
8. Чем нагружены дуги диаграммы потоков данных?
9. Как организован словарь требований?
10. С чем связана необходимость расширения диаграмм потоков данных для систем реального времени? Какие средства расширения вы знаете?
11. Как решается проблема расширения возможностей управления на базе диаграмм потоков данных?
12. Каковы особенности диаграммы управляющих потоков?
13. Поясните понятие активатора процесса.
14. Поясните понятие условия данных.
15. Поясните понятие управляющей спецификации.
16. Поясните понятие окна управляющей спецификации.
17. Как организована спецификация процесса?
18. Поясните назначение таблицы активации процессов.
19. Поясните организацию диаграммы переходов-состояний.
20. Какие задачи решают методы анализа, ориентированные на структуры данных?
21. Какие методы анализа, ориентированные на структуры данных, вы знаете?
22. Из каких базовых элементов состоят диаграммы Варнье?
23. Какие шаги выполняет метод Джексона на этапе анализа?
24. Какие типы структурных диаграмм Джексона вы знаете?
25. Как организовано в методе Джексона обнаружение объектов?
26. Что такое структура объектов Джексона?
27. Как создается структура объектов Джексона?
28. Поясните диаграмму системной спецификации Джексона.
29. Чем отличается соединение потоком данных от соединения по вектору состояний?
30. Какова задача структурного текста Джексона?