Udi Dahan:“扔掉原型系统”

标签: udi dahan 原型 | 发表时间:2012-10-08 19:29 | 作者:
出处:http://pipes.yahoo.com/pipes/pipe.info?_id=10560380f804c7341f042a2b8a03e117

Udi Dahan在他最近的博客“ 构建完即弃之”中提到了软件工程师经常遇到的“鸡和蛋”的问题。一方面,客户并不一定喜欢他们所要的,因此需要和软件工程师密切的沟通;另一方面,在迭代中构建可用于生产环境的解决方案又带来了昂贵的成本。或者就像作者所说的:

你可以在即有产品之上添加实际功能、从更多的挑战中学习、并且在这个过程中完善平台的API和获得更多的能力储备。虽然这些是有价值的,但问题是这样一来,你获得系统需求的速度将变得很慢。

因此,Dahan建议“构建完即弃之”。对于构建这样一个原型系统的工程师来说,不应该使用测试驱动开发(TDD,Test-Driven Development)、领域驱动设计(DDD,Domain-Driven Design)、命令查询的责任分离(CQRS,Command Query Responsibility Segregation)、事件驱动(Event Sourcing)和面向服务的体系结构(SOA,Service-Oriented Architecture)等。创建这个原型系统的构架师至少应该知道系统中最重要的用例,然后开发一个“恰好满足需求”的构架模型。在这个过程中,理解原型系统和产品代码之间的差别是一大挑战。

在博客的最后,Dahan写道:

效果比效率重要。在将油门踩到底之前首先要保证方向是正确的,要试着去接受甚至拥抱那些重复的工作。

Dahan的这篇博客收到了一些读者的评论。

比如,Jonathan Oliver写道:

我完全同意,特别是“效果比效率重要”。事实上,《7 Habits of Highly Effective People》的作者也曾提到:我们总是为了效率而奔波,而这正是许多问题的源头,相反,效果才是我们真正需要的。

Jonathan Atting回复道:

非常棒的一篇博文。最初的原型系统通常是由原型语言完成的。大家看到的不仅是一个需要“扔掉”的原型系统,同时也可以从中获得更多的实质性建议。如果原型系统看起来就像真的一样,那么大多的反馈将集中在GUI上,例如按钮的尺寸和位置等。但是最终,我们将无法获得实际的具有验证性的反馈,直到用户开始使用我们的产品。

Nightwatch认为,原型系统存在一些风险:

恕我直言,这个建议在冒很大的风险——当客户正在为已有的原型而兴奋不已,并开始着手进入下一阶段时,你却立刻喊停,并对客户说:“没有那么快,现在我们得从头开始写代码,4个月后,我们才将实现原型中展现的效果,并开始下一阶段的开发”。这样怎么行得通呢——客户会认为你是在浪费他们的时间,并且付出的努力也前功尽弃。这样以来,你不仅在打消他们的信心,同时给了客户更多时间来改变他们的需求。最后,当你向客户展示产品时,他们需要的可能是另外的东西了。

查看英文原文: Udi Dahan on Throw Away Prototypes


