25
Поскольку внесение изменений обходится в геометрической прогрессии дороже,
потому что они обнаруживаются на более поздних этапах разработки, раннее
определение того, что пользователь действительно хочет, может привести к
более быстрому и менее дорогому программному обеспечению.
Улучшенное и расширенное участие пользователей –
прототипирование требует участия пользователей и позволяет им видеть
прототип и взаимодействовать с ним, что позволяет им предоставлять более
качественные и полные отзывы и спецификации. Наличие опытного образца,
рассматриваемого пользователем, предотвращает много проблем, споров и
недоразумений, которые возникают, когда каждая сторона полагает, что другая
сторона понимает, что они сказали. Поскольку пользователи знают проблемную
область лучше, чем кто-либо в команде разработчиков, более активное
взаимодействие может привести к конечному продукту, который имеет более
ощутимое и нематериальное качество. Конечный продукт, скорее всего,
удовлетворит желание пользователя выглядеть, чувствовать и работать.
Недостатки прототипирования – использование или, возможно,
неправильное использование прототипов также может иметь недостатки:
Недостаточный анализ – внимание к ограниченному прототипу
может отвлечь разработчиков от правильного анализа всего проекта. Это может
привести к упущению лучших решений, подготовке неполных спецификаций
или преобразованию ограниченных прототипов в плохо спроектированные
конечные проекты, которые сложно поддерживать. Кроме того, поскольку
прототип ограничен в функциональности, он может не масштабироваться, если
прототип используется в качестве основы для конечного результата, что может
быть не замечено, если разработчики слишком сосредоточены на создании
прототипа в качестве модели.
Смешение у пользователей прототипа и готовой системы –
пользователи могут начать думать, что прототип, предназначенный для
выбрасывания, на самом деле является конечной системой, которую просто
нужно доработать или отполировать. (Они, например, часто не знают об
усилиях, необходимых для добавления функций проверки ошибок и обеспечения
безопасности, которых у прототипа может не быть.) Это может привести к тому,