No.9425 [翻译]开发之前设计先行
[注]发现自己好久没有翻看MSDN Magazine了,昨天打开看到这期有篇关于设计与开发的专题文章《Don't Get Me Started:Development Is Design》,与我最近遇到的一系列问题息息相关,颇有同感,而MSDN的机器翻译越来越让人呢无法忍受,所以抽了点时间在机器的基础上进行了一点点人工干预,阅读感觉可能会好一些,由于功力问题很多地方我都是根据自我理解进行复述的,有什么不准确,有歧义的地方,希望有看客可以不吝赐教。
大多数的开发者或者管理者认为,用户体验(UX)不过是选择使用的颜色、字体或者是按钮的圆角之类的修饰,并不是那么重要。而窗口的圆角或者柔美的动画并不是用户体验(UX)的关键部分。我的同事软件传奇人物贝尔·霍利斯(Billy Hollis)称其为“装饰,而不是设计”。
整个程序的用户体验(UX)包含:其工作流,功能集以及所需要的输入的体验。程序的用户体验不是那些手工艺品专家将某些绚丽的内容添加到产品说明书里面。
用户体验会在起到装饰作用的同时决定这个程序的成功与失败。把你的程序想象成一件家具,例如一张桌子。而装饰则是这个桌子光洁的表面,如果说开发者错误的选择了糟糕的材料,即使是世界上最好的设计也会无法满足用户基本的需求。如果你的用户想要一个自然风格装修的客厅,选择木制材料进行修造将会让客户更加满意。而经常需要进行日常消毒的餐厅或厨房使用金属会更好一些。了解了这些之后,你会觉得单纯给用户一把椅子或一张桌子就可以解决他们的问题就可以了吗?
下面的这个示例就会演示怎么突破用户体验的限制来决策软件开发。我也在软件主题演讲中使用了它。
我在去瑞典讲学时浏览Google网站,它的服务器自动监测到我当前的国家/地区以及其应当使用的语言,如果图1所显示的瑞典语界面。通常情况下,对于大多数用户而且这样是正确的,偶尔会发现像我这样的特殊情况,也只需要在右下角进行一次单击就可以永久修复(使用永久型Cookie)问题了。而另外一个例子,在浏览UPS.com的时候如果你必须点击一个大约有30多个国家的列表来选择瑞典,而且它不会记住你的选择,在下一次访问的时候,你需要再次进行上面操作。这样浪费了客户的时间,也浪费了很多流量的成本。
UPS的设计师会遭到来自那些不能自动被检测到的国家用户的谴责。(这样的检测工作是非常容易做到的,只是一个简单的静态列表,每天更新一次,很容易)。他们要不就是蔑视他们的工资,要不就是故意选择浪费每位访问他们网站用户的时间。世界上没有任何的装饰可以掩盖这样的错误。
正如我之前所写的那样,Google明白这样做每月会节约数十亿美元的流量费用。其自动国家/地区检测,自动搜索建议,并自动获取搜索结构结合在一起,然后来解决用户的问题;付出最少的操作,在最短的时间内获得正确的结果。即使是世界上最糟糕的界面也不很难破坏这个网站。
偶尔,谷歌也会加入一些奇思妙想的标志。最近我看到过一个吉他,一个卓别林恶搞的视频,例如图1所示的月食。但是,Google从来没有让这些装饰妨碍它的功能,而且永远不打算做这样的改变。将它称为“Google Doodle”以区分其并非Google基本的功能。
客户经常会在产品完成的时候来要求我评价他们产品的功能。那些已经完成的功能、花掉预算以及僵化的设计,这时已经来不及改变什么了。当我看到我的客户坚持自己的意见的时候,我都想撕扯自己的头发。就像一个癌症外壳医生一样,我想尖叫:“你为什么不在一年前来找我,我可以帮助你的”。像外科医生一样,我可以提供任何保守治疗,像我宣扬的那样,在早期进行干预,而不是在痛苦而无法帮助的时候,再去寻求专家的帮助。
诚如我所言,用户体验设计是在项目在早期,而非结束的时候,感谢阅读。现在去做吧,在开始的时候来找我,而不是结束的时候。