交互设计模型与理论
- 预测模型
- GOMS模型
- GOMS全称
- Goals
- Operators
- Methods
- Selection Rules
- 举例
- GOMS方法步骤
- GOMS模型分析
- 击键层次模型
- 操作符
- 使用方法
- 放置M操作符的启发规则
- KLM分析
- KLM应用
- Fitts定律
- 三个指标
- a,b的确定
- 说明
- Fitts定律建议
- Fitts定律应用
- 动态特性建模
- 状态转移网
- 三态模型
- 鼠标的三态模型
- 触摸板的三态模型
预测模型
- 能够预测用户的执行情况,但不需要对用户做实际测试
- 特别适合于无法进行用户测试的情形
- 不同模型关注用户执行的不同方面
GOMS
KLM层次击键模型
Fitts定律
GOMS模型
- 最著名的预测模型,基于人类处理机模型
- 关于人类如何执行认知—动作型任务以及如何与系统交互的理论模型
采用“分而治之”的思想,将一个任务进行多层次的细化
把每个操作的时间相加就可以得到一项任务的时间
GOMS全称
- Goal-目标
用户要达到什么目的 - Operator-操作
任务执行的底层行为,不能分解
为达到目标而使用的认知过程和物理行为
如点击鼠标 - Method-方法
如何完成目标的过程,即对应目标的子目标序列和所需操作
如移动鼠标,输入关键字,点击Go按钮 - Selection rule-选择规则
确定当有多种方法时选择的方法
GOMS认为方法的选择不是随机的
Goals
- 用户要达到的目的
可分不同层次
如“编辑一篇文章” 和“删除一个字符” - 通常是层次化的
高层次目标可分解为若干个低层次目标 - 通常表示为动作-对象序列
如复制文件,创建目录等
Operators
- 用户为了完成任务必须执行的基本动作
- 操作种类:
1)外部操作
用户与系统之间可观测的物理操作
2)心理操作
用户内部行为
不可观测
如假想、猜测等 - 操作时间是上下文无关的
花费的时间与用户正在完成什么样的任务或当前的操作环境没有关系
Methods
- 为实现目标所需要的操作序列
外部 + 心理
如使用鼠标单击输入域,输入关键字,再单击“查找”按钮 - 若用户能够执行一个任务,则表示其拥有该任务的一种方法
目标对应的方法不唯一
Selection Rules
选择规则是用户要遵守的判定规则:
- 以确定在特定环境下所使用的方法
- GOMS中并不认为这是一个随机的选择
- 而是根据特定用户、系统的状态、目标的细节来预测要选择哪种方法。
举例
使用GOMS模型描述在Word中删除文本的过程:
目标:删除Word中的文本
方法1:使用菜单删除文本
- 步骤1:思考,需要选定待删除的文本
- 步骤2:思考,应使用“剪裁”命令
- 步骤3:思考,“剪裁”命令在“编辑”菜单中
- 步骤4:选定待删除文本,执行“剪裁”命令
- 步骤5:达到目标,返回
方法2:使用“删除键”删除文本
- 步骤1:思考,应把光标定位在待删除的第一个字符处
- 步骤2:思考,需要使用“删除Del”键
- 步骤3:定位光标,按“删除”键逐个删除字符
- 步骤4:达到目标,返回
选择规则如下:
1:若需要删除大量文本,则使用鼠标,通过菜单进行删除;
2:若只是删除个别词,则使用“删除键”进行删除
GOMS方法步骤
- 选出最高层的用户目标
- 写出具体的完成目标的方法
即激活子目标 - 写出子目标的方法
递归过程,一直分解到最底层操作时停止
子目标的关系:
- 顺序关系
- 选择关系
GOMS模型分析
优点:
能够容易地对不同的界面或系统进行比较分析
局限性:
- 假设用户完全按一种正确的方式进行人机交互,没有清楚地描述错误处理的过程
- 只针对那些不犯任何错误的专家用户
- 任务之间的关系描述过于简单
- 忽略了用户间的个体差异
击键层次模型
对用户执行情况进行量化预测
仅涉及任务性能的一个方面:时间
用途:
预测无错误情况下专家用户在下列输入前提下完成任务的时间
便于比较不同系统
确定何种方案能最有效地支持特定任务
操作符
使用方法
- 执行时间预测方法
列出操作次序,累加每一项操作的预计时间
T e x e c u t e = T k + T p + T h + T d + T m + T r T_execute=T_k+T_p+T_h+T_d+T_m+T_r Texecute=Tk+Tp+Th+Td+Tm+Tr - 举例
DOS环境下执行“ipconfig”命令:
1)MK[i] K[p] K[c] K[o] K[n] K[f] K[i] K[g] K[回车]
2)简略表达版本:M9K[ipconfig回车]
3) T e x e c u t e T_{execute} Texecute=1.35+9*0.28=3.87s
菜单选择:
H[鼠标]MP【网络连接图标】K[右键]P[修复]K[左键]
T e x e c u t e T_execute Texecute=0.40+1.35+2P+2K=4.35秒
替换文字编辑器中长度为5个字符的单词
1)任务准备 M
2)将手放在鼠标上 H m o u s e H_{mouse} Hmouse
3)将鼠标移到单词 P w o r d P_{word} Pword
4)选择单词 K
5)回到键盘 H k e y b o a r d H_{keyboard} Hkeyboard
6)准备键入 M M M
7)键入新的5字符单词 5 K w o r d K_{word} Kword
放置M操作符的启发规则
KLM分析
- 建模可以给出执行标准任务的时间
- 但没有考虑下面的问题
错误
学习性
功能性
回忆
专注程度
疲劳
可接受性
KLM应用
在交互设计早期阶段为用户性能提供有效、准确的模型
Fitts定律
- 用户访问屏幕组件的时间对于系统的使用效率是至关重要的
- 能够预测使用某种定位设备指向某个目标的时间
- 人机交互中,根据目标大小及至目标的距离,计算指向该目标的时间
可指导设计人员设计按钮的位置、大小和密集程度 - 对图形用户界面设计有明显的意义
- “最健壮并被广泛采用的人类运动模型之一”
三个指标
Fitts定律主要定义了如下三个指标:
- 困难指数ID (Index of Difficulty) =
l
o
g
2
(
2
A
/
W
)
log_{2}^{(2A/W)}
log2(2A/W) (bits)
ID是对任务困难程度的量化,主要与目标宽度和到目标的距离有关。 - 运动时间MT (Movement Time) = a + b*ID (secs)
在ID基础上将完成任务的时间量化 - 性能指数IP (Index of Performance) = ID/MT (bits/sec)
基于MT和ID的关系
也称吞吐量(TP)
注:A表示振幅(与目标的距离),W为目标宽度
MacKenzie对困难指数ID的公式进行了如下改写:
I
D
=
l
o
g
2
(
A
/
W
+
1
)
ID=log_{2}^{(A/W+1)}
ID=log2(A/W+1)
- 更好地符合观察数据
- 精确地模拟了支撑Fitts定律的信息论
- 计算出的任务困难指数总是整数
平均时间MT:
M
T
=
a
+
b
∗
l
o
g
2
A
/
W
+
1
MT=a+b*log_{2}^{A/W+1}
MT=a+b∗log2A/W+1
a,b的确定
- 设计一系列任务,A和W分别取不同的值
- 对每一种条件下的任务
尝试多次
记录每次执行时间
进行统计分析 - 记录准确性
记录选择的x,y坐标,或
错误率,即鼠标落在目标区域外的百分比
说明
- 如果MT的计算单位是秒,则a的测量单位是秒,b的测量单位是秒/比特(ID的测量单位是比特)
- 系数a(截距)和b(斜率)由经验数据确定,且与设备相关
- 对于一般性计算,可使用a=50,b=150(单位是毫秒)
- A和W在距离测量单位上必须一致,但是不需要说明使用的具体单位
Fitts定律建议
- 大目标、小距离具有优势
对选择任务而言,其移动时间随到目标距离的增加而增加,随目标的大小减小而增加 - 屏幕元素应该尽可能多的占据屏幕空间
- 最好的像素是光标所处的像素
- 屏幕元素应尽可能利用屏幕边缘的优势
- 大菜单,如饼型菜单,比其他类型的菜单使用简单
Fitts定律应用
策略一:缩短当前位置到目标区域的距离
策略二:增大目标大小以缩短定位时间
动态特性建模
状态转移网
- 用于描述用户和系统之间的对话
可被用于探讨菜单、图标和工具条等屏幕元素,还可以展示对外围设备的操作
适合表达顺序操作和循环操作 - 状态转移图
最常用的状态转移网的形式
有向图
图中的结点表示系统的各种状态
图中的边表示状态之间可能的转移
状态之间通过转移(用带方向箭头的线段表示)互相连接
转移被事件(转移线段上的标记)触发
伪状态——初始状态和终止状态
1)是STNs的起始和终止
2)可以与系统的其他部分相连接
三态模型
- 帮助设计者为特定交互设计选择合适的I/O设备
- 三态模型能够体现设备间的关键差别
- 用于对指点设备建模
- 将指点设备的操作使用状态转移来表示
- 指点设备状态
无反馈运动(状态0)
跟踪运动(状态1)
拖动运动(状态2)
鼠标的三态模型
- 跟踪状态(1):左键抬起
拖动鼠标跟踪鼠标运动并更新鼠标位置 - 拖动状态(2):左键按下
文件夹在屏幕范围内被拖动
问题:如何获得状态0?
将鼠标拿起(模仿手写笔或光笔)
Buxton(1990)认为鼠标拿起这种状况是未定义的
Mackenzie(2003)为鼠标定义了s0
触摸板的三态模型
- 无反馈状态(0):手指不接触触摸板
系统不跟踪手指运动 - 跟踪状态(1):手指接触触摸板
系统跟踪手指运动 - 在没有其他组件配合的条件下触摸板没有状态2