111:356.9用户界面的设计1.用户界面应具备的特性(1)可使用性(2)使用的简单性(3)用户界面中的术语标准化和一致性(4)拥有HELP帮助功能(5)快速的系统响应和低的系统成本(6)用户界面应具有容错能(7)灵活性:算法的可隐可显性;用户可以根据需要制定和修改界面方式;能够按照用户的希望和需要,提供不同详细程度的系统响应信息;与其它系统应有标准的界面;为使用户界面具有一定的灵活性,需要付出代价,而且有可能降低系统的运行效率。211:35(8)复杂性和可靠性用户界面的规模和组织的复杂程度就是界面的复杂性。在完成预定功能的前提下,应使用户界面越简单越好。但不是把所有功能和界面安排成线性序列就一定简单。用户界面的可靠性是指无故障使用的间隔时间。用户界面应能保证用户正确、可靠地使用系统,保证有关程序和数据的安全性.这一部分工作应与系统的分析同步进行。它主要包括:用户特性分析、用户工作分析、记录有关系统的概念和术语、确定界面类型等4个步骤。311:35图6-24用户界面分析411:352.用户特性分析用户界面是适应人的需要而建立的,因此,首先要弄清将要使用这个界面的用户类型。用户特性分析的目的是要详细了解所有用户的技能和经验,以便能够预测用户对不同界面设计会做出什么反应,这样在更改界面时,就能做出正确的判断。用户类型有外行型、初学型、熟练型、专家型。用户的类型并不是一成不变的。因此,要做用户特性测量,以帮助设计者选择适合于大多数用户使用的界面类型和支持级别。用户特性度量与用户使用模式及观测到的用户群体能力有关。包括以下几个方面:①用户使用的频度:即系统是否经常使用;②用户是否能够自由选用界面:所有的界面都应当是良好的;③用户对计算机的熟悉程度:对计算机的熟悉程度决定了要使用户达到熟练程度需要多少训练;④用户知识:有些用户已有相当多的计算机编程和操作的知识。他们需要一种灵活的可编程的或命令语言的界面;511:35⑤用户思维能力:这是对用户的综合知识和智力的衡量;⑥用户的生理能力和技能:主要指人的视觉、听觉、认知和记忆等方面的特点。因此,应该在这一方面去收集信息。用户群体的度量,可用打分的办法来简单地度量。平均值反映了用户群体的平均特性。标准偏差反映了用户群体的差异大小,主要用于判断用户界面对不同类型的用户的适应范围。例如:一个图书馆的计算机借阅系统,由于图书馆的馆员将每天使用这个系统,因此他们使用系统的频度很高。他以前几乎没有人使用过计算机,也没有人有应用自动化图书馆借阅系统和计算机系统的知识。他们的绝大多数的智力水平在中等以上。用户特性表如下:611:35图6-25用户特性表711:353.用户工作分析用户工作分析,也称为任务分析。它是系统内部活动的分解。用户工作分析与系统分析中结构化分析的方法类似,采用自顶向下,逐步进行功能分解。与常规的功能分解不同的是,所有的系统任务,包括与人相关的活动,都要考虑在内。系统的功能分解,可以用数据流图和数据词典描述。任务可以由一组动作构成,它们规定了为实现这个任务所必须的一系列活动。任务的细节可以使用结构化语言来表达。它描述了动作完成的序列及在完成动作时的所有例外情况。例如,下面是图书馆中借阅图书的活动描述。811:35TASK:loanbooksDOWHILEborrowersrequestreader_IDcheckreader_IDIFreader_IDinvalidpasstomembership_checkELSEcontinueENDIFDOWHILEbook_requestsenterbook_markonborrower_slipwritereader_IDonborrower_slipstampbookwithreturn_dateremovebook_in_library_tagENDWHILEENDWHILE根据以上分析得到的度量表明,应当选择一种不太复杂的对话界面。911:354.用户界面任务和工作设计任务和工作设计的目的在于创造用户的工作环境。通常,任务应组织得多样化一些,要与人的能力相适应。既不能完全由非常复杂的步骤组成,也不能太过简单而使操作者感到厌烦。在每个任务中,动作要分配给计算机、用户或者二者。一般地,用户承担需要创造、判断和探索的任务,而计算机承担重复检查、计算和数据处理的任务。数据录入、数据恢复和决策支持是混合任务。这些混合的任务需要通过人和计算机交互来共同完成。任务分配产生两个网络。一个是人的任务网络,一个是计算机的任务网络。人的任务网络说明如何安装、操作和使用系统,它最后将形成操作过程和用户手册的基础。计算机的任务网络则描述计算机应担负的工作。这两种网络都可以用数据流图来设计。1011:35任务分配步骤可按如下步骤进行:检查数据流图,标出哪些是单独由计算机完成的任务;哪些是单独由人完成的任务;哪些是由两者共同完成的任务;对于共同完成的任务,将任务的每一个动作分配给计算机或人;构成新的计算机的任务网络和人的任务网络;再进一步细化计算机与人的协同动作,以确定人和计算机如何交互;一个任务可以划分成一些子任务,按照某种顺序执行这些子任务,实现任务所要达到的目标,因此需要做出结构性的任务序列。但许多事务处理任务是非结构性的,图书馆的馆长会以一个不可预测的顺序来召集一个碰头会、查询馆内各种业务情况。在这种情况下,不存在一个人的任务网络,而仅仅是一些用户需要个别完成的互不联系的任务。工作设计的目的是使任务需求与操作员的能力相匹配。界面设计中关于人的因素特性的简单的度量如下:复杂性——推理、判断和决策的难度;专心程度——对细节的注意力;责任心——任务在总系统中的重要性。1111:35工作方式有两种:(1)可由一个人单独完成一个系统的目标。例如:在商店业务处理系统中,检查顾客订单的任务中,所做的工作将是:数据输入、顾客赊欠清理、错误分辨和赊欠查询。(2)任务进展跟踪。确定命令在系统中什么地方执行、确定关键延迟的命令、调查拖延的原因、提出解决的建议等。在做工作设计时,应该检查任务流程以确认不会出现任务过载。如果同时有多个任务需要用户给予注意,往往由于命令的时间冲突而使用户陷入困境,结果出现任务过载。即使任务流程计划的很好,但由于错误和一些意料之外的事情发生,如果错误处理过程计划的不完全、无条理,也会出现任务过载。导致任务过载的原因,最常见的是出现工作负荷的高峰。因此要计划工作负荷使之均衡,并给出错误处理的时间。界面设计类型在选用界面形式时,应当考虑每种类型的优点和限制。从以下几个方面来考察,进行抉择:1211:35①使用的难易程度:对于没有经验的用户,该界面使用的难度有多大。②学习的难易程度:学习该界面的命令和功能的难度有多大。③操作速度:在完成一个指定操作时,该界面在操作步骤、击键和反应时间等方面效率有多高。④复杂程度:该界面提供了什么功能、能否用新的方式组合这些功能以增强界面的功能。⑤控制:人机交互时,是由计算机还是由人发起和控制对话。⑥开发的难易程度:该界面设计是否有难度、开发工作量有多大。用户界面设计主要任务图示如图6-26所示:1311:35图6-26用户界面设计主要任务图示用户界面设计输入设计输出设计操作设计使用手册输入描述输入方式编译算法设计菜单MENU问题描述语言POL带表头的数据表格TABLE图形输入交互式磁性媒体批处理输出描述输出方式编译加工,算法设计正文(说明文件)图形数据表格磁性媒体硬拷贝交互式命令批处理命令1411:355.用户界面设计—数据输入界面设计数据输入是指所有供计算机处理的数据的输入。数据输入界面是系统的一个重要组成部分,它常占用用户的极大部分使用时间。(1)数据输入的原则数据输入界面的目标是尽量简化用户的工作,并尽可能地减少输入的出错率。为此,在设计时要考虑尽可能减少用户的记忆负担,使界面具有预见性和一致性,防止用户输入出错,以及尽可能增加数据自动输入。在系统设计的范围,可以通过以下方法来减少用户输入的工作量:对共同的输入内容设置默认值(缺省值);使用代码和缩写;填入已输入过的内容或需要重复输入的内容;如果输入内容是来自一个有限的备选集,可以采用列表选择或指点方式;数据输入屏幕应当设计成尽量与输入格式相匹配,如果没有输入格式或旧的输入格式设计得不好,就应当设计新的屏幕格式。1511:35数据内容应当根据它们的使用频率,或它们的重要性,或它们的输入次序进行组织。数据输入对话设计的一般规则:明确的输入:只有当用户按下输入的确认命令时,才确认输入。这有助于在输入过程中一旦出现错误能及时纠错。明确的动作:在表格项之间自动地跳跃/转换并不总是可取的,尤其是对于不熟练的用户,往往会被搞得无所适从,要使用TAB键或回车键控制在表格项之间的移动。明确的取消:如果用户中断了一个输入序列,已经输入的数据不要马上丢弃。这样才能对一个也许是错误的取消动作进行重新思考。确认删除:为避免错误的删除动作可能造成的损失,在键入删除命令后,必须进行确认,然后才执行删除操作。例如,可以用Deleteyousure?[Y/N]来确认。1611:35提供反馈:若一个屏幕上可容纳若干输入内容,可将用户先前输入的内容仍保留在屏幕上,以便用户能够随时察看,明确下一步应做的操作。允许编辑:在一个文件输入过程中或输入完成后,允许用户对其编辑,以修改他们正在输入的数据或修改他们以前输入的数据。应采纳一种前后一致的编辑方式。提供复原(Undo):应允许用户恢复输入以前的状态。这在编辑和修改错误的操作经常用到。自动格式化:用户可以采用自由格式进行输入。例如,用COBOL语言时,用79而不是0079去适应格式PIC9(4)的要求。输入对空格应不敏感。提示输入的范围:应当显示有效回答的集合及其范围。例如,显示“在1~10间输入打折扣量”。1711:35(2)输入表格设计数据表格设计是对较复杂的数据录入时使用得最广泛的一种对话类型。这种方法是在屏幕上显示一张表格,类似于用户熟悉的填表格式,以供用户向计算机内输入数据。在这种输入数据表格中,对于每一种输入信息,都有一个表格项,并带有一个表格项头,以提示输入信息的内容和位置。由用户使用移位键或者特殊定义的功能键控制屏幕上的光标,在各个表格项上定位以及数据的输入。用户键入数据之后,还可以使用相同的屏幕格式显示、修改这些数据。数据表格的优点是它的视觉布局用户比较熟悉,而且全部信息都可以显示在屏幕上,只要表格设计得好,操作步骤非常简便。1811:356.数据显示界面设计数据显示界面包括屏幕查询、文件浏览、图形显示和报告。数据显示的规则:(1)进行数据输出显示设计,应当了解数据显示的要求,解决应该显示哪些数据,屏幕上一次显示多少信息的问题。显示的信息对于用户任务来说应当是适当的,不要过于拥挤。(2)选择显示内容,应当考虑以下准则:只显示必需的数据。与用户需求无直接关系的一律省略;在一起使用的数据应显示在一起;显示出的数据应与用户执行的任务有关;每一显示屏中数据的数量,包括标题、栏题等等,不应超过整个屏幕面积的30%。1911:35利用这些规则,并根据用户要求,下一步应当将数据分组,然后将每组数据按一定的结构形式来安排。总的目的是使得用户感到使用方便;显示设计要使得相关的数据成组的出现,并由用户与系统的会话来控制;可根据屏幕的大小,使每帧屏幕包含若干个子区域,让每个子区域显示不同的信息。进行屏幕布局时,还需要考虑其它一些规则,例如:应尽量少使用代码和缩写,不应让读者去翻译或猜测这些代码或缩写;如果安排了若干个显示画面,最好建立一个统一的格式;提供明了的标题、栏题以及其它提示信息。帮助用户浏览各种显示画面;遵循用户的习惯。采用在分析过程中得到的用户模型,并保留用户使用的术语;采用颜色、字符大小、下划线或不同的字体等方式来强化重要数据。设计了数据的显示结构之后,根据是图形显示还是字符显示,进一步考虑细节设计。2011:357.控制界面的设计设计控制界面的主要目的是让用户能够主动地控制计算机上系统的工作,使得用户能够很容易地访问计算机的各种设备