logo search
КИТ_Часть 1 / конспект_КИТ-1_д-обуч

11.4. Технологии программирования.

В условиях индустриального подхода к разработке и сопровождению программного обеспечения особый вес приобретают технологические характеристики разрабатываемых программ. Для обеспечения необходимых технологических свойств применяют специальные технологические приемы и следуют определенным методикам, сформулированным всем предыдущим опытом создания программного обеспечения. К таким приемам и методикам относят правила декомпозиции, методы проектирования, программирования и контроля качества, которые под общим названием "структурный подход к программированию» были сформулированы еще в 60-х голах XX в. В его основу были положены следующие основные концепции:

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

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

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

• структурное программирование – методология и технология разработки программных комплексов, основанная на принципах: программирования "сверху-вниз"; модульного программирования. При этом логика алгоритма и программы должны использовать три основные структуры: последовательное выполнение, ветвление и повторение.

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

Хороший проект сравнительно быстро и легко кодируется, тестируется, отлаживается и модифицируется.

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

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

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

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

• процедурный (или структурный - по названию подхода);

• объектный.