软件设计——软件冰山下的秘密

萨提亚提出的冰山理论,实际上是一个隐喻,它指一个人的“自我”就像一座冰山一样,我们能看到的只是表面很少的一部分——行为,而更大一部分的内在世界却藏在更深层次,不为人所见,恰如冰山。

如下图。

其实,软件也是一座冰山。

软件的界面和它那些外在的功能,就是软件这座冰山露出海面的部分。而软件更多的设计则不为人所知。

在顾客看来,界面就是产品。——Jeff Raskin, 《人本界面》

比如:

大多数人眼中的Google就是一个文本框和一个结果页面,他们不会想到为了完成搜索任务,在页面背后有网页抓取技术、有页面评级算法,以及分布在世界各地多个数据中心的数十万台服务器。

参与过软件竞标的开发人员也都会有这样的经历:

用户常常会被精美的界面吸引住了全部的目光。如果你的软件界面普普通通,即使功能再强大,性能再优越,也不会被用户所关注。

Joel Spolsky把这种情况叫作冰山的秘密。人们所看到的冰山在海面上的那部分只占它总体积的10%;同样,用户可以看到和触碰到的产品的那部分——用户界面,也只占全部工作的10%。

大多数的用户并不清楚这个秘密。他们往往会用你工作的10%来评判你的产品水平高低。在用户眼里,糟糕的界面就意味着糟糕的产品。

所以,对于软件开发人员来说,界面设计永远不能忽视。除非你的软件不需要参与竞标,你的软件独占某个领域,没有一个竞争者。

在很多实施GJB5000的承担军用软件开发的组织中,忽视界面设计的比比皆是。界面需求分析都是蜻蜓点水,甚至很多软件需求规格当中都不会提及界面需求。就因为GJB438B模板中没有将界面需求单独罗列出来吗?用户会管你的模板有没有要求,只要你的界面糟糕,他的满意度就不会高。

当然,作为软件的设计师,软件开发人员是知道软件冰山的秘密的。软件除了外在美之外,更重要的是好用。

就像乔布斯所说的:

设计不仅仅是看上去的样子,还关乎它如何使用。——史蒂夫·乔布斯

作为了解冰山的秘密的设计师,不仅仅要为了照顾那些不了解或不愿意了解软件设计的用户做好界面设计,更重要的是做好功能、性能的设计,让软件易用、好用。前者可以吸引人的目光,后者可以让人永远记住。

这正是:

软件比做一冰山,界面露出海面上

设计虽然沉海底,不忘二者为一体

参考书目:奔跑吧,程序员:从零开始打造产品、技术和团队,作者:[美]叶夫根尼·布里克曼,译者:吴晓嘉,出版社:人民邮电出版社

(0)

相关推荐