Разработка сложных программных изделий

       

Кодирование модулей


Когда завершено проектирование каждого модуля и проведены его обзор и утверждение, можно начинать кодирование (написание программ). При этом также должны быть установлены и докумен­тированы требования кодирования, которые определяют правила:

• представления комментариев в программах;

• наименования программ, подпрограмм, файлов, переменных;

• ограничения размеров модулей;

• использования библиотек;

• определения констант; • использования специальных средств компилятора, которых нет в языке;

• обработки ошибок и т.п.

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

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

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

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

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



Содержание раздела