Структурное проектирование
Логические связи, существующие между различными элементами данных, составляют основу всего процесса проектирования. Были предложены различные методы построения этого процесса. В одних методах проектирование базируется на системном анализе, согласно которому на первом этапе составляется общий обзор функционирования системы и перерабатываемых в ней данных, после чего система постепенно расчленяется на все более мелкие составные части. Другие методы исходят из базовых элементов какого-то одного класса. Будь то данные или процедуры обработки, и целиком строятся на их основе. В любом случае центральную роль играет исследование структуры и взаимосвязей, а не частные вопросы машинной реализации. Начинается ли проект проектирования с общего обзора системы или с анализа взаимодействия ее компонентов, он ведется на полуабстрактном уровне.
Система проще адаптируется к внешним условиям, если ее структура в минимальной степени зависит от конкретного выбора технических средств или программного обеспечения. Более того, очень часто выбор тех или иных способов программной реализации может быть осуществлен на достаточно поздних стадиях проектирования.
Избиратель | Окружной отдел здравоохранения | Окружное административное управление | Избирательный участок |
Рис.1. Потоки документов при составлении списков избирателей
Проектирование становиться более целенаправленным, если в его основе лежат зависимости между данными, присущие решаемой проблеме, а не условия, диктуемые вычислительной средой. Функциональные связи между программами могут быть определены еще до того. Как начинается разработка соответствующих алгоритмов. На этапе проектирования вопросы реализации решаются на абстрактном уровне с использованием диаграмм, таблиц, структурных схем и псевдокодов. Эта информация обеспечивает возможность первоначальной проверки системы. Если проект системы или программы разработан на достаточно детальном уровне, допускающем моделирование основных процессов обработки данных, количество ошибок, возникающих на стадии реализации, резко снижается. Ошибки на этой стадии обходятся весьма дорого, поскольку к этому времени в проект вложено слишком много усилий. Гораздо проще вносить коррективы в проект на этапе разработки, чем вновь возвращаться к нему уже после его завершения.
Любая прикладная система, подобно рассмотренной выше автоматизированной системе регистрации избирателей, включает не только программы, но также все данные и архивы данных. Этапы исследования и разработки системы могут считаться завершенными лишь после того, как определены все перечисленные компоненты, вплоть до структуры отдельных информационных единиц и наиболее элементарных процедур обработки. Нельзя говорить о завершенности проекта до тех пор, пока не составлено подробное описание взаимодействия различных частей системы, не подготовлены тестовые задачи и не проведена предварительная проверка, на оснований которой делается вывод о том, насколько система отвечает требованиям технического задания.