BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

记住:你在为谁设计软件?!

| 作者 Deborah Hartmann Preuss 关注 0 他的粉丝 ,译者 胡凯 关注 0 他的粉丝 发布于 2007年4月23日. 估计阅读时间: 3 分钟 | CNUTCon 了解国内外一线大厂50+智能运维最新实践案例。
作为Rolling Thunder Computing的主席和计算机课程的教师,David S. Platt在最近的SD West(软件开发大会)的活动上发表了题为“为什么软件如此糟糕?”的讲演。FTPonline对Platt在讲演中所强调部分着重进行了报道,即:作为软件设计者常犯的错误“忽视用户并按照开发者的喜好进行设计”。
除非你在为少数的极客(骨灰级程序员)写软件,否则请牢记:你的用户不是你……。这个观点很难出现在开发者的头脑中,他们普遍认为他们所欣赏的用户也一定会欣赏……。再强调一次,你的用户不是你。
Platt力劝他的听众在设计软件的过程中要更多地关注用户而不是开发者的需要,这一点听起来再明显不过了,他当场使用了几个小问题来引出他的观点:在场的听众所设计软件的用户并非软件开发者。例如,通过听众举手统计, 在场的大多数人都驾驶手动档汽车,这通常比自动挡要难于掌握,难于使用,但是可以使你更好地操纵汽车。很明显,对于大多的开发者而言,他们认为如果能换来更好的操纵感,花一点代价是值得的。而Platt指出,在美国销售的汽车中只有百分之12到14有手动档!很明显,在汽车设计决策方面他的意见不能代表大多数的用户。
为什么大多数的人不喜欢驾驶手动档的汽车?因为他们所关注的不是驾驶本身。他们所关注是可以到达目的地。

[听众大笑]

这是一个很重要的分别。你认为用户会按照你希望的方式使用软件,但是他们通常并不认同“你”的方式,他们希望你的软件和他们过去用过的软件在可用性上相似,这样他们就无需改变已经熟悉的工作方式。
用户有自己的工作,有需要达到的目标,有需要联系的人,要完成的使命,软件的正常运转仅仅是这个过程的附属品。当它时时出现问题,或者强迫用户改变自然的工作流程时,它就是用户最大的障碍了。最典型的例子是微软Office软件的剪切板功能(最终被从Office中去除了),软件可用性方面很小的缺陷都会引起很大的负面体验。

在开发过程中遵循简单原则是非常重要的,Platt建议我们需要做的是“仅仅让它运转起来”,并且提供了作为开发者需要注意的5点:
  1. 将一个新人放入设计团队中——所谓新人是指完全不懂得编写软件的人。
  2. 在需要的时候,不要顾忌已有的习惯——老套的方法并不一定正确。
  3. 避免愚蠢的功能——所谓愚蠢是指不要让不确定的功能混入那些确定的功能中。
  4. 小心修改你的软件——发现“大多数沉默的人”是如何想的是件困难的事情,在这种情况下,可用性测试可以提供可信的数据来帮助我们作出决策。
  5. 多想想设计方面的决策是否背离了简单原则。
记住——所谓“恰好工作”是从用户的角度思考,开发者并不使用你的软件。
译者简介:胡凯,2006年加入ThoughtWorks,通过在ThoughtWorks多个国家和多个项目的敏捷实践,坚定地站在了敏捷阵营中,目前在进行CruiseControl相关的敏捷开源项目。他和许多敏捷开发者一样活跃在敏捷中国CruiseControl-China社区中。为InfoQ中文站贡献内容,请邮件至china-editorial@infoq.com

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT