2.4 谨防不明确的心智模型陷阱
关于计算机,我最喜欢的一点就是它总是能够创造奇迹。它们能将人们都认为不可能的事情变成现实。然而对很多人来说,这也是他们对计算机很有意见的原因。
当你开车时,你可能不理解汽车引擎盖下碳氢化合物发生燃烧时的一系列热力学扩散过程。也许你知道汽车能够开动,是因为气体在发动机气缸内膨胀,导致活塞的时序运动而实现的。但即使你不理解这些内在过程,你仍然可以理解油门和汽车前行之间有直接的关系。当然,大多数界面都没有这么简单,即使是汽车上的界面。如果汽车不能开动,你可以大概判断出它发生了什么问题。你看,你忘了松手刹!这样处理错误后,你就可以继续自由地驾驶了。
显然,我不会让你为汽车建立用户界面模型。然而,有趣的是,虽然汽车的内部构造及活动非常复杂(我们几乎都无法完全理解这种复杂性),我们仍然可以很好地使用它,并在出现问题时及时修正。这是因为让汽车运作的一系列事件已经在我们头脑中形成了心智模型。只有在有燃料、发动机点火、你没有刹车并且踩下油门后汽车才能启动。因为我们有了关于汽车如何启动的模型,所以当它表现得和预期不相符时,我们就能排除故障。
对于我们所创建的模型来说,最重要的就是它们是如何使用的。它们与碳氢化合物的燃烧或横向扭力无关。虽然发动机有严重的故障对于我来说仍然是个黑盒,但我知道我可以打电话给美国汽车协会把我的车拖到修理厂。而这,亲爱的朋友们,正是问题的症结所在:您需要设计让人们从错误中恢复的界面。你作为设计师所面临的问题是用户没有像汽车心智模型那样强健的计算机心智模型。出现问题时,你的用户一定会手足无措的。
那么,我们如何解决这个讨厌的问题呢?让我们从我们所知道的入手。用户必须有一个计算机心智模型;否则他们根本无法使用它们。然而,该心智模型的范围包括用户界面控件,也可能是标志性或者是列表式导航。问题是(计算机与汽车的不同之处在于),与计算机交互是受我们无法控制的使用环境和条件影响的。许多使用情形可能不被用户所理解,或者可能从来没有向用户解释过。汽车工业的历史很悠久,孩子们在学校就学习过它们。在我们第一次学习开车时,我们就已经基本了解汽车是如何操作的了,虽然这一心智模型有点泛泛。但对于计算机来说并不是这种情况。用户在学习使用计算机的基本常识时会倍感受挫,并且常常都会被人嘱咐要记住界面上的某一细节。
让用户的心智模型全线崩溃的例子就是使用网络。对于用户来说,网络可能是计算机上最不友好的环境,但它却是最成功的计算平台。使用网络时,用户可能会遇到很多情境错误,但大部分用户都没有理解和恢复这些错误的心智模型。经我们分析,踩油门无法提速的原因可能有4个,但网页加载失败的原因则可能多达十几个。由于用户缺乏相应的心智模型,因此最好的应对措施是尝试自我诊断错误并对用户进行培训。这两者之间的区别非常重要。虽然告知用户错误并告诉他们接下来该怎么办已经足够了,但当用户再次遇到相同的情况时还是会面临同样的困惑。相反,如果是DNS(域名系统)的问题,就如实告诉用户,并帮助他们了解什么是DNS。也许你需要使用电话簿来类比用户电脑拨号,或者你可能会以更直接的方式传达信息。但不管你怎么做,都不要让你的用户屡屡失败、变得沮丧。相反,应为他们建立了一个终生满意的客户心智模型。