Разработка и анализ требований.

Разработка и анализ требований.

Данный этап является самым продолжительным и наиболее важным. Он может состоять из нескольких итераций. Основные задачи этапа: детализация первичных требований, обеспечение непротиворечивости и полноты требований.
В результате анализа мы должны получить набор требований, охватывающий все области разработки приложения. Непротиворечивость требований означает однозначное понимание изложенных требований всеми участниками проекта, а так же отсутствие противоречий между различными сформулированными требованиями.
Кроме того, каждому требованию необходимо назначить приоритетность и построить матрицу взаимных зависимостей требований. Назначение приоритетности позволяет выделить наиболее критичные для успеха проекта требования и запланировать их реализацию на более ранние сроки по сравнению с менее значимыми требованиями. Обычно, шкала приоритетности требований включает три-пять ступеней. Матрица зависимостей между требованиями позволяет построить наиболее оптимальный календарный график работ по реализации требований (критический путь реализации проекта). Построение матрицы связей требований преследует еще одну цель - обеспечение возможности анализа влияния вносимых изменений на проект.
При анализе и детализации требований основными приемами работы с участниками проекта являются проведение круглых столов, обсуждений, «мозговых штурмов», демонстраций предварительных версий разрабатываемой системы.
Можно дать несколько практических рекомендаций, которые позволят вам сэкономить время и силы в ходе проведения таких мероприятий:.
• Четко очерчивайте круг обсуждаемых на встрече.
• Заранее оцените время, которое потребуется.
• Заранее ознакомьте участников обсуждения с повесткой и расписанием предстоящего мероприятия.
• Не позволяйте одному из участников подавлять остальных, вовремя останавливайте, чтобы остальные могли высказать свою точку зрения на обсуждаемую проблему.
На круглые столы и обсуждения достаточно пригласить лишь представителей групп пользователей и разработчиков, которые непосредственно участвуют в решении обсуждаемых вопросов. На показы промежуточных версий полезно пригласить всех, с одной стороны это позволяет пользователям увидеть и «пощупать» систему, а разработчикам получить живые отклики. Как показывает практика, оптимальное количество участников круглого стола 4-8.
Важным моментом проведения обсуждений является их документирование и протоколирование. Это позволяет не держать постоянно в голове все важные детали проекта, а так же отследить источники возникновения тех или иных требований. Довольно часто представители пользователей боятся подписывать протоколы обсуждений. Страх связан с ожиданием каких-либо карательных мер. Следует объяснить пользователям, что цель получения их подписи под протоколом не в том, чтобы потом наказать их, а всего лишь в том, чтобы убедиться, что между участниками обсуждения достигнуто взаимопонимание и выработано совместное решение. Еще раз хочу обратить ваше внимание на чрезвычайную важность протоколирования обсуждений.