Документ Требования к программному изделию
Основным выходным материалом рассматриваемой фазы должен быть документ Требования к программному изделию. Главным показателем качества этого документа является полнота охвата требований пользователя. Для контроля и доказательства полноты в документ помещается таблица (матрица), показывающая, как требования пользователя соотносятся с требованиями к программному обеспечению. Таблица позволяет организовать трассировку требований как вручную, так и с привлечением автоматизированных средств.
Непротиворечивость описания требований должна проверяться и при проведении критического обзора документа.
Основное в документе — функциональные требования, которые структурируются по нисходящему принципу с последовательной детализацией требований предыдущего, более высокого уровня. Нефункциональные требования подключаются к функциональным и могут появиться на всех уровнях иерархии функциональной декомпозиции.
Документ не содержит описания деталей реализации программного изделия, т.е. функциональные требования отражают лишь то, что будет выполнять программный продукт. Многие из функциональных требований вытекают из схем потоков данных, которые являются результатом структурного системного анализа проектируемого продукта. При этом схема потоков данных верхнего уровня дает общий обзор функций будущего изделия.
В документе каждое требование, снабженное идентификатором и атрибутами степени важности и приоритета, имеет ссылку на документ Требования пользователя для облегчения обратной трассировки.
Документ Требования к программному изделию должен быть написан на естественном языке. В его рассмотрении и критическом обзоре, кроме разработчиков, принимают участие пользователи, операционный персонал и менеджеры, поэтому стиль и форма изложения требований должна быть понятна всем участникам этой фазы. Однако при описании ряда специфических требований возможно использование формальных языков описания спецификаций, во избежание нежелательных неточностей и многозначности естественного языка. В этом случае формальное описание (например, в виде таблиц или деревьев решений и т.п.) должно быть дополнено пояснениями на естественном языке.