以往文章

【未经书面授权,严禁转载本站文章!】本站所有文章都严格执行版权政策,获得作者亲自授权,受法律保护,请大家珍惜我们的努力成果!请阅读我们的转载注意事项

人性的界面 - 2005-01-02


作者 Alan Dix

阅读本文英文原文(翻译:刘松涛)

介绍

我们常常看到这样的新闻报道:飞机坠毁夺走了好几百人的生命,某次工业事故导致几百万英镑的损失,某新发现的系统医疗错误致使数千病患重返医院。几个月后,公布的调查结果如下:操作机器设备时的人为错误导致了这些事故。 人们使用‘人为错误’一词来表达‘操作上的错误’,而经常的情况是,这些‘人为错误’根本就是机器设备的人机界面设计或安装上本身固有的问题。低劣的人机界面会导致使用效率降低或者容易发生错误,严重的则会造成财产和生命损失。

反过来呢,好的人机界面设计或分析则可以节省资金。几年前,美国的一家电话公司NYNEX打算给电话接线人员安装一套全新的计算机系统。安装前,他们对接线员在处理电话时,接线员的认知过程和操作过程做了详细的分析。结果发现,新系统不仅不能加快操作速度,反而花费的时间比以前还长。这样该公司就毅然放弃安装这套新系统的计划,结果节省了数百万美元的资金。

当然不是每次这样的分析都能带来如此的好处。电话接线员的工作具有极强的重复性,即使是一点小的操作流程上的改动也会造成巨大的财务影响;所以对于这种一次性投入的项目,必须采用尽可能节约资金的办法。用户界面设计中能够采用的技术很多很广泛,在各类学科中,或多或少都有一些专业知识可以恰如其分地应用到界面设计中,并且成本不多。本文将试图让读者感受一下设计优良用户界面的一些问题。我不打算面面俱到,但会阐述一些主要方面。

本文主要侧重于从事界面设计的读者,但是我也希望对您在选购产品或评测产品时有所帮助。有一点要注意,几个不同设备放在一起来用的时候,就立即给操作者合并出一个新的界面。类似地,当您分配任务时,也立即给出每个操作员一个界面。如果两台机器差不多,只不过操作界面上稍微有些不一样,如果把这两台机器都分配给一个工人的时候,可能就会带来潜在的问题。即使你本身就从事过界面设计工作,可能也完全意识不到问题的存在!

怎样才算好的界面?

这个问题直接回答起来比较难,但我们可以找出一些答案来。一个好的界面必须能够帮助操作者:

  1. 以可接受的速度和精力达到其目的(而且是必须达到其目的);
  2. 在可接受的出错程度内精确地达到目的。

第一个目标要求我们必须明确要完成什么任务,第二个目标需要我们理解错误发生的方式。这两个目标都要求设计者掌握一定的关于人思维方式和身体动作方式的知识。除了这两个目标之外,界面还得能够在可接受的时间内被使用者掌握,应该在合算的成本下产出效益,而且用起来还应该让人觉得满意。注意这里重复地使用了‘可接受的’一词。因为实际上很难满足所有这么多目标,不同的情形下,还得考虑不同的折中方案。比如,在核电站里‘精确’无疑是最重要的,但是在没有那么关键的领域,设置多重的防错机制一般都会使效率降低。类似的,对新手来说比较容易上手使用的系统,对于老手来说可能使用效率不高;的确,要设计出即适合新手和又适合老手的界面是个持久的挑战。

为何多数界面都设计得不好?

很多界面设计得都不好,造成这种尴尬境地的原因之一是,多数界面在整个产品的设计流程中处于边缘地带。设计界面常常被认为是最后才考虑的事。这个时候,即使有人因(human factor)专家参加设计也为时过晚:因为所有重要决定已经定型,剩下要做的,一般只是控制台的布局和按钮颜色的选择等等。可是无法使用的系统显然就是没用的废物。用户界面应该不仅是系统的表面,而在贯穿整个设计的过程中都要考虑的。例如,对系统要执行的任务的早期考虑不仅影响到界面本身,而且进而会影响系统中要安装什么样的传感器。

还有一个常见情况是,很多被指派来设计界面的人都没有经过训练、也不了解界面设计的专业知识。这对于一项设计中的机械或电子零件来说可能是不可思议的。更耸人听闻的事,绝大多数计算机专业的毕业生,在就读期间从未考虑过他们将要设计的系统的使用者;我们也可以推测,工程专业的毕业生的情况也差不多。知道这些之后,报纸头条如果这样报道的话就不足为奇了!

错误经常发生

人会犯错误,这成了某些事故调查报告里的借口。其实人会犯错误本身不是人的问题,而是人的本性。 人不可能一辈子不犯任何错误,我们经常会有些疏忽、犯些小过失、出些错误。一根混凝土房梁折断,于是房屋倒塌。新闻标题就会写‘混凝土房梁问题导致…’。的确是房梁的问题吗?不!如果房梁超过承重范围,再好的房梁也会折断,这是房梁的本性,所以建筑师和工程师应该有责任保证房梁的承重在安全范围内。类似的,人非圣贤,孰能无过,人会犯错误也是人的本性。所以系统的设计就应该尽可能的降低错误的发生率,并尽可能减少错误发生而产生的负面结果。

经常还会有这样的情况,一个界面的某一地方设计的晦涩不清楚,责任驱使下,操作手册上就会增加一行字来说明这个地方。和混凝土房梁相比,人有非常好的适应性,人可以变得‘更强’,然而好的训练和文档(当然这些也是很必要的)不是包治百病的万能药。人在有压力的时候,晦涩难懂或不完整的界面就会导致错误的发生。第二次世界大战期间,英国的喷火式战斗机采用了一个全新设计的驾驶员座舱。飞行员接受了训练,并在训练中熟悉地掌握了这个新座舱。可是难以理解的是,在和德军空战的时候,很多飞行员却纷纷弹射跳伞。原来这个新设计的座舱里,航炮和座椅弹射的按钮互换了位置。在激烈的空战时,由于旧的习惯型条件反射,飞行员按了弹射的按钮被弹射出来。这的确是人的错误,但不是飞行员的错误,而是设计者的错误。

快速解决的方法

和对待系统其他部分的设计一样,界面的设计上,您也必须得多花时间和金钱。从这个角度上来说,没有快速解决的办法。可是,下面介绍的一些简单步骤却可以带来极大的改善。

考虑‘使用者’

各类界面设计的方法里,大概90%的价值在于,强调设计者要记住日后是有人要用这个正在建造的系统,而使用者往往都不是设计者本人。

试用一下

当然了,很多设计者在设计出来系统以后,他们都会觉得很好用并且用起来很舒服;可是如果别人用起来有问题,设计者就觉得很不可理解。其实只要让人是参与试用一下早期版本的界面(在设计者不给过多提示的前提下)就极其有价值。专业的可用性实验室一般还会配备有录像设备、单向镜?、和其他复杂的监视系统;一般情况下,有一支笔、一个本子、和一个家用摄像机就足够解决很多问题了。

用户参与

有可能的话,最好让使用者参与到设计过程中来。他们掌握很关键的信息,可以很快地发现设计缺陷。曾经有一个自动注射器被研发出来,其原型(prototype)被送到医院让医护人员试用。很快人们发现了界面上有一个潜在非常严重的缺陷。剂量是通过数字小键盘按键输入的,这样只要一个意外的按键动作就可能导致剂量相差至少十倍。最后的产品修改了数字输入方式,每位数字的输入由加减按钮完成(见图一)。

图一、自动注射器,设定要注射的剂量为1372。

图一:自动注射器,设定要注射的剂量为1372。 图中展示了设计更改前后,在有一次击键误操作时的效果。

重复

人本身很复杂,所以很难一次就做到尽善尽美。编程序设计界面可以是一件困难重重、非常耗时的事情。所以,作出来的结果就很珍贵,建造者也会极力辩护其作品,并尽可能少做修改。然而,早期的原型(prototype)相比之下就没有那么珍贵了,就算扔掉也不那么心疼,这一点很重要。而且让人高兴的是,目前有很多界面建造工具可以辅助这一过程。比如,在苹果的Macintosh上有HyperCard,在PC上有Visual Basic可以快速建造实物模型(mock-up)。而作视觉和布局界面上决定时,我们还可以使用纸制设计和简单模型。

IBM曾为巴塞罗那奥运会提供了计算机设备和信息亭。住在奥运村的数千人每天将会使用这些信息亭,而这些人之前都不可能专门去学习怎么使用(制作包含好几百种文字的使用指南不太现实)。设计过程中,IBM的工程师修建了一系列的实物大小的模型,模型外表也和实物一样,只是里面没有电子控制部件。他们把这些信息亭放在IBM实验室的公共走廊里,并鼓励来往经过的人去尝试使用。尽管这些人不是‘典型的奥运村居民’,但至少他们也不是研发小组的成员。尽管有些粗糙,这些快速制作的原型还是促成了设计中频繁不断的改动。在这一项目中,用户界面方面的投入还是比较大的(不是快速解决的方法!),但是这些方法的应用,整体上还是降低了项目的预算。

