人机交互第四章docx.docx
《人机交互第四章docx.docx》由会员分享,可在线阅读,更多相关《人机交互第四章docx.docx(15页珍藏版)》请在冰豆网上搜索。
人机交互第四章docx
计算机学院2007年秋季课程
1
人机交互技术
■4.1
■4.2
■4.3
■4.4
界面细化设计的流程对话网络图用于对话设计界面细化对话设计的方法简述界面开发工具与环境简介
§4.1界面细丫匕设计的流程
■界面细化设计的步骤
■首先用任务设计的结果作为输入,设计成一组逻辑模块,然后加上存取机制,把这些模块组织成界面结构(分层的、网络的或直接存取机制)
■界面细化设计的步骤(续)
力口入存取机制时进一步将整个界面划分成小的模
块。
每一模块被分成若干步,每一步包含人机间
的一次问答。
这种模块可映象到物理结构上。
简单界面可直接实现原型,复杂界面用对话网络
图做对话细节设计,然后编码。
-Jp-I规蠶明p
用户观点
逻辑的对话模块
设计准则
可测试的界面
经验证的设计
巳承认可接受的设计
用户概念模型
务设般述/设计
对话设计准则
界面模块
细化的准则
复杂界面
设计
对话细节:
对话网络
检査
对话设计
程庠设计
增加
存取模块
简单界面
原型
用户反儘界面
用户测试
实际工作
的系统
■用户的概念模型
■概念模型:
一种用户能够理解的系统描述,它使用一组集成的构思和概念,是系统作什么、如何运作、外观如何等。
■概念模型可划为两大类:
基于活动的概念模型和基于对象的概念模型。
■用户的概念模型(续)
■基于活动的概念模型:
用户与系统交互式的活动类型常有——指示、对话、操作和导航、探索和浏览
■用户的概念模型(续)
■基于对象的概念模型通常是基于对象或人造物(如书本、车辆或工具)的模型,通常是对物理世界的模拟。
■如电子表格就是一个成功的基于对象的概念模型八
界面结构设计
■加上用户存取和控制机制
■将对象进行分类的观点经常用层次结构表述,而任务顺序观点则更常用网络结构描述。
存取路径应反映出用户当前观察他们的系统的方法。
・例子二—
二对象分类一一―
任务分类
■界面结构设计(续)
■将逻辑模块映象到物理模块
■原则:
“一个模块一个用途”,即“一个界面模块做且仅做一件事”,体现“内聚”。
内聚强的模块易于区分、理解和维护。
乍
■在模块内细化对话
■状态转换图:
用图形的方式来描述系统中的一系列状态及其转移。
■状态转换图是常用的人机对话描述方法,也称为状态转移网络、对话网络图。
状态用圆圈表示,它表示在对话中计算机的
一个静止状态信息显示。
■弧表示两个状态间的转化。
每一条弧都依赖于用户回答的特性(如合法数据,非法数据,脱离命令)。
弧上标有转化的条件(人的动作或超时转移等)。
■状态网络图可以层次化,引入子状态转换图,采用从顶向下的设计方法来分析复杂的状态转换图。
矩形表示对子对话序列的调用。
■图的构件一
■订单处理系统中主菜单的对话网络图例子
■对话设计中要注意的设计原贝U
■显示系统状态信息,并对用户的动作给出反馈信息才
■使用户的对话工作量最少,尽量使用默认值
■提供复原操作和求助功竈)
■允许用户随时终止操作并退出
■对话网络可用两种方法检验
■首先确保连接是有意义的
■其次检查每一步骤上的弧的大致数目及其合理性
大多数圆应至少有三条流出的弧:
正常的回
答.非法的回答和脱离。
■非法的回答应指向错误信息状态,再回到上一个对话步骤以便重新输入;z>
■脱离路径用来退出当前步回到对话中的上一个断点O亠一^
■更复杂的实现中,每一数据输入状态可发出
5条弧:
3条上述提到的弧,1条求助弧,1条复原弧。
”
■求助弧指向信息状态并停留那儿直到回到前一个对话步;
■复原弧形成自己单独的对话子序列。
■网络图也能检查设计的效率
■应当检查对话步的数目;有大量的仅有两分枝(是或否)的弧存在就要重新考虑。
§4.3界面细T匕说计方法简述
界面细化设计方法简述
用户界面的细化设计可以采用多种方法,常用的有:
状态转换图方法、上下文无关文法、面向对象设计方法。
■状态转换图的优点:
■可以提供系统交互结构的描述,它直观形象地给出交互控制流程,便于分析。
■使用子网络允许设计者把复杂的对话系统分解,允许重用公共的交互动作。
■可以把人机界面中的帮助、出错信息等放到相关
网络中,并便于检查核实设计的正确性及确保运用了良好设计经验。
■状态转换图方法缺点:
■在分析上不灵活
■难以实现状态回溯
■当系统过于复杂时,状态转换图也会变得十分复杂,不易查询得到有用的信息
■需要图形支持工具来编辑和表示状态图
■上下文无关法:
将用户的输入看作文法中的终结符,用户的完整输入构成了一种语言。
只要给出这种语言的文法描述,人机对话中用户所能输入的序列方式也就定下来了。
■例子(大写词为终结符,表示用户输入):
■command:
:
=create|delete|zoom
■create:
:
=CREATETYPEposition
■delete:
:
=DELETENAME
■zoom:
:
=ZOOMposition
■position:
:
=X_POSITIONY_POSITION
■上下文无关法优点:
它是一种严谨、易于自动生成对话程序的方案。
■上下文无关法缺点:
可读性差,未考虑计算结果对于对话的影响,不易描述并发对话等。
人机对话可能出现上下文有关的情况,痙出上下文无关文法的能力,例如命令的合法性取决于其所用的环境,属上下文有关文法。
4
■面向对象及软构件技术
图形用户界面的设计是一个比较困难的事情,而采用面向对象的方法正好十分有效。
■面向对象方法设计图形界面的注意事项■
(1)把界面和应用进行分离。
(2)
充分利用类的继承性。
(3)硬件环境的依赖程度。
(4)用户界面工具及语言的使用。
*
■有以下几种用户界面的支持层次:
-A.操作系统及一般程序语言。
如C++,及通用的编译器等,注意操作系统平台。
.B.图形包及基本窗口系统,如GKS图形软件包、X窗口系统等,大量的图形界面的对象和类库。
—丿厂
-C.带有面向对象功能的用户界面工具集,如VisualBasic(提供控彳牛VBXj、VisualC
(MFC)、MS-Windows(主要为SDK),X窗口系统上的Xtoolkit等,Borland的OWL和VCL。
§433面向对象及钦构件技术
■软件工具的作用
■在系统生命周期的每个阶段,都可找到软件工具,也称为Computer-aidedsoftwareengineering(CASE)O其中,支持分析、设计的工具常叫做“front-endCASE”,支持实现、操作和系统维护的叫做"back-endCASE”。
■CASE工具的好处
■提高生产率
■增强软件质量
■便利和改善对软件开发的管理
用软件构件技术设计界面
■如今使用软构件技术,可以提供跨平台、与语
言无关的二进制部件,具有可视化编程环境。
■常用的软件构件(也称组件、控件)技术有
ActiveX.C++Builder和JavaBeans等。
■ActiveX采用对象方式,抽象和封装具备通用性的功能对象,构建髙重用度的底层公共构件,对象内部的真实处理可以使用所基于的系统已有的函数和数据结构。
界面开发者通过构件提供的接口(interface),可以自由使用被封装对象公布的所有属性和事件。
■C++Builder结合了先进的基于组件的程序设计技术,成熟的可视化组件库和优秀编译器、调试器。
■Java更是一种简单易用、完全面向对象、具有平台无关性且安全可靠的、主要面向Internet的开发环境。
‘§4.4界面开友工冥与环境简介
界面开发工具与环境介绍
■许多现状:
不少的人机界面设计与描述是基
于“嵌入”方式进行的,部件嵌入到主系统中。
即人机界面作为软件
■存在问题:
混合编写人机界面和应用功能两
部分程序,程序交错、混杂在一起,就不能独立修改,程序可维护性也差。
‘§4.4界面开友工具与环境简介
■解决办法:
若将人机界面独立于主系统,就可能设计各类用户界面工具,以使所生成的用户界面不受应用系统的改动而变动,这样也有利于降低界面软件开发的成本。
“界面的独立性”也叫做“对话独立性”。
.§441对话独云U性原则
■对话独立性是一种设计原则,它使人机对话的设计决策所带来的影响,仅局限于人机对话范围内,而不影响应用系统或计算软件的总体结构。
§441对话独云U性原则
■做法:
将一个交互系统的设计分成两个部
分:
对话部件和和计算部件。
■对话部件用来管理人机通讯,计算部件则是应用系统中的功能处理机构,它是人(用户)不能直接与其对话的。
詡
■在系统设计、详细设计及维护时,这两类部件保扌寺相对独立;而在系统运行或原型执行时,这两类部枠通过运行机制进行内部强讯。
4
SeeheimModel
■在人机界面模型中,有一类并不是直接描述人与计算机的对话,而是人与计算机界面的结构。
换句话说,这种模型主要描述人机界面的内部构成及它们分别与应用程序、最终用户之间的关系。
在这类模型中,具有代表性的是'SeeheimModel”。
■SeeheimModel模型基于对话独立性的概
念,即对话与应用通过一个控制单元实现松散耦合来实现其联系,这一控制单元定义了对话和应用间的关系、传输运行时标记的往来。
表
i—~r►
f部件一
◄
最终用户
对话的结构模型
应用程序.
一
表示部件:
现,包括:
这一部件负责人机界面的外部表
屏舉管理,图形生成,输入设
备管理,词法反馈,交互技术,将输入数据(或用户动作)转换成内部的形式,转送给(或转自)对话控制部件。
■对话控制:
它是用户和应用程序之间的协调器,它定义两者对话的结构。
用户通过表示部件提请求,并提供数据给应用程序,经过对话控制部件的检验,传输给应用程序中合适的例程;应用程序也将对请求的回答及其他新的数据请求传输给表示部件的合适部分。
4
■应用接口:
它是从人机界面观点看到的应用程序的一种表述,包括:
■应用程序所维护的数据结构(或数据对象)
■人机界面可使用的应用程序相关的例程,也即应用程序中定义的语义、
■应用程序的使用限制。
它使人机界面可以检查输入的语义合法性。
它可能包括恢复错误或取消已完成动作的有关信息。
■SeeheimModel结构模型的缺点:
是一个执行模型,而不是一个管理模型,不能完全反映人机界面软件的生存周期。
用户界面管理系统(UIMS)
■人们很希望能够用规范化和规模生产的方法自动生成一致性的人机界面。
国内外已研制、开发了多种类型的实验性和商品化的UIMSo一丿
■大多数UIMS(UserInterfaceManagement
System)系统采用Seeheim模型或有所改
它负责所有的界面显示和对话管理
如:
屏
幕显示、接受和确认输入、发出出错信息、
提供帮助等。
■应用系统开发者对UIMS的功能需求
要求提供界面开发和应用开发的可分离性
■能在不改变应用程序下,重构、修改、完善人机
界面,有利于对同一应用程序构成多种界面格式。
也可以对不同的或相似的应用程序生成一致性界面
■应用系统开发者对UIMS的功能需求(续)
可以建造基本界面部件,
由它们剪裁、拼接成完
整的界面,有利于提高界面质量并减少开发时间和开销,使界面设计者从界面底层细节设计中解
放出来。
■应用系统开发者对UIMS的功能需求(续)
■生成的人机界面能适用于多种高级语言(如C,
Fortran,Pascal)的应用程序'提供多种语言混合联编功能;
■能适用于多种图形支撑软件,完成图形(及图象)处理功能。
一
界面开发工臭介绍
■Unix:
.XWindows:
一系列的Xlib库,C函数。
■Motif:
基于Xlib,工作站上的标准
■Linux:
■类似于Unix
■Kylix:
Linux下的Delphi
■Windows—
■VB、VC/—
■Delphi.C++Builder
■平台无关(Java):
■JBuilder
■VisualAgeForJava
.P7534
7