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