Как было показано на рисунке 1.1. ЖЦ ПП сопровождается разработкой таких документов, как потребность в автоматизации, функциональная архитектура, системная архитектура и программный продукт. Остановимся подробнее на содержании этих документов, сопровождающих процесс разработки программ.
Потребность в автоматизации - в технике подобный документ называется техническим заданием (для его обозначения часто используется аббревиатура - ТЗ). Этот документ содержит описание целей автоматизации (или целей разрабатываемого программного продукта) с точки зрения пользователя (или заказчика ПП).
Функциональная архитектура включает формализованное описание предъявляемых к ПП требований как с точки зрения пользователя, так и с точки зрения разработчика программ. В технике аналогичный документ называется техническими требованиями (аббревиатура - ТТ). В состав функциональной архитектуры должны входить: описание функций ПП, требуемых режимов функционирования среды, в которой будет реализовываться программный продукт.
|
|
Описание функций ПП удобно представлять в виде дерева целей, как на рисунке 1.4, на котором изображены основные и обеспечивающие функции, соответствующие приведенному выше техническому заданию.
Системная архитектура представляет собой документ, отражающий модульно-иерархическую структуру проектируемого программного продукта с подробным описанием функциональных спецификаций отдельных модулей. Последнее есть ни что иное, как блок-схемы программ (в ГОСТ они называются схемами программ) и другие схемы, описанные в том же ГОСТ. Следуя Винеру формулу программного продукта можно записать как ‘программный продукт = коды программ + проект’. Под проектом разработчики понимают окончательное и исчерпывающее обоснование и описание средств реализации поставленных целей.
При документировании проекта разработки ПО применяют схемы:
n работы системы, в которой формализуется процесс выполнения программы, взаимодействие с пользователем и данными;
n программ (или иначе блок-схем), в которых формализуется алгоритм обработки данных;
n данных, в которых уточняются потоки данных между процессами и (или) носителями данных;
n взаимодействия программ, отображающих путь активации программ и взаимодействий с данными;
n ресурсов системы, отображающих конфигурацию блоков данных и обрабатывающих блоков, требуемую для решения задачи или набора задач.