Нисходящее и восходящее программирование

При разработке модульных программ применяются два метода проектирования – нисходящее и восходящее. При нисходящем проектировании разработка программного комплекса идет сверху вниз (рис.5).


Рисунок 5- Структура нисходящего программирования

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

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


Рисунок 6- Структура восходящего программирования

Недостатки нисходящего проектирования:

· Необходимость заглушек.

· До самого последнего этапа проектирования неясен размер программного комплекса и его эксплутационные характеристики, за которые, как правило, отвечают модули самого низкого уровня.

Преимущество нисходящего проектирования – на самом начальном этапе проектирования отлаживается головной модуль.

Преимущество восходящего программирования – не нужно писать заглушки.

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

На практике Нисходящее и восходящее программирование применяются оба метода. Метод нисходящего проектирования чаще всего применяется при разработке нового программного комплекса, а метод восходящего проектирования – при модификации уже существующего комплекса.

Структурное программирование - методология разработки программного обеспечения, в основе которой лежит представление программы в виде иерархической структуры блоков. Предложена в 70-х годах XX века Э. Дейкстрой, разработана и дополнена Н. Виртом. В соответствии с данной методологией любая программа представляет собой структуру, построенную из трёх типов базовых конструкций:

· Линейная - однократное выполнение операторов в том порядке, в котором они записаны в тексте программы;

· Разветвляющая - выбор одного из альтернативных путей работы алгоритма в зависимости от выполнения некоторого заданного условия;

· Циклическая Нисходящее и восходящее программирование - многократное исполнение операторов до тех пор, пока выполняется некоторое заданное условие.

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



Чтобы написать структурированную программу надо разбить задачу на отдельные осмысленные части, и начать писать ее с головной программы.

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

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


documentbdyfukn.html
documentbdygbuv.html
documentbdygjfd.html
documentbdygqpl.html
documentbdygxzt.html
Документ Нисходящее и восходящее программирование