Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
методичка15КП.doc
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
312 Кб
Скачать
☆

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

Нисходящий подход предполагает проектирование программы “сверху вниз” (top – down programming), когда, на каждом шаге детализации для каждой задачи составляется программа в терминах выделенных в ней подзадач 5, 8. Данный метод применяется при разработке сложных алгоритмов и программ, а также их комплексов.

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

Таким образом, отладка программного комплекса начинается с основной программы или главного модуля и в любой момент разработки имеется действующий вариант. Тестирование и отладка отдельных программных модулей и комплекса в целом ведется по ходу его проектирования [6, 7].

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

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

При реализации курсового проекта можно выделить три части:

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

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

Иначе

Рисунок 1.1– Схема основного алгоритма

Пусть задач будет две, тогда структуру проектируемого программного комплекса можно изобразить схемой рис.1.2.

У ровень I

Уровень II

Уровень III

Рисунок 1.2 – Схема программного комплекса для курсового проекта

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

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

Рисунок 1.3 – Схема отладки программы I уровня

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