Требования к требованиям, или свойства качественных требований
Полнота
Требование содержит всю необходимую информацию, ничто не пропущено по соображениям «это и так всем понятно».

Типичные проблемы
- «Пароли должны храниться в зашифрованном виде» - каков алгоритм шифрования?
- «Экспорт осуществляется в форматы PDF, PNG и т.д.» — что мы должны понимать под «и т.д.»?
- «См. выше» вместо «см. раздел 123.45.b»
Атомарность
Требование описывает одну ситуацию и не может быть разбито на части без потери смысла.
Типичные проблемы
- «Кнопка “Restart” не должна отображаться при остановленном сервисе, окно “Log” должно вмещать не менее 20-ти записей о последних действиях пользователя» — в одном предложении описаны разные элементы интерфейса в разных контекстах.
- «Если пользователь подтверждает заказ и редактирует заказ или откладывает заказ, должен выдаваться запрос на оплату» — описаны три разных случая, и это требование стоит разбить на три отдельных во избежание путаницы.
- «Когда пользовател ь входит в систему, ему должно отображаться приветствие; когда пользователь вошел в систему, должно отображаться имя пользователя; когда пользователь выходит из системы, должно отображаться прощание» — все три ситуации должны быть описаны отдельно и более детально.
Непротиворечивость
Требование не содержит внутренних или внешних противоречий с другими требованиями, документами или элементами системы.
Типичные проблемы
- «После успешного входа в систему пользователя, не имеющего права входить в систему…» — тогда как он успешно вошёл в систему, если не имел такого права?
- Противоречия между двумя и более требованиями, между таблицей и текстом, рисунком и текстом, требованием и прототипом и т.д. (например: «712.a Кнопка “Close” всегда должна бы ть красной» и «36452.x Кнопка “Close” всегда должна быть синей»).
Недвусмысленность
Требование формулируется ясно и однозначно, без использования жаргона, аббревиатур или расплывчатых выражений. Старайтесь избегать таких слов, как: много, мало, часто, редко, эффективно, большой, быстро, легко, несколько.
Типичные проблемы
- Использование терминов или фраз, допускающих субъективное толкование: «приложение должно поддерживать передачу больших объемов данных» — насколько больших?
- «В случае необходимости оптимизации передачи больших файлов система должна эффективно использовать минимум оперативной памяти, если это возможно»