感谢 贾国清对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至 [email protected]。也欢迎大家通过新浪微博( @InfoQ)或者腾讯微博( @InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

相关 [udi dahan 原型] 推荐:

Udi Dahan:“扔掉原型系统”

- - InfoQ cn
Udi Dahan在他最近的博客“ 构建完即弃之”中提到了软件工程师经常遇到的“鸡和蛋”的问题. 一方面,客户并不一定喜欢他们所要的,因此需要和软件工程师密切的沟通;另一方面,在迭代中构建可用于生产环境的解决方案又带来了昂贵的成本. 你可以在即有产品之上添加实际功能、从更多的挑战中学习、并且在这个过程中完善平台的API和获得更多的能力储备.

iPad 3 原型机泄漏

- Dennis Lee - cnBeta.COM
苹果公司的ipad是目前世界上最畅销的平板电脑之一,iPad3是今年大家最期待的设备之一,不过最近大家都在关注iPhone5,iPad3好像被遗忘了,今天jailbreakiphone4u.com网站发布了一张据称是iPad3工程原型机的照片,照片的左下底部有个凸起部分很显眼,不清楚此凸起部分是什么结构.

加速原型设计

- - 腾讯ISUX - 社交用户体验设计 - Better Experience Through Design
在实际使用过程中,由于项目具体阶段、平台特性以及输出物展示对象的不同,并没有哪个工具受到设计师们一致认可,每个都有其各自的优势和缺陷,按照个人经验对比了一下常见的几款. 下面,详细介绍一下每一类软件的优劣. Photoshop 作为设计师的看家技能,理论上可以通过它做出任何图形,但对于交互原型来说制作和改动成本略高,图层和组件的处理上比较死板,软件自身性能和模板库也很受挑战,容易过快进入细节讨论而忘记初衷,并非交互稿首选,当然也有设计师一开始就是朝着高保真 Demo 方向做的,用它最直观.

AXURE在原型设计中的应用

- 超群 - 互联网的那点事
产品原型简单的说就是产品设计成形之前的一个简单框架,对网站来讲,就是将页面模块、元素进行粗放式的排版和布局,深入一些,还会加入一些交互性的元素,使其更加具体、形象和生动. 就我个人而言,目前使用频率最多,最高效,交互效果最好的原型工具是axure. 今天给大家介绍一些我在工作中使用axure的经验.

关于原型设计的一些事

- - IT技术博客大学习
标签:   axure   原型设计.    为了讨论方便,有必要先做一个简单的定义.    这里的原型指的是对最终产品各页面上内容的简单呈现,通常不会设置颜色和字体,也不含图片. 这里的原型,也通常被称作线框图、示意图、蓝图. 在一些极端的情况下,原型图往往可以先被抽象成一个个的模块组合,然后再去细化每个模块中的内容极其展示形式.

拥抱原型面向对象编程

- - 博客 - 伯乐在线
来源: IBM DeveloperWorks. 简介: JavaScript 是最低级的 Web 编程接口,随处可见. 随着 Web 日益成为日常生活的一部分,JavaScript 也开始变得备受关注. JavaScript 是一个经常遭到误解的语言,被认为是一种玩具语言或者一种 “不成熟的 Java™ 语言”.

原型设计:八大指导原则

- - 人人都是产品经理
原型设计没有你想象的那么难. 而且就像其他事情一样,熟能生巧. 但这其中也有陷阱——搞砸原型设计也很容易. 我自己碰到、看到或者听到的大部分错误并不是因为选择了错误的工具或者方法. 对错误的东西进行原型设计. 有效原型设计就是找到平衡并设定期望. 本文会揭示我们开发的有效原型设计八条指导原则. 无论使用什么方式或者工具,这些原则都适用.

JavaScript中的原型和继承

- - 博客园_知识库
   英文原文: Prototypes and Inheritance in JavaScript.   请在此暂时忘记之前学到的面向对象的一切知识.   最近我正在观看  24 Hours of Le Mans ,这是法国流行的一项赛事. 最快的车被称为 Le Mans 原型车. 这些车虽然是由“奥迪”或“标致”这些厂商制造的,可它们并不是你在街上或速公路上所见到的那类汽车.

Mac版迅雷开发中,界面原型首曝!

- Dolphin - 迅雷阳台-晒出新鲜事
  前段时间,伊文在跟同事闲聊时听说有同事凭个人兴趣在公司支持下开发Mac版迅雷,今天伊文找到了负责Mac版迅雷开发的同事HaiBin,向他了解Mac版迅雷目前的进展,Mac版迅雷界面原型也在此首度曝光.   Mac版迅雷起初只有1名开发人员凭着个人兴趣,利用业余时间开发. 后来公司里一位同为果粉的设计师kakee也加入进来,正在为Mac版迅雷设计界面.

传说中的技术贴!iPhone高保真原型探索

- PH囧ENIX - 腾讯CDC
  最近在做iPhone上的项目,交互都是用keynote/ppt直接出的. 相比fw,keynote/ppt够快,并且很容易通过在其中添加链接和动作,快速地生成原型,用来测试和展示.   快速原型传送门,你去或者不去,它就在那里.   ppt/keynote原型之后的展示方式应该不外乎以下两种:.