Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
32
Добавлен:
23.03.2016
Размер:
17.9 Кб
Скачать

17. Модульный принцип разработки алгоритмов и программ. Восходящий и нисходящий способ проектирования.

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

При использовании восходящего подхода разработка программы идёт с самого низкого уровня. Когда исходящий компонент готов, переходят к компоненту более высокого уровня, и так далее до высшего уровня. В ходе разработки все компоненты программы собираются, иногда компоненты низких уровней попадают в библиотеки. Минусы этого подхода:

  • Увеличение вероятности несогласованности компонентов вследствие неполноты спецификаций;

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

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

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

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

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

Комбинированный - учитывает следующие факторы, влияющие на последовательность разработки:

  • Достижимость модуля-наличие всех модулей в цепочке вызова данного модуля;

  • Зависимость по даныым – модули,формирующие некоторые данные,должны создаваться раньше обрабатывающих.

  • Обеспечение возможности выдачи результатов – модули вывода результатов должны создаваться раньше обрабатывающих.

  • Готовность вспомогательных модулей (закрытия файлов,завершения программ)

  • Наличие необходимых ресурсов

Нисходящий подход обеспечивает –

  1. Максимально полное определение спецификаций проектируемого компонента и согласованность компонентов между собой.

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

  3. Возможность нисходящего тестирования и комплексной отладки.

Соседние файлы в папке крутые билеты по инфе