Несколько комментариев:
Прототипирование как подход к разработке программного обеспечения для обеспечения качества производства может быть проблематичным, поскольку сама природа прототипирования может означать, что качество программного обеспечения и дизайна не столь велико. Прототипы не предназначены для хорошего качества по определению.
Если целью является получение некоторой обратной связи от предполагаемого клиента \ пользователя на ранних этапах, часто может быть хорошей идеей не создавать прототипы полных вертикальных срезов (например, UI -> Business -> DB), а работать с UI макеты, которые могут быть использованы для изучения идей с пользователями. Макет является гибким и легко изменяемым, но не полностью функциональным, например, не имеет бизнес-логики или настойчивости. Этот подход позволяет пользователям получить некоторое представление о функциональности и участвовать в процессе проектирования и сбора требований. Будет быстро менять макеты при изменении требований, тем более, что с ним не нужно менять бизнес-логику или код базы данных. Примером инструмента для насмешки интерфейса пользователя является Balsamiq:
http://www.balsamiq.com/
Если одна из общих целей создания прототипа состоит в том, чтобы исследовать и исследовать различные технологические решения, то это может быть сделано отдельно от макетов пользовательского интерфейса и более абстрактным способом, то есть с чисто технологическим исследованием, а не с целью удовлетворения точных потребностей прототип, который может меняться массово. Макеты пользовательского интерфейса могут сильно измениться благодаря обратной связи с пользователем, поэтому проведение технологического исследования в качестве другой деятельности может упростить этот процесс, т. Е. Будет меньше взаимосвязей, поскольку на ранней стадии обнаружения многое изменится, и необходимость постоянно менять «бэкэнд» потому что идеи пользовательского интерфейса развиваются так быстро, что замедлит вас.
С точки зрения ускорения темпов разработки программного обеспечения, используйте сторонние библиотеки. Если вы используете базу данных для постоянства, посмотрите на решения ORM, которые могут значительно сократить объем работы, необходимой для разработки уровня доступа к данным, например, NHibernate. В зависимости от используемой вами технологии пользовательского интерфейса обращайтесь к сторонним библиотекам управления.
В отрасли подход, который за многие годы заменил разработку на основе прототипов, - Agile. Он стремится удовлетворять изменяющиеся потребности пользователей, всегда стремясь предоставить функции, но уделяет особое внимание разработке высококачественного программного обеспечения с помощью таких технологий, как TDD.