用户界面方面的投入还是比较大的(不是快速解决的方法!),但是这些方法的应用,整体上还是降低了项目的预算。


目前有很多关于文字可读性(readability)的知识,包括书写印刷在纸上的和电脑屏幕上的文字(text)。在文中引用大写字母就是一个很好的例子。WORDS WRITTEN IN BLOCK CAPITALS (大写字母写出来的文字)读起来要比小写字母化的时间长。这个主要是因为我们都是看字的形状来辨别意思,这也是教儿童识字时用的‘看形读字’方法背后的原则。因而很多的界面设计指导里都有这样的警告。尽管小写字母可读性比较强,但是单个的字和没有意义的字写成大写反而会更清晰。比如,我们写飞机航班号都会写成‘BA793’而非‘ba793’。这在定义按键时也尤其重要,比如‘按Q字母退出’,这是因为键盘上的按键都是用大写字母标示的。

框一:纯文本

如何正确地开展设计

在重要项目里,我们应该使用各类不同的人因知识和界面设计方法。我们一起快速地看以下三个方面。

了解使用者

人的体力、洞察力、和脑力都是有限的。关于这些,有些是常识,有些是同过心理学实验或应用实验发现的。有个读HCI专业的硕士最近走访了一家当地的软件公司,她参观了一些该公司设计的系统之后,发现这些系统中所有显示的信息都使用了大写字母。尽管她还没有读完所有的HCI课程,但是她也了解到大写字母比小写字母要难于识别、阅读起来较慢(见框一)。这家公司立即意识到她提出的建议很有价值,然而想这样勇于接受建议的情况显然并不普遍。关于人视觉系统的知识非常多,在实际设计工作中应当牢记心头。另一个例子是和肉眼能看清细节的最小分辨率有关,我们的分辨率会随着目标到目光聚焦点的距离下降(见图二)。这就限制了在眼睛不动时我们所能看到范围的大小。Fitts定律(Fitts’ law)是又是一个例子。Fitts定律说的是移动点或者手指到达目标的时间和移动距离的对数成正比。

图二:视觉差异会随着距离增加成反比。

图二:视觉差异会随着距离增加成反比。我们眼睛不动盯着看中间那个点的时候, 左半边的字母基本上一样清晰可读,而右半边的字母则都相对比较模糊难读。

我们对人类如何思考了解的还很少,但还是有些简单的事实对设计有直接的影响。下面举个人的‘关闭状态’(closure)的例子。这个例子说的是,我们作完一件事情后都会有‘完成了’的感觉。这时候,我们的大脑里就会闪现出一个短期记忆状态,驱使我们去做下一件事。早期的自动取款机是先给顾客钱,之后再给顾客银行卡。顾客一旦拿到钱就达到‘关闭状态’了,随之就会忘记拿走卡。现在的自动取款机都设计成先还卡了!您会很高兴,因为不必非得成为心理学专家才能设计优质的界面。我们只要掌握一些类似上述例子的知识,再加上一些常识,就足够应对多数情况了。

调查使用情景(Context)

掌握了使用者一般的心理特性后,我们还得了解什么样的人将要使用你设计的系统。比如,车间工人的键盘输入技术一般都不太好。我们还得仔细观察使用者使用系统时,发生的一项一项具体的任务。有很多种方法来调查使用者需要如何学习、如何操作来完成一件任务。有些方法叫做‘任务分析法’(task analysis method)。图三是一个层次任务分析法(hierarchical task analysis—HTA),这种方法主要是把高级别的任务(比如烧开水)向下细分成许多较低级别的任务(比如把水壶灌满水)。有时候,某些任务可能会涉及到多个系统,涉及到自动操作和人工干预的操作。有些别的形式的任务分析方法比较关注要完成一件任务需要掌握的知识。一个在控制分组中使用的任务分析的例子是:做同一件任务常用的控制可以放在一起。

图三:煮茶的层次任务分析

图三:煮茶的层次任务分析(源自参考文献[1])

了解操作人员之间的协同工作也很重要。一项对伦敦地铁控制室的仔细研究发现,控制人员之间如何无意识地在相互行为中解释精细的标志:一个控制人员将要靠近控制台的某一特定部件时,仅凭这点,另一个控制人员就可能在被指示之前准备做一些操作了。重新设计或安装新设备就可能解决掉不妥当的工作习惯。

界面分析

一个界面里最明显的方面可能就是控制台或者屏幕的外表了。这方面的设计可以在前述的使用者分析和任务分析方法的指导下,加上一些一般性规则来进行。图四是列举数字排列的一般性规则。

  532.56       627.865

179.3 1.005763 256.317 382.583 15 2502.56 73.948 432.935 1035 2.0175 3.142 652.87 497.6256 56.34
图四:对其和布局很重要:请找出每列中最大的数字。

要记住,漂亮的界面不见得是好界面。理想的界面,和别的优秀设计一样,在美学上也应该魅力十足。好的图形设计和愉悦的界面可以增加使用者的满意度,进而可以提高生产力。然而,有的时候实用和美观可能使矛盾的。比如,一个工业用控制台可以有多个独立的子系统控制台合并组成,有些子控制台由不同的设计组设计,有些则是购买来的。结果外观不一致,看起来就很乱。更有可能的是,这些不一致的界面会导致问题发生。比如,可能会有不同样式的电话机数字键盘和计算器数字键盘放在一起混合使用。在人有压力的状态下,交替使用时,就很容易按错键。反过来呢,控制的多样性也可以帮助操作员识别哪些控制方式对应哪些子系统,这时,任何的再设计都应当保留这一优点。

我们还得注意屏幕显示的顺序,以及每一个屏幕相应调用的操作。可以使用不同的对话描述注解来记录这个顺序。比如,图五中,显示了一个只有一个按钮的数字手表在不同状态下切换的方式。我们可以通过分析类似的图示,并检验界面的各类属性。比如,我们可以找到‘黑洞’动作,‘黑洞’动作是导致进入到某界面中很难出来的动作。我们还可以发现,一些具有潜在危害的操作动作执行起来的难易程度。有时候,在频繁操作顺序上的小的疏忽可能酿成危险。

图五:数字手表的状态转变

图五:数字手表的状态转变(源自参考文献[1])

工业界面

过去的十几年间,办公系统的用户界面变化非常大。需要用心把办公系统术语转换成工业领域的术语。办公室的信息通常都是文本的,并且变化不大,然而工业界面则需要多种不同的数字显示等,每种不同的显示对应不同的环境。此外,环境因素可能还会制约着特定的交互方式。因此,工业界面中确有很多办公室里不曾遇到的设计问题。

玻璃界面vs. 转盘和旋钮

传统的机器界面都由转盘和旋钮组成,它们直接通过管子和电线与系统相连。随着时间的推移,部分控制或所有的控制都被玻璃界面—也就是计算机屏幕取代,人们通过计算机屏幕来监控设备。这两种界面会有些类似的问题,但是玻璃界面确有其独特的优缺点。对于复杂的系统而言,玻璃界面可能又便宜又灵活,可以对相同的信息以不同的形式显示(图六)。比如,一个数值即能以精确的数字显示,也能以图表的形式显示。此外,同一个信息还可以在多个屏幕中显示。然而,有些信息没有被分配到物理空间上,因此环境中重要的信息可能会缺失—比如在复杂的菜单系统里,我们很容易迷失。还有,如果屏幕分辨率不高的话,一个转盘的显示就可能没有真实转盘清楚,在某些情况下可能这两个因素都很重要,比如现代飞机的飞行控制面板

图六:同一信息,多种表达。

图六:同一信息,多种表达。

间接操控

‘直接操控’(direct manipulation)一词主导了办公系统的设计。这个词的意义和使用场合还有争议,但很明确的是,这依赖于对界面变化起主控的使用者。然而,在自治化的工业过程里,直接操控这一模型就不太适合了。在直接操控的系统里,使用者和计算机内的人造世界打交道(比如电子书桌)。

图七:办公系统—直接操控

图七:办公系统—直接操控

相反,工业界面基本上纯粹的操作者和真实世界打交道。这种间接性的影响之一是,界面必须能够提供两个层反馈。第一层,使用者必须能够接收到由界面产生的直接反馈,比如要能接收到对键入或其他动作产生的反馈。其次,使用者的动作也必须能够对被控制的设备产生影响,这个影响是要通过界面来提供的,为此还必须提供足够的监视功能。

图八:间接操控—两种反馈

图八:间接操控—两种反馈

