73
Данные, подлежащие обработке с помощью процесса «Обработка
пакетов», могут не включать всю входную информацию, но это еще часть
входных данных. Процесс «Обработка пакетов» может включать кодирование,
декодирование, вычисления и другие преобразования данных. Результаты
данного процесса могут представлять собой еще не отформатированные, не
отредактированные, возможно, неверные данные, но это уже выходные данные.
Три части программы, соответствующие трем потокам данных, принято
называть соответственно истоком, преобразователем и стоком.
Преобразователь — это основная часть программы, исток выполняет
функцию управления входным потоком данных, сток выполняет функцию
управления выходным потоком данных.
Рисунок 4.2 представляет диаграмму разбиения программы на исток –
преобразователь – сток. Линии на диаграмме показывают потоки передачи
данных между процессами.
Рисунок 4.2 – Диаграмма разбиения любой программы
на исток-преобразователь-сток
Рисунок 4.3 содержит соответствующую схему иерархии модулей
программы. В схеме иерархии линии указывают связи по управлению между
модулями, а также изображают отношения типа вызывающий–вызываемый.
Каждый из блоков на данном рисунке – это программный модуль, который
может быть реализован в зависимости от назначения, сложности и размера как
независимый модуль, внутренняя подпрограмма или некоторая часть
программы.
Процесс декомпозиции программы заключается в рекурсивном
использовании метода разбиения на исток – преобразователь – сток на
отдельных ветвях древовидной модульной структуры программы. В результате
получаются модули нижнего уровня.
Не все модули разбиваются обязательно на три модуля более низкого
уровня. Результат декомпозиции модуля-стока должен обязательно содержать
сток, модуля-преобразователя – преобразователь, модуля-истока – исток.
Вызывающий модуль – это главный сток для модуля-истока и главный исток
для модуля-стока.
В
С
Преобразователь Сток