
или
влияние риска. Это только начало; составьте свой собственный
список факторов риска и стратегий по смягчению на основе опыта, на-
работанного в каждом проекте. Leishman и Cook (2002) описывают до-
полнительные факторы риска, связанные с требованиями к ПО. Не за-
будьте записывать факторы риска в формате «причина — следствие».
Выявление требований
Образ
и границы проекта. Расползание границ становится более ве-
роятным, если у лиц, заинтересованных в проекте, нет ясного, единог
:э
мнения о
том,
что продукт должен из себя представлять (и не
пред-
ставлять) и делать. Начиная проект, составьте документ об образе
и
границах, который содержит ваши бизнес-требования, и используйте
его при выработке решений о принятии или
изменении
требований.
Время, затраченное на
разработку
требований. Жесткие
сроки
проекта часто заставляют менеджеров и клиентов пренебрегать
со-
ставлением требований; они считают, что если программисты не
начну
работать над кодом немедленно, то не
закончат
вовремя. Проекты
ши-
роко варьируются в зависимости от размера и класса приложения
(на-
пример, информационные системы, системное ПО, коммерческие или
военные), но по самым грубым прикидкам стоит расходовать
10-15%
ресурсов проекта на действия по разработке требований (Rubin
1999)
Записывайте,
сколько усилий понадобилось в реальности на разработ-
ку требований к каждому проекту, чтобы иметь возможность
оценить,
достаточно ли этого, и улучшить планирование следующих проектов.
Полнота и корректность спецификации требований. Чтобы требо-
вания точно определяли потребности клиента, применяйте метод ва-
риантов использования, чтобы выявить требования, концентрируясь
на пользовательских задачах. Составляйте конкретные сценарии ис-
пользования, пишите варианты тестирования на основе требований и
просите клиентов разрабатывать свои критерии принятия. Создавайте
прототипы, чтобы требования были
понятны
пользователям и чтобы
получать от них конкретные отзывы. Привлеките представителей кли-
ентов к экспертизе спецификации требований и моделей анализа.
Требования для суперсовременных продуктов. Легко ошибиться в
оценке реакции ранка
на
продукты, первые в своем роде. Уделите боль-
шое внимание исследованию рынка, создавайте прототипы и исполь-
зуйте фокус-группы пользователей, чтобы получать раннюю и частую
обратную реакцию относительно вашего продукта.
Определение нефункциональных требований. Поскольку
основ-
ное внимание, естественно, обращено к функциональности продукта,
Глава 23. Требования к ПО и управление риском 445