《可用性工程》阅读笔记
这本由可用性工程界的大牛Jakob Nielsen1993年写的书,在现在看来丝毫不觉得过时,虽然比较理论,看起来也枯燥,但是真正认真看了,还是有不少收获的,尤其是关于可用性测试的一些理念完全实用,而且也是当今实际的可用性设计中常用的方法。书中关于可用性的方法介绍的很全面很细致,参考文献很多,相当于对当时的可用性研究做了细致的总结吧,所以内容质量还是很高的。此书居然到2004年才有中文版,也可以看出国内的可用性工程设计领域开始的还是比较晚的,还要不断努力前进。此书中理论点很多,我也只是对其中的一些作了摘录,不过还是希望以后能够把此书作为常用的参考书,多翻翻,必有大益。作为可用性设计、用户体验设计领域相关的人员建议将此书作为基础理论通读几遍,以加深认识。
关于可用性的警句:
- 不能凭想象和猜测
- 用户总是对的
- 用户并不总是对的
- 用户不是设计人员
- 设计人员不是用户
- 副总裁不是用户
- 少就是多
- 细节是重要的
- 帮助并不能帮助
基本的可用性原理:
- 简单自然的对话——对话中不包含无关或者大多数情况不需要的信息,所有信息都应当以自然和合乎逻辑的次序出现
- 采用用户的语言——使用用户熟悉的词汇和概念,不使用面向系统的术语来表达
- 将用户的记忆负担减到最小——对于系统使用的指令应当在需要时是可见的或者容易获得的
- 一致性——不应当让用户为不同的词语、状态和动作是否同一个意思而感到迷惑
- 反馈——系统应当在合理的时间内,通过适当的反馈信息让用户知道系统正在做什么
- 清晰的退出路径——用户误选了系统功能时,有清晰标明的“紧急出口”来退出所不希望的状态
- 快捷方式——可以加快熟练用户的交互操作
- 良好的出错信息——应当用通俗的语言来表达,而不是代码,准确指出问题,并给出建设性的解决办法
- 避免出错——精心设计,尽量防止问题的发生
- 帮助与文档——应当容易查找,围绕用户的任务给出具体步骤,篇幅不要太长
可用性的定义:
- 可学习性(learnability)——系统应当然容易学习,使用户在短时间内开始用系统做某些事情
- 效率(efficiency)——系统的使用应当高效,当用户学会使用系统之后,可能具有高的生产力水平
- 可记忆性(memorability)——非频繁使用的用户,在间隔一段时间未使用之后,依然能够使用系统,而不用重新学习
- 出错(errors)——系统具有低的出错率,出错之后也能够迅速恢复,必须能够防止灾难性事故的发生
- 满意度(satisfaction)——系统使用起来让人愉快,主观上感到满意,喜欢使用系统
用户立方体:
用户立方体由三个区分用户经验的主要方面构成:对系统的经验、对计算机的一般经验、对任务领域的经验。如下图所示。
可用性工程的生命周期模型中包括的主要阶段:
- 了解用户
- 个体用户特征
- 用户当前的任务和需要的任务
- 功能性分析
- 用户及其工作的演变
-
- 竞争性分析
- 确立可用性目标
- 经济影响分析
-
- 并行设计
- 参与性设计
- 整体界面的协同设计
- 指南应用和经验性分析
- 原型
- 实验性测试
- 反复设计
- 捕捉原型设计
-
- 从现场使用中搜集反馈
整个生命周期模型包含的内容很多,细节的介绍就更多了。关于此部分的内容是贯穿全书的主线,具体可参阅书籍仔细查阅。这里只简单介绍一下关于平行设计和参与型设计的内容。
并行设计
在确定某个设计方案之前,由几个不同的设计人员进行初步的设计,对几个不同的方案进行一番探索,然后再对所确定的设计方案做进一步的开发,开展更细致的可用性活动。通常,可以由3-4名设计人员来进行并行设计,去开发多个不同的设计方案。
在进行并行设计时,重要的是要让设计人员独立进行设计,以产生尽可能大的多样性。
多样化并行设计
并行设计的一种变形,让不同的设计人员侧重于不同的设计问题。通过明确每个设计人员的设计方向,可以把每一种方案推向极致。
参与型设计
通过设计人员与用户的定期会议,让用户参与设计过程。设计人员不应当只凭猜测,而应当与一些用户代表保持沟通,以了解用户日常工作中所面领的问题。
垂直原型
通过减少原型中的功能数量的方法所产生原型。它是一个狭窄的系统,包含了某些完整的功能,但只是少数几个所选择的功能。垂直原型只用来测试系统中有限的一部分,但能用真实的用户任务在逼真的情况下进行有深度的测试。
水平原型
拥有完整系统的整个用户界面,却没有底层的功能的原型。它不能执行真实任务的界面仿真。在可视图文系统中,可以执行导航和搜索命令,但不能得到任何真实的信息。
出错信息应遵循的四个原则:
- 用清晰的语言来表达,而不要用难懂的代码
- 语言应当精炼而准确,而不是空泛而模糊的
- 对用户解决问题有建设性帮助
- 应当友好,而不要责备或者威胁用户
可用性实验室
如下是一个典型的可用性实验室的平面图,图中详细标注了实验室的规划和使用方法,对于参考和建设可用性实验室的人员有很好的参考意义。此图来至书中截图,欲了解详情请参阅书中相关部分。
用户间测试与用户内测试
用户间测试(between-subject testing)在不同的系统测试中使用不同的测试用户,每个用户只参与一个测试过程,但需要为每一种不同的测试条件准备数量众多的测试用户,以抵消各组测试用户之间的随机差异。
用户内测试(within-subject testing)让所有的测试用户使用所有被测试的系统,可以自动抵消个体差异。但是,用户第一次使用过系统之后再去使用其他系统就不能算是新手用户了,因此可以采用分组测试的策略。
可用性测试的四个阶段:
- 准备
- 介绍
- 测试
- 事后交流
用户测试过程中要遵循的准则:
- 测试之前
- 在用户到来之前准备好所有东西
- 强调测试的对象是系统而非用户
- 告知用户软件是新的,没有被测试过,可能会存在一些问题
- 让用户知道他们可以随时停止测试
- 解释所有的录音录像设备、键盘敲击记录程序或其他监控设备的用途
- 告诉用户测试结果将会完全保密
- 在开始之前回答用户提出的所有问题
- 测试过程中
- 让用户尽早体验到成功
- 一次给用户一个测试任务
- 在测试房间内保持轻松的气氛,提供咖啡或者中间休息时间
- 避免干扰:关上房门并贴出告示。关掉电话
- 不要以任何方式表现出用户正在犯错误或者用户操作太慢
- 测试观察人员数量要保持最少
- 不允许用户的上司来观看测试
- 如果测试令人不愉快,在必要时可以让实验人员停止测试
- 测试之后
- 向用户说明是他们帮助发现了要改进的地方
- 千万不能以可以区分出具体用户的方式来报告测试结果
- 只有在用户同意的情况下才能在可用性小组之外公开录像带
最后,将书中的可用性测试方法的汇总表截图在此,供参阅。具体详细介绍可仔细阅读书中相关章节。