ПЭИС : 13.Проектирование процессов обработки данных в пакетном режиме

К задачам, решаемым в пакетном режиме (запускаемым, как правило, в виде фоновых заданий), относятся задачи, характеризующиеся следующими признаками: слабой разветвленностью алгоритма, отсутствием необходимости вмешательства пользователя в ход решения и выбора варианта решения, большими объемами обрабатываемых данных и длительным временем решения и получения результатной информации. К таким задачам относятся, например, задачи статистической обработки данных, планирования производственной программы, расчета заработной платы и др.

Процесс проектирования внутримашинной технологии решения задач в пакетном режиме состоит из выполнения ряда операций, содержание и последовательность которых, а также состав получаемых проектных документов зависят от методов и инструментальных средств проектирования, выбираемых на предпроектной стадии. В условиях использования оригинальной технологии и канонического проектирования к методам и инструментальным средствам проектирования программного обеспечения задач относят методы IPT-технологиипроектирования и процедурно-ориентированные языки программирования.

В первую группу входит совокупность взаимосвязанных методов проектирования, которые были разработаны фирмой IBM:

  • метод структурного проектирования;
  • метод модульного проектирования;
  • метод проектирования «сверху-вниз»;
  • метод структурного программирования;
  • метод HIPO-документирования.

Основной задачей структурного проектирования является выделение полного состава функций, для выполнения которых предназначаются разрабатываемые программные средства задачи. Выделяют два главных этапа структурного проектирования:

  • этап общего проектирования, после которого проектировщик получает полный состав функциональных блоков и связей между ними;
  • этап детального проектирования, задачей которого является определение полного состава программных блоков и связей между ними, показывающего, по какой технологии реализуются выявленные ранее функции.

Структурное проектирование позволяет на раннем этапе проектирования определить необходимые функции, которые должна реализовывать задача в процессе своей эксплуатации и убрать дублирующие.

Модульное проектирование дает возможность разбить программные и функциональные блоки на оптимальное количество модулей небольшой размерности (длиной до пятисот операторов), определить назначение каждого модуля и осуществить идентификацию его входных и выходных параметров.

По своему назначению модули делят на управляющие и исполнительные, а по степени общности — на стандартные и оригинальные.

Метод модульного проектирования поддерживается методом проектирования «сверху-вниз». Традиционно применяемое проектирование методом «.снизу-вверх» включает выполнение операций по разработке программного обеспечения в следующей последовательности: разработка отдельных компонентов программы, кодирование этих компонентов, отладка и интеграция, т. е. сборка их на последнем шаге, что приводит к вероятности выявления стольких неувязок в программе, сколько было в ней составных частей.

Проектирование методом «сверху-вниз» позволяет свести процесс разработки программы к выполнению двух операций: логическая разработка с одновременным интегрированием и выполнение кодирования с отладкой. При таком подходе вначале разрабатывается логическая структура программы в виде дерева программных модулей с установлением всех типов связей между ними, а затем идут кодирование и отладка модулей. При этом проектирование начинается с модулей, занимающих верхние уровни иерархии, с одновременной проработкой связей их со всеми соподчиненными модулями, для которых разрабатываются временные «заглушки» с целью проведения их отладки.

Структурное программирование основывается на выполнении нескольких ограничений. Первое касается размеров модулей и сегментов, согласно которым небольшой по размеру модуль (до 500 операторов) вначале сегментируется на небольшие разделы (сегменты) размером на один лист (до 60 операторов). Дальнейшая сегментация идет в пределах листа с выполнением расположения сегментов на листе со сдвигом слева направо для улучшения визуальных характеристик программы.

Другим ограничением, применяемым в этом методе, является ограничение на типы используемых операторов и структур. Рекомендуется использование линейной структуры (последовательность взаимосвязанных операторов), иерархической структуры с оператором if и циклических (кольцевых) структур с использованием оператора do while. He рекомендуется применение оператора go to.

Структурное программирование позволяет повысить степень читаемости программной документации и качество сопровождаемости программного продукта.

Для обеспечения качественного документирования разработки программного продукта в этой технологии предлагалось использование нескольких методов, в частности, например, использование стандартного пакета документов HIPO (иерархия -вход — процесс — выход), в который входят три типа документов.

  • Таблица содержания пакета, в которой рисуется иерархическая структура пакета, состоящего из полной совокупности соподчиненных функциональных блоков.
  • Обзорная схема каждой функции, в которой описываются документы, массивы, данные, идущие на вход функции, этапы обработки и перечень документов и массивов, получаемых на выходе функции.
  • Подробная схема функции (описываются вход, процесс и выход каждого программного блока и дается указание внешних и внутренних потоков информации).

Положительной стороной использования пакета HIPO являлась стандартность представления описания программных продуктов и возможность поддерживать хорошую его читаемость на этапе эксплуатации и сопровождения. К отрицательным сторонам можно отнести: трудность внесения изменений в документацию, поскольку документация включает большое количество схем; высокую сложность каждой схемы и большую степень их связанности; высокие требования к квалификации исполнителя.

Выделяют следующие виды средств частичной автоматизации проектирования типовых операций обработки данных:

  • библиотеки макрогенераторов;
  • библиотеки стандартных подпрограмм;
  • генераторы программ;
  • интерпретаторы, ориентированные на предметную область.

Суть метода использования библиотеки макрогенератора заключается в том, что проектировщики, исходя из опыта проектирования, вьделяют в теле задач часто повторяющиеся последовательности операторов, реализующие небольшие функции обработки. На эти последовательности разрабатываются макрорасширения, имена которых обрабатываются макрогенератором, поэтому в тело программы включаются макрокоманды с параметрами, что значительно сокращает объем работ по программированию. В случае использования данного средства проектировщик должен выполнить следующие работы:

  • анализ алгоритма задачи;
  • анализ содержания библиотеки макроопределений (библиотека макрогенератора);
  • написание на базовом языке исходной программы;
  • включение в тело программы макрокоманд с параметрами (макроопределения);
  • подготовка программы к вводу;
  • ввод программы и ее обработка макрогенератором, который включает макрорасширения из библиотеки;
  • трансляция и редактирование программы;
  • испытание на контрольном примере, подготовка документации.

Если проектировщик использовал библиотеку стандартных подпрограмм, то в состав операций по проектированию должны входить такие операции, как: декомпозиция задачи на функциональные блоки; выбор типовых процедур и состава стандартных подпрограмм; разработка принципов связи программных модулей, списков передаваемых параметров; разработка алгоритмов оригинальных программных модулей; выбор языка программирования, написание и отладка кодов программ; соединение типовых процедур и оригинальных программных модулей; разработка управляющих модулей; комплексная отладка на контрольном примере с разработкой программной документации.

Дальнейшее развитие методика проектирования внутри-машинной технологии обработки данных получила при использовании генераторов программ и программ интерпретирующего типа.

 

© gos2012asu

Бесплатный хостинг uCoz