细节决定交互设计的成败
分類: 图书,计算机/网络,行业软件及应用,
作者: 张亮 编著
出 版 社: 电子工业出版社
出版时间: 2009-3-1字数:版次: 1页数: 390印刷时间:开本: 16开印次:纸张:I S B N : 9787121082320包装: 平装编辑推荐
本书依据作者丰富的实践经验,以生动活泼的形式向你讲述交互设计的如下重要问题:
如何使你设计的界面让用户一看就懂,一学就会;
怎样设计界面,才能使用户在使用时不容易出错;
界面对于用户操作的响应时间应当多快,才能让用户感到满意;
交互设计软件的哪些功能应当被自动化;
怎样的界面设计,才能使用户事半功倍、高效率地完成任务。
内容简介
要想快速提高软件界面的可用性和用户使用体验,并不一定需要全面和系统地学习人机交互理论或认知心理学等的知识。实际上,通过掌握一些对于这些方面的常见问题的解决方法,以及注意细节的设计,你就能够快速而有效地实现以上目标。
本书就是这样一本非常实用的有关软件界面的交互设计和可用性设计方面知识的书籍,通过采用一问一答的形式,你将会有针对性地学习到一些能够很快应用在自己软件开发工作中的细节知识和诀窍。例如,如何减轻用户的等待感,如何预防和减少用户的使用错误等。另外,你会发现阅读本书时会非常轻松和愉悦;这是由于本书写作上的两个特点:第一,采用较多日常生活中的例子来做比喻;第二,大量列举了一些实际软件的界面示例和屏幕截图。这些手法都使得读者能够更快、更好地提高交互设计的水平。
本书适合于软件开发、测试人员及管理人员,计算机软件专业的师生,以及对于交互设计、可用性设计或用户体验设计感兴趣的其他领域的设计人员阅读。
目录
第1篇 易学易用篇
第1章 为什么要提高软件的易学性和易用性
第2章 如何使界面让用户“一看就懂”
2.1 采用比拟手法
2.1.1 比拟手法使用实例
2.1.2 使用比拟手法的局限性
2.1.3 使用比拟手法时应注意的问题
2.1.4 比拟手法小结
2.2 模型匹配原则
2.2.1 心理模型、实现模型和系统模型
2.2.2 软件产品中的系统模型和心理模型的匹配问题
2.2.3 从编程语言的发展来理解系统模型和心理模型的匹配原则
2.3 利用预设用途设计出能够表明其用法的界面
2.3.1 如何让用户知道当前可以用键盘输入文字
2.3.2 如何让用户知道某个区域是可以用鼠标单击的
2.3.3 如何让用户知道某个区域可以被拖拽
2.3.4 如何让用户看出应当采用鼠标双击操作
2.3.5 如何让用户看出应当使用鼠标滚轮操作
2.3.6 被动式预设用途
2.3.7 主动式预设用途表示法和被动式预设用途表示法的比较
2.4 一致性
2.5 自然匹配
2.5.1 操作控件的位置和它的作用之间的对应关系
2.5.2 操作控件的形状和它的作用之间的对应关系
2.5.3 操作控件的操作方式和它的作用之间的对应关系
2.5.4 操作空间的维度和结果状态改变的维度不符
2.6 关于比拟、预设用途以及一致性设计的深入讨论
第3章 如何使得软件“一学就会”
3.1 直接操控
3.2 如何帮助用户找到功能在哪里
3.2.1 就近原则
3.2.2 以对称的方法进行对称的操作
3.2.3 对功能进行恰当的分类和组织
3.2.4 让用户能够从界面上看到软件所提供的功能
第4章 如何帮助用户探索和尝试
4.1 把所有的功能和操作尽可能列在菜单系统中
4.2 让用户在执行某个操作前知道它的效果
4.3 让用户可以撤销动作
4.4 让用户可以把状态恢复到初始值
4.5 在执行具有破坏性的操作前要求用户确认
第5章 如何设计帮助系统
5.1 帮助系统的必要性
5.2 用户会在哪些情况下需要帮助信息
5.3 帮助系统应当提供哪些内容
5.3.1 入门指南或学习指南
5.3.2 操作指南或使用指南
5.3.3 故障排除
5.3.4 参考手册
5.3.5 术语解释
5.3.6 帮助系统中几个部分的对比
5.4 帮助系统中表达方式的选择
5.5 采用具体的例子帮助用户理解
5.6 帮助介质的选择:电子版还是书籍
第6章 如何设计一个优秀的向导式界面(Wizard)
6.1 尽可能展示出用户当前在整个向导过程中的位置
6.2 向导式界面的步骤个数以及每个步骤信息量的设置
6.3 避免显示无用的图片
6.4 在向导结束前,让用户确认输入的内容
第2篇 效率篇
第7章 如何帮助用户高效率地完成任务
7.1 支持批处理操作
7.2 支持宏命令操作
7.3 支持命令行方式
7.4 增加一个抽象层
7.5 提高常用操作的效率
7.6 赋予用户制造专用工具的能力
第8章 如何使得鼠标操作更高效
8.1 Fitts定律
8 2 Fitts定律在软件界面设计中的应用
8.2.1 缩短当前位置到目标区域的距离
8.2.2 增大目标大小以缩短定位时间
8.3 Fitts定律在Web页面设计中的应用
第9章 哪些功能应当由软件自动执行
9.1 防止用户忘记做某事
9.2 免去用户必须或很可能要执行的操作
9.3 帮助用户执行重复性和机械性的操作,提高用户的使用效率
9.4 免除用户不会使用的操作
9.5 自适应
第10章 如何使界面适应用户的使用习惯
10.1 被动调整策略
10.2 主动自适应调整策略
10.3 主动自适应调整策略的应用范围
10.4 主动自适应调整策略的实现
10.4.1 用户识别
10.4.2 搜集相关数据并据此分析用户的使用特点
10.4.3 对界面进行调整
10.5 主动自适应调整策略的优缺点
10.6 主动自适应调整策略的最新发展方向
10.6.1 根据其他用户的使用行为来主动地进行自适应调整
10.6.2 介于主动自适应和被动调整之间的混合策略
第3篇 错误处理篇
第11章 如何减少用户在使用软件时出现错误
11.1 让用户能有效地看出或知道如何正确操作
11.2 采用限制因素防止用户出现错误
11.3 减少混淆
11.4 利用反馈来让用户看到操作是否正确
11.5 用某种方式提醒用户有可能出错
11.6 降低灵活性
11.7 向用户提供工具,让他们自己设定限制因素以防止误操作
11.8 克服“模式”现象的影响
11.8.1 MSN的登录界面的设计
11.8.2 什么是界面中的模式现象
11.8.3 有害模式和无害模式
11.8.4 模式产生的根源及在产品设计中如何处理
第12章 如何设计出错信息
12.1 不要只告诉用户操作无法完成或操作失败
12.2 不要仅仅给出出错代码,还应当给出该错误
12.2 代码的含义
12.3 不要在出错信息中使用用户无法理解的术语
12.4 错误原因要尽可能明确
12.5 错误信息要具有建设性,要让用户看出怎样才是正确的
12.6 不要给出误导性的出错信息
12.7 向用户提出解决问题的建议
第4篇 交互细节篇
第13章 如何减少用户的等待感
13.1 使用某种反馈机制来让用户看到操作进行的进度和状态
13.2 让用户以渐进方式得到处理结果
13.3 让用户在等待的过程中有事可做,分散其注意力
13.4 减低用户的期望值
第14章 如何克服短时记忆局限性对于界面的影响
14.1 分块
14.2 由软件传送信息,消除用户记忆的必要性
14.3 让用户可以一直在屏幕上看到不容易记住的信息
第15章 如何减少人们在使用软件时的长时记忆负担
15.1 将需要记忆的信息在界面上显示出来,让用户看到
15.2 用识别代替记忆
15.3 利用用户已掌握的知识,不要求用户记忆新的东西
15.4 让计算机帮助用户找到那些难以记忆的内容
15.5 让用户自己帮助自己记忆
15.6 利用规律或规则来减少所需记忆的信息
第16章 如何充分利用屏幕空间来显示更多内容
16.1 自动分时复用,轮流或滚动显示
16.2 仅在鼠标悬停时显示窗口
16.3 利用下拉式控件减少对屏幕的占用
16.4 抽屉式界面
16.5 标签式界面
16.6 去掉毫无意义的图片
16.7 全屏幕显示
第17章 如何吸引用户的注意力
17.1 什么情况下需要吸引用户的注意力
17.2 使用视觉手段吸引用户的注意力
17.2.1 颜色
17.2.2 字体
17.2.3 显示位置
17.2.4 闪烁和动画
17.3 采用声音吸引用户的注意力
17.4 采用振动方式来吸引用户的注意力
第18章 响应时间多长才是合适的
18.1 用户的期望
18.1.1 用户对于产品的熟悉程度
18.1.2 影响忍耐性的其他用户特点
18.1.3 操作的频繁程度和重复性
18.2 产品使用环境的要求
18.3 软件的使用性质
18.4 用户是否等待某个操作的结果来继续进行其他事情
18.5 响应时间对于用户行为的影响
18.6 响应时间的定量分析
18.6.1 0.1秒
18.6.2 1秒
18.6.3 10秒
18.6.4 响应速度越快越好吗
第19章 如何更好和更有效地向用户输出信息
19.1 差异化
19.2 相对表示法
19.2.1 数量的相对表示法
19.2.2 时间的相对表示法
19.2.3 空间的相对表示法
19.3 形象思维与逻辑思维
19.4 根据信息的内在关系,选择恰当的组织形式
19.5 对信息进行适当的排序以方便用户查找
19.6 从多个角度进行显示
第5篇 方法篇
第20章 用户自身及其使用特点如何对界面设计产生影响
20.1 用户在生理和心理上的特点
20.1.1 视力
20.1.2 阅读和理解能力
20.1.3 手眼协调以及肌肉控制的精确度
20.1.4 辨色能力
20.1.5 性格特征和心理偏好
20.2 用户对于产品使用的熟练程度
20.2.1 大部分用户是初级用户
20.2.2 大部分用户是初级到中级用户
20.2.3 大部分用户是中级到高级用户
20.3 用户的领域知识
20.4 用户对于计算机操作的一般性知识
20.5 用户使用的频率
20.6 用户在进行输入操作时,输入信息的真正来源在哪里
20.7 用户使用软件或某个操作的目的是什么
20.8 用户在操作软件时的环境以及输入输出设备方面的限制因素
第21章 如何进行用户研究
21.1 用户访谈
21.2 问卷调查
21.3 观察用户
21.4 体验式研究
21.5 从技术支持人员那里获取用户信息
21.6 网上用户论坛
21.7 收集和研究用户的使用日志
第22章 如何制作原型
22.1 原型设计的作用和目的
22.1.1 交流设计方案
22.1.2 更早更有效地让用户参与进来
22.1.3 原型是对设计方案进行评估和改进的基础
22.1.4 降低开发成本
22.2 如何制作原型
22.2.1 纸面原型
22.2.2 用软件工具绘制静态的界面表示
22.2.3 使用快速应用开发工具来制作原型
22.2.4 使用Web应用开发工具来制作原型
22.2.5 基于Flash技术的原型
22.3 原型的保真度
22.4 如何得到一个好的最初原型
22.5 何时停止原型的改进与迭代过程
22.6 原型的局限性
第23章 如何进行可用性评估
23.1 认知走查(Cognitive Walkthrough)
23.1.1 认知走查前的准备工作
23.1.2 怎样在认知走查中发现可用性问题
23.1.3 认知走查法的局限性
23.2 启发式评估
23.3 可用性测试
23.3.1 招募测试用户
23.3.2 选择测试地点和记录方法
23.3.3 测试前的准备
23.3.4 测试过程
23.3.5 测试结束时的活动
23.3.6 事后的研究和分析
第24章 如何进行创新性的界面设计
24.1 巧妙地利用原先被浪费的空间和时间
24.2 解决矛盾的需求
24.3 使屏幕上原本只用于输出的区域也能接受输入,增强交互性
24.4 组合
24.5 通过去除某些维度上的功能来产生新的产品或使用方法
24.6 从非软件的产品或系统中寻找灵感
参考文献
书摘插图
第1篇 易学易用篇
第1章 为什么要提高软件的易学性和易用性
在汽车被发明并应用之后的最初一段时间里,除了比一般的交通工具快一些之外,实在看不出它还有什么优点。很多的汽车在发动时需要使用摇把,经常把人的胳膊打伤。不仅如此,它还经常会出现各种各样的故障,以至于在成为司机之前,你一定要学会如何修理汽车,否则你一定开不了多远。不过尽管如此,人们还是非常想拥有一辆汽车。毕竟,相比于它给人们所带来的前所未有的好处,那些使用中的不方便之处都是可以忍受的。
而在21世纪的今天,汽车的情况就完全不同了。一般人在经过几十个小时的学习之后都可以正常驾驶。除此之外,除了提供最基本的“快速地把人或货物从一个地点运送到另一个地点”的功能外,今天的汽车还提供了很多可以使人们更加舒适和安全地驾驶的特性,例如自动落下车窗安全锁、自动提示安全带未系好、环境光变暗时自动开启照明灯、自动换档、方向盘转向时的液压助力、照明距离根据车速自动调整,等等。很多这些新的特性已经成了当今汽车的一个必需的配置,因为如果不具备这些特性,消费者是根本不会购买的。
……