谁在“低与高保真原型”辩论中获胜? 原型零(P0)应该是最终产品的第一个版本吗?或者应该是P-0总是一次性的?这个行业有什么方法支持?
来自维基百科的优秀文章:Software prototyping
答案 0 :(得分:9)
原型应始终是一次性的 - 原型用于快速证明概念并影响真实产品的设计。因此,许多对于真实产品很重要的事情(经过深思熟虑的架构和设计,可靠性,安全性,可维护性等)都会被淘汰。如果你在构建原型时考虑到这些因素,那么你就不再真正构建原型了。
我对代码直接演变为实际产品的原型的经验表明,最终结果因此而受到影响 - 缺乏真正的体系结构导致许多拼凑在一起的代码必须经常被黑客攻击才能添加新功能。我甚至看到一个案例,原型技术的快速开发所选择的原始技术并不是实际产品的最佳选择,而V2需要完全重写。
答案 1 :(得分:2)
编写原型,然后继续重构,直到它成为产品。 关键是在必要时毫不犹豫地进行重构。
最初很少有人在处理它。由于有太多人在做某事,重构变得更加困难。
答案 2 :(得分:2)
我认为我们这些特殊的战斗已经失去了这种特殊的战斗 - 所谓的“原型”(根据定义应该从头开始重写!!! - )实际上正在“演变”为(通常是半生不熟的“贝塔”)等等。
即使在今天,我也为我的同事巧妙地尝试重新夺回概念而鼓掌,即使这个术语是一场失败的战斗:他正在为证明设置方法概念要开发的小项目(如果这个概念得到证实,转移到软件工程师进行真正的原型设计,然后开发)。
我们的想法是,在我们的部门,我们有许多人(并且实际上并不是所谓的成为! - )软件开发人员,但他们非常聪明,精通计算机,并且每天接触“在战壕中”的现实 - 他们是那些最有可能嗅到某些潜在创新机会的人,这些创新一旦被实施为“生产 - 就会产生真正的影响”准备好“软件项目。销售人员,客户经理,业务分析师,技术经理 - 在我们公司,他们都经常适合这种描述。
但他们不打算用C ++编程,几乎没有Java编程,可能在Python中,但距离“生产”还有几英里 - 事实上他们更有可能在php中提出一个聪明的概念证明, javascript,perl,bash,Excel + VBA,以及各种其他“快速而肮脏”的技术,我们甚至不想梦想关于生产和支持永远! - )
因此,通过将他们的原型称为“概念证明”,我们希望鼓励他们以具体的形式体现他们大胆的概念(模糊的自然语言诽谤和挥动的手最不实用,无论如何都与公司的文化格格不入; - )并且清楚地表明这些项目,如果被提升为软件工程师的目标和优先级之间,必须从头开始编程 - 概念验证充其量只是一个很好的草案/草图规范对于工程师的目标,绝对不是增量丰富,而是从根本上重做! - 。)。
现在说这个想法的效果还为时过早 - 在三个月内问我,当我们评估季度的努力时(现在,我们只是为他们提供一个蓝图,在评估最后季度的部门和公司明智的承诺! - )。
答案 3 :(得分:1)