间接操控对于简单的监控任务也会带来一些问题。周期取样会产生延迟,通信延迟,数字处理等延迟都意味着显示在屏幕上的数据或多或少都过期了。如果操作员意识不到这些延迟,对系统状态分析诊断则可能是错误的。若界面显示总结的信息时,各种延迟问题就会混杂起来,这时屏幕显示的数据如果时间基点不一样的话,其结果可能就会令人误解。

了解更多

有几本教科书讲述了界面设计的某些特定领域的知识,有些则涉及更广范。我和他人合写的一本书[1]对目前现有的界面分析和设计方法作了全面的介绍。Hix和Hartson合著的一本书[2]介绍了一个围绕任务分析注解的设计方法—UAN方法(user action notation)。Thimbleby和Norman合著的两本书[5,6]介绍了结合计算机学家和心理学家观点的设计。Monk等人[4]则对如何评测界面提出了一种‘预算’方法。目前还有一系列详细的设计指导方针,包括民用的和军用的(比如:ISO 9241, DIN 66 234, MIL-STD-1472C)。Mayhew所著的一本书[3]囊括了现有最新更新的指导方针和制造样式指南(比如,苹果电脑的Macintosh应用程序的设计指南),可以提供更多的建议。

有几个国家级和国际级的会议上还提供培训课程,比如,年度的英国HCI大会和美国CHI大会。但在选择课程时要注意一下,课程难度有差别,从介绍性的入门课程到比较深入的研究课程都有。另外,很多大学和商业组织也提供短期培训。

总结

坏的设计浪费钱不说,而且可能很危险。在欧盟,设计中可用性的问题已经上升到法律高度:雇主在法律上有义务保证雇员使用的系统有可用的界面。在一些低预算的项目中,即便采用一些简单的方法,结合以人为主导的态度,就可以避免出现界面设计上严重的错误。无论如何,用户界面至少也应该和系统其他部件一样受到相同的重视,并配给相同的资源。这包括,对现有员工的培训或者招募聘用界面设计顾问等。最后要记得,无论是设备上一个小部件还是一个大工厂,不管工程方面多么好,如果使用者没法用,那就是废物。

参考文献

  1. Dix, A., Finlay, J., Abowd, G. and Beale, R., Human-Computer Interaction, Prentice Hall, 1993. (now in second edition, 1998)
  2. Hix. D. and Hartson, H., Developing User Interfaces, Wiley, 1993.
  3. Mayhew, D., Principles and Guidelines in Software and User Interface Design, Prentice Hall, 1992.
  4. Monk, A., Wright, P., Haber, J., and Davenport, L., Improving Your User Interface: A Practical Approach, Prentice Hall, 1993.
  5. Norman, D., The Psychology of Everyday Things, Basic Books, 1988. (Republished as The Design of Everyday Things by Penguin, 1991.)
  6. Thimbleby, H., User Interface Design, Addison-Wesley, 1990.

在他有趣的个人小传中,Alan Dix这样描述自己:

我留着长发、蓄着大胡子,是木匠的儿子(编者注:这句话本来是描述耶稣的)。虽然和耶稣长得差不多,但我没有冒充他的意思。

我起初是个大胡子数学家,在剑桥担任国家农业工程研究所(那里有很多喷漆喷的闪光发亮的拖拉机)的研究专家;后来在坎布里亚郡(Cumbria)议会担任Cobol程序员(那里有不少米黄色和棕色的大型机);1984年,感谢Alvey(英国第五代程序),我又变成了大胡子计算机科学家。在约克大学工作了近十年后,1994年我去了哈德斯菲尔德(Huddersfield,在西约克郡)担任高级讲师,并且在那里我领导者人机交互研究中心—‘hci@hud’,并担任了HCI95大会的主席。另外,我还在斯塔福郡大学(Staffordshire University)的计算机学院担任过两年的副院长(开了很多会议)。目前我是兰卡斯特大学(Lancaster University)计算机教授。我撰写并编辑过一些书,请参看我的网页 (英文),包括一本厚大的人机交互的教科书,和一本人工智能的教科书。

总的来说,我对任何事情都有兴趣!

从Amazon.co.uk购买作者的书籍:

【未经书面授权,严禁转载本站文章!】本站所有文章都严格执行版权政策,获得作者亲自授权,受法律保护,请大家珍惜我们的努力成果!请阅读我们的转载注意事项

已发表的评论

  1. still can not believe how luck i am—could talk with Alan almost every week!


    2008-03-04 19:06

发表评论

名称
E-mail
http://
评论内容
  Textile 帮助

Morae - Usability Testing for Software and Web Sites