人机交互基础教程第6章
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
走棋
S000
外部事件
对弈方走正常结束事件
产生走棋正常结束事件
S001
当前方走正常结束事件
S002
“走棋”目标状态转换
6.1.4 表现模型 表现模型(PM)描述了用户界面的表现形式,由 层次性的交互对象组成。 逻辑组织结构
B Bx By Bz
面板用户界面的图形显示
C Cx Cy Cz
A
B Bx Bz By
条件选择标识符 除了表示动作的符号,UAN模型还包含表示条 件及选择的标识符,主要有以下几种: • while(condition) TASK 当条件condition为 真时,循环执行任务TASK; • if(condition) then TASK 如果条件condition 满足,则执行任务TASK; • iteration A* or A+ 表示迭代操作; • waiting 表示等待,可以等待一个条件满足, 也可以等待任务中的一个操作执行。
单击 按钮 按钮 按钮 按钮 按钮
移动
单击
释放
移动
按钮交互对象行为
6.3.4 交互框架
标题栏 下拉菜单栏 工具栏 树 形 菜 单 栏 最小 最大 关闭 化 化
WorkSpace:工作空间
状态栏
桌面应用框架
下拉菜单示例
工具栏示例
状态栏示例
树形菜单示例
标签页方式工作区示例
6.3.5 MVC模式和基于Struts的实现 MVC把一个应用的输入、处理、输出流程按照 模型 (model)、视图(View)和控制(Controller )的方式进行分离,形成模型层、视图层、控制层 三个层次。
中国象棋
运行
[>
退出
走棋
|||
*打谱
当前方走
>>
对弈方走 加 速
[]
减 速
[]
暂 停
[]
恢 复
拾取棋子
>>
放置棋子
中国象棋LOTOS的图形描述
UAN(User Action Notion) 用户行为标注是一种简单的符号语言,着眼于 用户和界面两个交互实体的描述,主要描述用户的 行为序列以及在执行任务时所用的界面。 UAN模型的标识符主要有两种:用户动作标识 符和条件选择标识符。
用户动作标识符 在UAN的表示模型中有一些常用的已经预定义 的符号,用来表示常见的用户界面的交互动作。如 :
move_mouse(x,y) 移动鼠标至(x,y); release_button(x,y) 在(x,y)位置释放鼠标按钮; hightLight(icon) 使icon高亮显示; de_highlight(icon) 取消icon的高亮显示。
Desktop C Cx Cy Cz A
面板用户界面的数据结构表示
面板用户界面的绘制
面板用户界面的逻辑组织结构
面板内部的事件分发及响应方式 控制面板用户界面交互的核心模块可以看作是 一个事件处理中心,事件处理中心接收并解析用户 动作,然后将结果表现给用户。
Bx Am
By B A An
事件处理中心对事件的响应的实现
客户应用程序 开始
读输入
服务器
设备
过程输入
退出?
结束
事件处理循环
事件注册方式
应用程序 开始 通知者
向通知者注册回调函数
启动通知者
读输入 结束
处理事件
发送给正确的回调函数
否 请求回应
是
事件注册方式处理流程图
6.3.3 交互组件开发包 一般的窗口系统,输入和显示是分离的,许多 语言提供了用于开发交互系统的开发软件包,交互 系统开发软件包在支持窗口管理的基础上增加了另 一种抽象,它把输入和输出的行为结合起来。
S0 运 行 正 常 结 束 事 件
外部事件0
外部事件1
退出正常结束事件 S1 S2 F
最高层目标状态转换
运行 S00 0 外部事件 外部事件 1
走棋正常结束事件
打谱正常结束事件
产生运行正常结束事件
产生运行正常结束事件
S01 打谱正常结束事件 S03
S02
走棋正常结束事件 S04
“运行”目标状态转换
Struts结构
•
暂态关系符号:
Choice:t1 [] t2 [] … [] tn Concurrent(Independent Concurrency):t1 ||| t2 ||| … ||| tn 带信息交换的Concurrent:t1 |[]| t2 |[]| …|[]| tn Disabling:t1 [> t2 Enabling:t1 >> t2 >> …>> tn 带信息交换的Enabling:t1 []>> t2 []>> …[]>> tn Independence:t1 |=| t2
目标 目标就是用户执行任务最终想要得到的结果。 操作 操作是任务分析到最底层时的行为,是用户为 了完成任务所必须执行的基本动作。 方法 方法是描述如何完成目标的过程。一个方法本 质上来说是一个内部算法,用来确定子目标序列及 完成目标所需要的操作。
关闭窗口行为描述实例
选择规则 选择规则是用户要遵守的判定规则,以确定在 特定环境下所使用的方法。当有多个方法可供选择 时,GOMS中并不认为这是一个随机的选择,而是 尽量预测可能会使用哪个方法。
面板间的关系 Jacob Eisenstein创立了两种新的抽象描述来描 述基于面板的用户界面表现模型。
面板关系
面板
并列面板 嵌套面板 依赖面板
父子面板
自由面板
依赖于服务的面板
面板面板
原子面板
自动显现
用户驱动
依赖性面板
面板关系分类
面板种类
界面描述语言一般分为两类:命令式语言 (Imperative Language)和陈述式语言 (Declarative Language)。命令式语言要求编程人 员明确的指定如何执行任务,陈述性语言要求编程 人员只需指定任务要做什么,陈述性语言要比命令 式的语言更为抽象。 下面介绍几种常见的陈述性语言。
•
单用户任务模型 单用户任务模型在CTT中表示为一棵树。
用户使用自动取款机的任务模型
6.1.2 结构模型 形式化语言的描述――产生式规则:
if condition then action 或 condition → action 或 condition:action
一般来说,组成界面描述的产生式规则很多, 规则定义的顺序并不重要,只要与规则中的条件相 匹配,就可以激活相应的动作。产生式规则系统可 以是事件引导的,也可以是状态引导的,或者两者 都有。
下面给出LOTOS模型中定义的基本算符: • T1 ||| T2(交替Interleaving):T1和T2两 个任务相互独立执行,可按任意顺序执行,但永 远不会同步。 • T1 [] T2(选择Choice):需要在T1,T2中 选择一个执行,一旦选择某一个后,必须执行它 直到结束,在这中间另一个再无执行机会。任务 如何来选择,并没有给出一定的形式化描述。
LOTOS(Language Of Temporal Ordering Specification) 时序关系说明语言是一种作为国际标准的形式 描述语言,它提供了一种通用的形式语义,可保证 描述不存在二义性,便于分析和一致性测试理论的 研究。 其基本思想是用一套形式化和严格的表示法来 刻画系统外部可见行为之间的时序关系,系统由一 系列进程组成,两个以上的进程在执行同一个外部 可见的行为时会发生交互,进行数据交换、信息传 递、协调同步等操作。
状态转换网络(State Diagrams)
转换
状态
源状态
目标状态
状态转换网络符号
简单状态转换网络
条件
源状态
动作
目标状态
带条件和动作的状态转换网络
click line1 Line Start CS Arc Curve
curve1
click
line2
dclick
line3 do-polyline
arc1
选择‘ ’ text 主菜单 text 子菜单 弹出
text 子菜单
ESC
Normal Finish
选择‘ paint 弹出paint 子菜单
paint 子菜单
ESC Normal Finish
分层的状态图实例
6.1.3 行为模型和结构模型的转换 一般来说行为模型主要对设计起指导作用,在 此基础上,设计人员再进行结构模型(如状态转换 网络等)的创建,这个过程很大程度上取决于设计 人员的经验和对行为模型的理解。 整体框架 转换算法 实例应用
6.3.1 窗口系统结构 窗口系统一般有三种结构: 在各个应用程序内部实现和管理多任务 在操作系统核心集中处理多任务管理 多任务的管理可由独立的管理程序进行管理,应 用程序通过调用该管理程序提供的接口来实现对 多任务的管理和设备的独立性操作
6.3.2 交互事件处理 应用程序内部事件处理循环
状态转换网络 状态转换网络(STN)的基本思想是定义一个具 有一定数量的状态的转换机,称之为有限状态机( FSM),FSM从外部世界中接收到事件,并能使 FSM从一个状态转换到另一个状态。 两种最基本的状态转换网络: 状态转换网络(State Diagrams) 扩展状态转换网络(State Charts)
第6章 人机交互界面表示模型与实现
重点大学计算机专业系列教材
人机交互界面表示模型 界面描述语言 窗口系统 用户界面管理系统
6.1.1 行为模型 分析人员获取用户需求后,结合领域专家的意 见和指导,获取系统中需要完成的任务,对任务的 主要因素进行详细地分析,如任务的层次、发生条 件、完成的方法以及它们之间的关系等等。 下面就从模型的基本原理、实例、局限性等几 个方面详细介绍四种常见的行为模型。
GOMS( Goal, Operator, Method, Selection ) 目标操作方法和选择行为模型是在交互系统中 用来分析用户复杂性的建模技术,用于建立用户行 为模型。它采用“分而治之”的思想,将一个任务 进行多层次的细化,通过目标 (Goal)、操作 (Operator)、方法 (Method) 以及选择规则 (Selection rule) 四个元素来描述用户行为。
click
arc2
click
arc3
click
arc4
CE
click click
curve2
dclick
curve3
基于鼠标画图工具状态转换网
扩展状态转换网络(State Charts)
graphics子菜单 选择‘ graphics ’ 弹出graphics 子菜单 Normal Finish ESC
UAN表格表示形式
UAN描述的任务“文件拖入垃圾箱”的单通道实例
CTT(Concurrent Task Tree Notation) 任务模型表示法是一种基于图形符号的,采用 层次的树状结构来组织并表示任务模型的方法。 任务种类和暂态关系的含义及其图形符号: • 任务分析是一个以人们的行为为出发点的分析 过程,它分析人们完成任务的方法:他们要做的 事、要起作用的事和想要知道的事。 • 任务种类:抽象任务(Abstract Task),用户 任务(User Task),交互任务(Interaction Task),系统任务(Application Task)。
视图 显示
模型 鼠标
用户
控制
键盘
MVC模型
Struts的体系结构实现了MVC模式的概念,它将 这些概念映射到web应用程序的组件和概念中。
事件 HTTP 请求
控制器 Servlet
发送
商业逻辑 行为
前进
客户浏览器
Srutsconfig.xml -
更新 HTTP 请求
视图 Jsp
收到 < 标签 >
模型请求 状态
•
•
•
T1 | [a1,...,an] | T2(同步Synchronization ):任务T1,T2必须在动作(a1,……,an)处保 持同步。 T1 [> T2(禁止Deactivation):一旦T2任务 被执行,T1便无效(不活动)。 T1 >> T2(允许Enabling):当T1成功结束 后才允许T2执行。
用户界面标记语言(UIML)
词汇 (表现)
逻辑
结构
内容
样式
行为
语言的基本表示结构
扩展界面标记语言(XIML) XIML由组件(Components)、关系(Relations) 和属性(Attributes)三部分构成。
XIML
组件
关系
属性
元素
声明
定义
XML语言的基本表示结构
XML用户界面语言XUL XUL提供了创建现代图形界面大多数元素的能 力。能够满足特定设备的普遍需求,对开发者来说 ,也已经足够强大,能够创建复杂的界面。