Используйте полные предложения, с правильной грамматикой, правописанием и пунктуацией. Предложения и абзацы должны быть краткими и ясными.
Используйте действительный залог (например, «Система сделает то-то», а не «Произойдет то-то»).
Последовательно используйте термины и именно так, как они определены в словаре. Остерегайтесь синонимов и слов, близких по значению. Не следует в спецификации требований к ПО пытаться разнообразить лексику, чтобы заинтересовать читателя.
Нечеткие требования верхнего уровня следует детализировать таким образом, чтоб они стали абсолютно ясны.
Требования следует излагать последовательно, например «Система будет» или «Пользователь будет», затем — активный глагол, а после — наблюдаемый результат. Укажите инициирующие условия или действия, вследствие которых система ведет себя определенным образом. Например, «Если запрошенный химикат найден на складе химикатов, система отобразит список всех хранимых на складе контейнеров с указанным химикатом». Вы можете использовать «должно» как синоним «будет», однако следует избегать «следовало бы», «можно было бы» и аналогичных слов, из которых не ясно, необходимо ли действие.
При указании требования в форме «Пользователь будет...» идентифицируйте определенного исполнителя (например, «Покупатель будет...»).
Применяйте списки, рисунки, графики и таблицы, чтобы представить информацию визуально. Читателей утомляет большой объем сплошного текста.
Подчеркните наиболее значимые фрагменты информации. Здесь годятся: графики, последовательности, в которых первый элемент подчеркивается, повторы, пустое пространство и визуальный контраст, например затенения (Kovitz, 1999).
Требования, изложенные неясным языком, не поддаются проверке, поэтому избегайте двусмысленных и субъективных терминов, В табл. 10-1 перечислены некоторые из них., а также приводятся рекомендации, как исправить такие неясности.
Таблица 10-1. «Неоднозначные термины, которых следует избегать в спецификаций к требованиям»
Неоднозначные термины | Способ их улучшения |
Приемлемый, адекватный... | Определите, что понимается под приемлемостью и как система это может оценить. |
Практически выполнимо... | Не заставляйте разработчиков определять, что под этим понимается. Поставьте пометку «TBD» и определите дату, к которой эту проблему следует разрешить. |
По меньшей мере, как минимум, не более чем, не должно превышать... | Укажите минимальное и максимальное допустимые значения. |
Между... | Определите, указаны ли конечные точки. |
Зависит от... | Определите природу зависимости. Обеспечивает ли другая система ввод данных в вашу систему, надо ли установить другое ПО до запуска вашей системы и зависит ли ваша система от другой при выполнении определенных расчетов или служб? |
Эффективный... | Определите, насколько эффективно система, насколько быстро она выполняет определенные операции и насколько она проста в обращении. |
Быстрый, моментальный... | Укажите минимальную приемлемую скорость, при которой система выполняет определенное действие |
Гибкий... | Опишите способы изменения системы в ответ на изменения условий или бизнес-потребностей. |
Улучшенный, лучший, более быстрый, превосходный... | Определите количественно, насколько лучше или быстрее стали показатели в определенной функциональной области. |
Включает в себя, но не ограничен этим; и т.д.; и т.п.; такой как... | Список элементов должен включать все возможности. В противном случае его нельзя использовать при разработке или тестировании. |
Максимизируйте, минимизируйте, оптимизируйте... | Укажите минимальное и максимальное допустимые значения определенного параметра. |
Обычно, в идеальном варианте... | Также опишите поведение системы при нештатных условиях. |
Необязательно... | Укажите, кто делает выбор: система, пользователь или разработчик. |
Разумный, при необходимости, при условиях... | Объясните, как это выполнить. |
Устойчивый к сбоям... | Определите, как система должна обрабатывать исключения и реагировать на неожиданные условия работы. |
Цельный, прозрачный, элегантный... | Выразите ожидания пользователя, применяя характеристики продукта, которые можно наблюдать. |
Несколько... | Укажите, сколько, или задайте минимальную и максимальную границы диапазона. |
Не следует... | Старайтесь формулировать требования в позитивной форме, описывая, что именно система будет делать. |
Реальный... | Поясните этот термин. |
Достаточный... | Укажите, какая степень чего-либо свидетельствует достаточности. |
Поддерживает, позволяет... | Дайте точное определение, какие действия система будет выполнять, поддерживая конкретную возможность. |
Дружественный, простой, легкий... | Опишите системные характеристики, которые будут отвечать потребностям пользователей и его ожиданиям, касающимся легкости и простоты применения продукта. |
Источник: К. Вигерс. Разработка требований к программному обеспечению. – М.: Торговый дом «Русская Редакция», 2004. – С. 194-196.
Концентрированная книга издательства LIVREZON складывается из сотен и тысяч проанализированных источников литературы и масс-медиа. Авторы скрупулёзно изучают книги, статьи, видео, интервью и делятся полезными материалами, формируя коллективную Базу знаний.
Пример – это фактурная единица информации: небанальное воспроизводимое преобразование, которое используется в исследовании. Увы, найти его непросто. С 2017 года наш Клуб авторов собрал более 80 тысяч примеров. Часть из них мы ежедневно публикуем здесь.
Каждый фрагмент Базы знаний относится к одной или нескольким категориям и обладает точной ссылкой на первоисточник. Продолжите читать материалы по теме или найдите книгу, чтобы изучить её самостоятельно.
📎 База знаний издательства LIVREZON – только полезные материалы.