Понятность

Корректность

Ясность (Краткость, Сжатость, Простота, Точность)

Тестируемость (Возможность Проверки)

Недвусмысленность

Должен существовать только один путь интерпретации требования. Иногда двусмысленность проявляется в виде неопределенных акронимов.

Пример:

Треб.1: Система не должна принимать пароли более 15-ти символов.

Не совсем ясно, что система должна делать:

Система не должна позволять пользователю вводить более чем 15 символов.

Система должна отсекать введенную строку до 15-ти символов.

Система не должна отображать сообщение об ошибке, если пользователь вводит более чем 15 символов.

Исправленное требование содержит пояснение:

Треб.1: Система не должна принимать пароли более 15-ти символов. Если пользователь вводит более 15-ти символов при выборе пароля, сообщение об ошибке должно информировать пользователя о необходимом исправлении пароля.

Тестеры должны иметь возможность проверить, было ли требование реализовано корректно. Тестирование должно быть либо пройдено, либо нет. Чтобы быть пригодным для тестирования, требование должно быть ясным, точным и недвусмысленным. Использование некоторых слов может сделать требование невозможным для тестирования:

– Некоторые прилагательные: устойчивый, безопасный, точный, эффективный, целесообразный, гибкий, настраиваемый, надежный, дружелюбный, адекватный.

– Некоторые наречия и фразы с ними: быстро, безопасно, своевременно.

– Неспецифичные слова или акронимы: и т.д., и/или, TBD (to be determined).

Треб.1: Система должна препятствовать одновременному доступу большого числа пользователей.

Какое количество здесь имеется в виду под «большим числом» - 10, 100 или 1000?

 

Требования не должны содержать ненужных выражений или информации. Они должны быть изложены кратко и просто:

 

Треб.1: Иногда пользователь будет вводить Airport Code (Код Аэропорта), который система будет распознавать. Но иногда код можно заменить близлежащим городом, и тогда пользователю не нужно знать код аэропорта, т.к. система будет понимать название города.

Это предложение может быть заменено на более простое:

Треб.1: Система должна идентифицировать аэропорт на основании Airport Code (Кода Аэропорта) или City Name (Названия Города).

 

Если требование содержит факты, эти факты должны быть достоверны:

Треб.1: Цены на аренду машин должны включать все соответствующие налоги (включая налог штата - 6%)

Налог зависит от штата, так что представленная цифра в 6 % - некорректна.

 

Требования должны быть грамматически правильные, написаны в соответствующем стиле. Должны быть использованы стандартные соглашения. Слово «должен» должно быть использовано вместо «будет», «обязан» или «может».