1、复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程2/66 人的因素人的因素 人机界面风格人机界面风格 人机界面分析与建模人机界面分析与建模 界面设计活动界面设计活动 实现工具实现工具 设计评估设计评估复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程3/66 人机界面风格人机界面风格 人机界面分析与建模人机界面分析与建模 界面设计活动界面设计活动 实现工具实现工具 设计评估设计评估复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程4/66人的因素主要包括: 人对感知过程的认识 用户的技能和行为方式 用户所要求
2、完成的整个任务以及用户对人机界面部分的特殊要求复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程5/66 人通过感觉器官认识客观世界,因此设计用人通过感觉器官认识客观世界,因此设计用户界面时要充分考虑人的视觉、触觉、听觉户界面时要充分考虑人的视觉、触觉、听觉的作用。的作用。 人机界面是在可视介质上实现的人机界面是在可视介质上实现的,如正文、图如正文、图形、图表等。人们根据显示内容的体积、形形、图表等。人们根据显示内容的体积、形状、颜色等种种表征来解释所获取的可视信状、颜色等种种表征来解释所获取的可视信息。因此,字体、大小、位置、颜色、形状息。因此,字体、大小、位置、
3、颜色、形状等都会直接影响信息提取的难易程度。很好等都会直接影响信息提取的难易程度。很好地表示可视信息是设计友好界面的关键。地表示可视信息是设计友好界面的关键。复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程6/66 用户从界面提取到的信息需要存入人的记忆中,用户从界面提取到的信息需要存入人的记忆中,供以后回忆和使用。在设计人机界面时不能要供以后回忆和使用。在设计人机界面时不能要求用户记住复杂的操作顺序。求用户记住复杂的操作顺序。 大多数人遇到问题时不进行形式的演绎和归纳大多数人遇到问题时不进行形式的演绎和归纳推理,而是使用一组启发式策略,这组策略是推理,而是使用一
4、组启发式策略,这组策略是以往对类似问题的处理中逐渐获得的。因此,以往对类似问题的处理中逐渐获得的。因此,设计人机界面时应便于用户积累有关交互工作设计人机界面时应便于用户积累有关交互工作的经验,同时要注意启发式策略的一致性,不的经验,同时要注意启发式策略的一致性,不宜受特殊交互的影响。如,宜受特殊交互的影响。如,undo、exit等有统等有统一的含义、位置和表示。一的含义、位置和表示。复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程7/66 用户本身的技能、个性上的差异、行为用户本身的技能、个性上的差异、行为方式的不同,都可能对人机界面造成影方式的不同,都可能对人机
5、界面造成影响。不同类型的人对同一界面的评价也响。不同类型的人对同一界面的评价也不同。不同。 终端用户的技能直接影响他们从人机界终端用户的技能直接影响他们从人机界面上获取信息的能力,影响交互过程中面上获取信息的能力,影响交互过程中对系统作出反应的能力,以及使用启发对系统作出反应的能力,以及使用启发式策略与系统和谐地交互的能力式策略与系统和谐地交互的能力 应根据用户的特点设计人机界面应根据用户的特点设计人机界面复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程8/66 用户分类: 外行型:不熟悉计算机操作,对系统很少或毫外行型:不熟悉计算机操作,对系统很少或毫无认识无认
6、识 初学型:对计算机有一些经验,对新系统不熟初学型:对计算机有一些经验,对新系统不熟悉,需要相当多的支持悉,需要相当多的支持 熟练型:对系统有丰富的使用经验,能熟练操熟练型:对系统有丰富的使用经验,能熟练操作,但不了解系统的内部结构,不能纠正意外作,但不了解系统的内部结构,不能纠正意外错误,不能扩充系统的能力错误,不能扩充系统的能力 专家型:了解系统内部的结构,有系统工作机专家型:了解系统内部的结构,有系统工作机制的专门知识,具有维护和修改系统的能力,制的专门知识,具有维护和修改系统的能力,希望为他们提供具备修改和扩充系统能力的复希望为他们提供具备修改和扩充系统能力的复杂界面杂界面复旦大学计算
7、机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程9/66 例如:例如:WinXp控制面板的向导功能适合控制面板的向导功能适合不太熟练的用户不太熟练的用户 复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程10/66 人具有多样性,人机界面设计必须符人具有多样性,人机界面设计必须符合使用该系统的用户的特点。合使用该系统的用户的特点。 人的多样性包括:人的多样性包括:身体能力的多样性,工作环境的多样性,认知能力的多样性,个性的多样性和和文化的多样性。 复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程11/66 不同的用户在
8、使用软件系统时所处的环境不同的用户在使用软件系统时所处的环境也不同,而工作环境对于用户的使用也有也不同,而工作环境对于用户的使用也有很大的影响。不适合的环境会增加系统的很大的影响。不适合的环境会增加系统的出错概率,降低用户的工作效率。出错概率,降低用户的工作效率。 不同用户的认知能力差异很大。对人机界不同用户的认知能力差异很大。对人机界面设计者来说,对用户的认知能力的理解面设计者来说,对用户的认知能力的理解非常重要。设计人机界面必须考虑到不同非常重要。设计人机界面必须考虑到不同用户的认知能力,控制系统的复杂度和学用户的认知能力,控制系统的复杂度和学习开销。习开销。 复旦大学计算机科学与工程系复
9、旦大学计算机科学与工程系 软件工程课程软件工程课程12/66 个性差异体现在很多方面。例如男性和女性个个性差异体现在很多方面。例如男性和女性个性差异就是一种基本的个性差异。在开发游戏性差异就是一种基本的个性差异。在开发游戏软件方面,需要考虑到用户的个性特点。这方软件方面,需要考虑到用户的个性特点。这方面并没有统一的标准和测量方法,但越来越多面并没有统一的标准和测量方法,但越来越多的实践表明,对于不同个性的用户调查其使用的实践表明,对于不同个性的用户调查其使用习惯进行设计是必要的。习惯进行设计是必要的。 文化差异体现在民族、语言等用户文化背景的文化差异体现在民族、语言等用户文化背景的差异,不同地
10、区的设计者对于其他地区的文化差异,不同地区的设计者对于其他地区的文化缺少了解。为了解决文化差异,需要将软件系缺少了解。为了解决文化差异,需要将软件系统国际化和本地化,人机界面也必须支持国际统国际化和本地化,人机界面也必须支持国际化和本地化设计。化和本地化设计。复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程13/661.用户时间:在系统面向的使用者集合中,选:在系统面向的使用者集合中,选择一些具有代表性的典型用户,统计其使用系择一些具有代表性的典型用户,统计其使用系统完成一系列特定任务所需要使用的时间。统完成一系列特定任务所需要使用的时间。2.基准时间:统计系统正
11、确完成基准任务需要:统计系统正确完成基准任务需要的时间。的时间。3.基准出错率:在系统面向的使用者集合中,:在系统面向的使用者集合中,选择一些具有代表性的典型用户,统计其在完选择一些具有代表性的典型用户,统计其在完成基准任务时所犯的错误情况。成基准任务时所犯的错误情况。4.任务出错率:在系统面向的使用者集合中,:在系统面向的使用者集合中,选择一些具有代表性的典型用户,统计其使用选择一些具有代表性的典型用户,统计其使用系统完成一系列特定任务时所犯的错误情况。系统完成一系列特定任务时所犯的错误情况。复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程14/665.学习能力
12、:在系统面向的使用者集合:在系统面向的使用者集合中,选择一些具有代表性的典型用户,统中,选择一些具有代表性的典型用户,统计其学习使用系统的时间。计其学习使用系统的时间。6.记忆能力:在系统面向的使用者集合:在系统面向的使用者集合中,选择一些具有代表性的典型用户,统中,选择一些具有代表性的典型用户,统计其在使用系统后的记忆保持时间。计其在使用系统后的记忆保持时间。7.主观看法:在系统面向的使用者集合:在系统面向的使用者集合中,选择一些具有代表性的典型用户,统中,选择一些具有代表性的典型用户,统计其使用系统后的主观满意情况。计其使用系统后的主观满意情况。复旦大学计算机科学与工程系复旦大学计算机科学
13、与工程系 软件工程课程软件工程课程15/66 以上几种可测量的人性因素并不是每种以上几种可测量的人性因素并不是每种都能在设计中保持在最佳状态,在设计都能在设计中保持在最佳状态,在设计时,必须根据实际情况进行取舍。时,必须根据实际情况进行取舍。 如果要维持比较低的出错率,那么系统如果要维持比较低的出错率,那么系统的效率可能就要变差;如果要保证系统的效率可能就要变差;如果要保证系统的效率,那么用户的学习时间就要增加,的效率,那么用户的学习时间就要增加,记忆时间也会减少。记忆时间也会减少。 在进行人机界面设计时,就要针对系统在进行人机界面设计时,就要针对系统的用户集合和任务集合对设计目标进行的用户集
14、合和任务集合对设计目标进行论证或折衷。论证或折衷。 复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程16/66 人的因素人的因素 人机界面分析与建模人机界面分析与建模 界面设计活动界面设计活动 实现工具实现工具 设计评估设计评估复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程17/66 第一代:命令和询问方式的界面 正文形式的通信,通过用户命令和用户对系统询问的响应来完成。由于使用正文通信,因此用户容易出错,界面不友善,难以学习。 第二代:简单的菜单式界面与第一代界面相比不易出错,但使用起来乏味,逐层进行不能一步到位。复旦大学计算机科
15、学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程18/66 第三代:窗口、图标、菜单、指示器四位一体的界面 能同时显示不同种类的信息,可在多个工作能同时显示不同种类的信息,可在多个工作环境(窗口)中切换,窗口使用户能自如地环境(窗口)中切换,窗口使用户能自如地执行许多通信型和认知型任务执行许多通信型和认知型任务 通过下拉式菜单可方便地执行控制型和对话通过下拉式菜单可方便地执行控制型和对话型任务型任务 引入图标、下拉式菜单、按钮和滚动杆技术,引入图标、下拉式菜单、按钮和滚动杆技术,可大大减少键盘输入,提高交互效率可大大减少键盘输入,提高交互效率 第四代:第三界面与超文本、多任务概念
16、相结合的界面,用户可同时执行多个任务。复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程19/66 根据语言的特点命令语言界面可分为:根据语言的特点命令语言界面可分为: 形式语言形式语言。这是一种人工语言,特点是简洁、严密、高效,不仅是操纵计算机的语言,而且是处理语言的语言; 自然语言自然语言。特点是具有多义性、微妙、丰富; 类自然语言类自然语言。这是计算机语言的一种特例。 命令语言要求惊人的记忆和大量的训练,命令语言要求惊人的记忆和大量的训练,并且容易出错,使入门者望而生畏,但并且容易出错,使入门者望而生畏,但比较灵活和高效,适合于专业人员使用。比较灵活和高效,适
17、合于专业人员使用。 复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程20/66 图形用户界面(GUI-Graphics User Interface)是当前用户界面的主流,广泛应用于各档台式是当前用户界面的主流,广泛应用于各档台式微机和图形工作站微机和图形工作站 当前各类图形用户界面的共同特点是以窗口管当前各类图形用户界面的共同特点是以窗口管理系统为核心,使用键盘和鼠标器作为输入设理系统为核心,使用键盘和鼠标器作为输入设备。窗口管理系统除基于可重叠多窗口管理技备。窗口管理系统除基于可重叠多窗口管理技术外,广泛采用的另一核心技术是事件驱动术外,广泛采用的另一核心技术
18、是事件驱动(Event-Driven)技术。技术。 图形用户界面和人机交互过程极大地依赖视觉图形用户界面和人机交互过程极大地依赖视觉和手动控制的参与,因此具有强烈的直接操作和手动控制的参与,因此具有强烈的直接操作特点。特点。 复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程21/66 图形用户界面中菜单的表现形式比字符用户界图形用户界面中菜单的表现形式比字符用户界面更为丰富,在菜单项中可以显示不同的字体、面更为丰富,在菜单项中可以显示不同的字体、图标甚至产生三维效果。图标甚至产生三维效果。 菜单界面与命令语言界面相比,用户只需确认菜单界面与命令语言界面相比,用户只
19、需确认而不需回忆系统命令,从而大大降低记忆负荷。而不需回忆系统命令,从而大大降低记忆负荷。但菜单的缺点是灵活性和效率较差,可能不十但菜单的缺点是灵活性和效率较差,可能不十分适合于专家用户。分适合于专家用户。 基于图形用户界面的优点是具有一定的文化和基于图形用户界面的优点是具有一定的文化和语言独立性,并可提高视觉目标搜索的效率。语言独立性,并可提高视觉目标搜索的效率。图形用户界面的主要缺点是需要占用较多的屏图形用户界面的主要缺点是需要占用较多的屏幕空间,并且难以表达和支持非空间性的抽象幕空间,并且难以表达和支持非空间性的抽象信息的交互。信息的交互。 复旦大学计算机科学与工程系复旦大学计算机科学与
20、工程系 软件工程课程软件工程课程22/66 直接操纵(Direct manipulation)用户界面是是Shneiderman首先提出的概念,首先提出的概念,直接操纵用户界面更多地借助物理的、直接操纵用户界面更多地借助物理的、空间的或形象的表示,而不是单纯的空间的或形象的表示,而不是单纯的文字或数字的表示。文字或数字的表示。 复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程23/66 从用户界面设计者角度看:从用户界面设计者角度看: 设计图形比较因难,需大量的测试和实验; 复杂语义、抽象语义表示比较困难; 不容易使用户界面与应用程序分开独立设计。 总之,直接操纵
21、用户界面不具备命总之,直接操纵用户界面不具备命令语言界面的某些优点。令语言界面的某些优点。 复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程24/66 多媒体用户界面被认为是在智能用户界面多媒体用户界面被认为是在智能用户界面和自然交互技术取得突破之前的一种过渡和自然交互技术取得突破之前的一种过渡技术。技术。 多媒体技术引入了动画、音频、视频等动多媒体技术引入了动画、音频、视频等动态媒体,特别是引入了音频媒体,从而大态媒体,特别是引入了音频媒体,从而大大丰富了计算机表现信息的形式,拓宽了大丰富了计算机表现信息的形式,拓宽了计算机输出的带宽,提高了用户接受信息计算机输
22、出的带宽,提高了用户接受信息的效率。的效率。 复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程25/66 多媒体用户界面丰富了信息的表现形式,多媒体用户界面丰富了信息的表现形式,但基本上限于信息的存储和传输方面,并但基本上限于信息的存储和传输方面,并没有理解媒体信息的含义,这是其不足之没有理解媒体信息的含义,这是其不足之处,从而也限制了它的应用场合。处,从而也限制了它的应用场合。 复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程26/66 80年代后期以来,多通道用户界面年代后期以来,多通道用户界面(Multimodal User I
23、nterface)成为人机交互技术研究的崭成为人机交互技术研究的崭新领域,在国际上受到高度重视。新领域,在国际上受到高度重视。 多通道用户界面综合采用视线、语音、手势等多通道用户界面综合采用视线、语音、手势等新的交互通道、设备和交互技术,使用户利用新的交互通道、设备和交互技术,使用户利用多个通道以自然、并行、协作的方式进行人机多个通道以自然、并行、协作的方式进行人机对话,通过整合来自多个通道的精确的和不精对话,通过整合来自多个通道的精确的和不精确的输入来捕捉用户的交互意图,提高人机交确的输入来捕捉用户的交互意图,提高人机交互的自然性和高效性。互的自然性和高效性。 复旦大学计算机科学与工程系复旦
24、大学计算机科学与工程系 软件工程课程软件工程课程27/66 人的因素人的因素 人机界面风格人机界面风格 界面设计活动界面设计活动 实现工具实现工具 设计评估设计评估复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程28/66人机界面的设计过程是迭代的,包括四人机界面的设计过程是迭代的,包括四个不同的框架活动个不同的框架活动 用户、任务和环境分析及建模界面设计界面构造界面确认用户、任务和环境分析界面设计实现界面确认复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程29/66 设计人员首先分析将与系统交互的用户设计人员首先分析将与系统交互的用
25、户的特点。记录下技能级别、业务理解以的特点。记录下技能级别、业务理解以及对新系统的一般感悟,并定义不同的及对新系统的一般感悟,并定义不同的用户类别。对每一个用户类别,进行需用户类别。对每一个用户类别,进行需求诱导。软件工程师试图去理解每类用求诱导。软件工程师试图去理解每类用户的系统感觉。户的系统感觉。 一旦定义好一般需求,将进行更详细的一旦定义好一般需求,将进行更详细的任务分析。标识、描述和精化那些用户任务分析。标识、描述和精化那些用户为了达到系统目标而执行的任务。为了达到系统目标而执行的任务。 复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程30/66 用户环境
26、分析关注系统物理工作环境。通用户环境分析关注系统物理工作环境。通常问这样一些问题:常问这样一些问题: 界面将物理地位于何处? 用户是否坐着、站着或完成其他和该界面无关的任务? 界面硬件是否适应空间、光线或噪音的约束? 是否需要考虑特殊的由环境因素驱动的人的因素? 复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程31/66 界面设计的目标是定义一组界面对象和动作界面设计的目标是定义一组界面对象和动作(以及它们的屏幕表示)。设计完成后,软件(以及它们的屏幕表示)。设计完成后,软件工程师根据设计方案,使用实现工具完成界面工程师根据设计方案,使用实现工具完成界面的构造。的
27、构造。 界面确认关注:界面确认关注: 界面正确地实现每个用户任务的程度、适应所有任务变更的能力以及达到所有一般用户需求的能力; 界面容易使用和学习的程度; 用户接受界面作为它们工作中有用工具的程度。复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程32/66复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程33/66 软件工程师创建的设计模型(design model):整个系统设计模型包括对软件的数据结构、体整个系统设计模型包括对软件的数据结构、体系结构、界面和过程的表示。界面设计往往是系结构、界面和过程的表示。界面设计往往是设计模型的
28、附带结果。设计模型的附带结果。 人机工程师创建的用户模型(user model):用户模型描述系统终端用户的特点。设计前,用户模型描述系统终端用户的特点。设计前,应对用户分类,了解用户的特点,包括年龄、应对用户分类,了解用户的特点,包括年龄、性别、实际能力(性别、实际能力(physical abilities)、教育、)、教育、文化和种族背景、动机、目的以及个性。文化和种族背景、动机、目的以及个性。复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程34/66 终端用户在脑海里对界面产生的映象,称为终端用户在脑海里对界面产生的映象,称为用户的模型(users mode
29、l)或系统感觉(system perception):系统感觉是终端用:系统感觉是终端用户主观想象的系统映象,它描述了期望的系统户主观想象的系统映象,它描述了期望的系统能提供的操作,其描述的精确程度依赖于终端能提供的操作,其描述的精确程度依赖于终端用户对软件的熟悉程度。用户对软件的熟悉程度。 系统实现者创建的系统映象(system image):系统映象包括基于计算机的系统的外在表示系统映象包括基于计算机的系统的外在表示(界面的观感)和用来描述系统语法和语义的(界面的观感)和用来描述系统语法和语义的支撑信息(书、手册、录像带、帮助文件)。支撑信息(书、手册、录像带、帮助文件)。如果系统映象和系
30、统感觉是一致的,用户就会如果系统映象和系统感觉是一致的,用户就会对软件感到很舒服,使用起来就很有效。对软件感到很舒服,使用起来就很有效。复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程35/66 进行任务分析有两种途径进行任务分析有两种途径(1)剖析原有应用系统(可能是手工的)剖析原有应用系统(可能是手工的或是半手工方式)的工作步骤,将其映射或是半手工方式)的工作步骤,将其映射到人机界面上执行的一组任务;到人机界面上执行的一组任务;(2)通过对系统需求规格说明的分析,)通过对系统需求规格说明的分析,导出与设计模型、用户模型和系统感觉相导出与设计模型、用户模型和系统
31、感觉相协调的一组任务。协调的一组任务。 复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程36/66 无论通过什么渠道进行任务分析,软件无论通过什么渠道进行任务分析,软件工程师必须首先定义任务并对任务分类,工程师必须首先定义任务并对任务分类,进行任务分析可以采用逐步精化的方法进行任务分析可以采用逐步精化的方法和面向对象的方法。和面向对象的方法。 例如:例如: 一个小软件公司想要为室内设计人员建立一个计算机辅助设计系统,采用逐步精化的方法,通过设计人员观察,了解到室内设计主要包括以下活动:家具布置、材料选择、墙和窗的涂料选择、对用户的展示、商定价格和购买。可以将每项任
32、务细分成子任务 复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程37/66 家具布局可分为:家具布局可分为: (1)基于房间格局画出楼层平面图; (2)将门窗放在适当位置; (3)用家具模板在平面图上画出家具轮廓; (4)将家具轮廓放到最合适的位置; (5)标记出所有家具轮廓; (6)画出尺寸以确定位置; (7)画出客户的视图。 对于其他的每个主要任务也可以进行类似对于其他的每个主要任务也可以进行类似的划分的划分 复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程38/66 另一种任务分析方法采用了面向对象的观另一种任务分析方法采用了面
33、向对象的观点。软件工程师观察室内设计人员使用的点。软件工程师观察室内设计人员使用的物理对象以及施加在每个对象上的动作物理对象以及施加在每个对象上的动作 例如,家具模板应是这种任务分析方法中例如,家具模板应是这种任务分析方法中的一个对象,室内设计人员可以的一个对象,室内设计人员可以“选择选择”适当的家具模板,将其适当的家具模板,将其“移动移动”到合适的到合适的位置,位置,“画出画出”家具模板的轮廓等等。家具模板的轮廓等等。 复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程39/66 人的因素人的因素 人机界面风格人机界面风格 人机界面分析与建模人机界面分析与建模 实
34、现工具实现工具 设计评估设计评估复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程40/66 界面设计过程可以按照以下方式进行界面设计过程可以按照以下方式进行 1建立任务的目标和意图。2将每个目标或意图映射为一系列特定的动作。3按在界面上执行的方式说明这些动作的顺序。4指明系统状态,即执行动作时的界面表现。5定义控制机制,即用户可用的改变系统状态的设备和动作。6指明控制机制如何影响系统状态。7指明用户如何通过界面上的信息解释系统状态。复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程41/66 分析用户场景,也就是,写下一个用户,也就是,
35、写下一个用户场景的描述,将名词(对象)和动词场景的描述,将名词(对象)和动词(动作)分离出来,形成对象和动作的(动作)分离出来,形成对象和动作的列表。列表。 屏幕布局,进行图符的图形设计和放置、,进行图符的图形设计和放置、屏幕文字的定义、窗口的规约和命名以屏幕文字的定义、窗口的规约和命名以及各种菜单项的定义。及各种菜单项的定义。 制订一份制订一份指导工作的文档通常是设计的通常是设计的关键。在设计的初期就应该不断完善这关键。在设计的初期就应该不断完善这份文档。指导文档必须是动态的份文档。指导文档必须是动态的 复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程42/66
36、文字和图标文字和图标术语、缩略语和大写术语、缩略语和大写字符集,字体,字体大小和样式字符集,字体,字体大小和样式图标、图形和线的粗细度图标、图形和线的粗细度色彩、背景、突出显示和闪烁的使用色彩、背景、突出显示和闪烁的使用屏幕布局问题屏幕布局问题菜单选择、表格填充和对话框格式菜单选择、表格填充和对话框格式提示用语、反馈和出错消息提示用语、反馈和出错消息对齐方式、空白区和边缘空白对齐方式、空白区和边缘空白数据项的输入显示方式,表格的输入显示方式数据项的输入显示方式,表格的输入显示方式页眉和页脚的使用和内容页眉和页脚的使用和内容输入输出设备输入输出设备键盘、显示器、鼠标和其他指点设备键盘、显示器、鼠
37、标和其他指点设备声音探测、声音反馈、触摸式输入和其他特殊设备声音探测、声音反馈、触摸式输入和其他特殊设备各种人物的响应时间各种人物的响应时间行为顺序行为顺序图形界面的点击、拖动等输入行为图形界面的点击、拖动等输入行为命令的语法、语义、优先级命令的语法、语义、优先级程序功能键程序功能键错误处理和恢复错误处理和恢复培训培训在线帮助在线帮助培训和参考资料培训和参考资料复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程43/66 系统响应时间系统响应时间 用户求助设施(用户求助设施(user help facilities) 错误信息处理错误信息处理 命令标记(命令标记(c
38、ommand labeling) 复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程44/66 系统响应时间指从用户执行某个控制动作指从用户执行某个控制动作(如按回车键或点鼠标)到软件作出响应(如按回车键或点鼠标)到软件作出响应(期望的输出或动作)的时间。系统响应(期望的输出或动作)的时间。系统响应时间长会使用户感到不安和沮丧。稳定的时间长会使用户感到不安和沮丧。稳定的响应时间(如响应时间(如1秒)比不定的响应时间秒)比不定的响应时间(如(如0.1秒到秒到2.5秒)要好。秒)要好。 复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程45/
39、66 关于求助设施,在设计时须考虑如下问题:关于求助设施,在设计时须考虑如下问题:1)在系统交互时,是否总能得到各种系统功能的帮助?是提供部分功能的帮助还是提供全部功能的帮助。2) 用户怎样请求帮助?使用帮助菜单、特殊功能键还是HELP命令。3) 怎样表示帮助?在另一个窗口中、指出参考某个文档(不是理想的方法)还是在屏幕特定位置的简单提示。4) 用户怎样回到正常的交互方式?可做的选择有:屏幕上显示返回键、功能键或控制序列。5) 怎样构造帮助信息?是平面式(所有信息均通过关键字来访问)、分层式(用户可以进一步查询得到更详细的信息)还是超文本式。复旦大学计算机科学与工程系复旦大学计算机科学与工程系
40、 软件工程课程软件工程课程46/66 交互系统给出的出错消息和警告应具备以下特交互系统给出的出错消息和警告应具备以下特征:征:1)消息以用户可以理解的术语描述问题。2) 消息应提供如何从错误中恢复的建议性意见。3) 消息应指出错误可能导致哪些不良后果(比如破坏数据),以便用户检查是否出现了这些情况或帮助用户进行改正。4) 消息应伴随着视觉或听觉上的提示,也就是说,显示消息时应该伴随警告声或者消息用闪耀方式,或明显表示错误的颜色显示。5) 消息应是“非批评性的”(nonjudgmental),即不能指责用户。复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程47/66
41、 在提供命令交互方式时,必须考虑以下问在提供命令交互方式时,必须考虑以下问题:题:1) 每一个菜单选项是否都有对应的命令?2) 以何种方式提供命令?控制序列(如Alt + P)、功能键还是键入命令。3) 学习和记忆命令的难度有多大?命令忘了怎么办?4) 用户是否可以定制和缩写命令?复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程48/66 让用户拥有控制权让用户拥有控制权 减少用户的记忆负担减少用户的记忆负担 保持界面一致保持界面一致 复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程49/66 1) 交互模式的定义不能强迫用户进入交互
42、模式的定义不能强迫用户进入不必要的或不希望的动作的方式不必要的或不希望的动作的方式 2) 提供灵活的交互提供灵活的交互 3) 允许用户交互可以被中断和撤销允许用户交互可以被中断和撤销 4) 当技能级别增长时可以使交互流水化当技能级别增长时可以使交互流水化并允许定制交互并允许定制交互 5) 使用户隔离内部技术细节使用户隔离内部技术细节复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程50/66 1) 减少对短期记忆的要求减少对短期记忆的要求 2) 建立有意义的缺省建立有意义的缺省 3) 定义直觉性的捷径定义直觉性的捷径 4) 界面的视觉布局应该基于真实世界的界面的视觉
43、布局应该基于真实世界的隐喻隐喻 5) 以不断进展的方式揭示信息以不断进展的方式揭示信息复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程51/66 1) 允许用户将当前任务放在有意义的语允许用户将当前任务放在有意义的语境中境中 2) 在应用系列内保持一致性在应用系列内保持一致性 3) 不要改变用户已经熟悉的用户交互模不要改变用户已经熟悉的用户交互模型型复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程52/66齐治昌在其软件工程书中也提出了一些界面设计的原则:齐治昌在其软件工程书中也提出了一些界面设计的原则: 1 一般交互提高可交互性的措
44、施有:提高可交互性的措施有:1)一致性:人机界面中的菜单选择、命令输入、数据显示以及一致性:人机界面中的菜单选择、命令输入、数据显示以及其它功能都应使用一致的格式。其它功能都应使用一致的格式。2)提供有意义的反馈:向用户提供视觉和听觉的反馈,以保证提供有意义的反馈:向用户提供视觉和听觉的反馈,以保证在用户和界面间建立双向联系。在用户和界面间建立双向联系。3)在执行有较大破坏性的动作前要求确认。在执行有较大破坏性的动作前要求确认。4)允许取消大多数已完成的操作(允许取消大多数已完成的操作(UNDO)。)。5)减少在动作间必须记忆的信息数量减少在动作间必须记忆的信息数量6)提高对话、移动和思考的效
45、率:尽量减少击键次数,缩短鼠提高对话、移动和思考的效率:尽量减少击键次数,缩短鼠标移动的距离,尽量避免用户作标移动的距离,尽量避免用户作“下面怎么办?下面怎么办?”的思考。的思考。7)系统应保护自己不受致命错误的破坏。系统应保护自己不受致命错误的破坏。8)按功能对动作分类,并据此安排屏幕布局。按功能对动作分类,并据此安排屏幕布局。9)提供语境相关的帮助机制。提供语境相关的帮助机制。10) 命令用简单的动词或动词短语命名。命令用简单的动词或动词短语命名。复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程53/66 2 信息显示 如果人机界面上给出的信息不完整、有二义或
46、难以如果人机界面上给出的信息不完整、有二义或难以理解,用户肯定不会满意。信息显示的形式和方式有理解,用户肯定不会满意。信息显示的形式和方式有多种多样,下面是一些带有普遍指导意义的原则:多种多样,下面是一些带有普遍指导意义的原则: 1)只显示与当前语境相关的信息。只显示与当前语境相关的信息。 2)使用便于用户迅速吸取信息的方式表现数据。可使用便于用户迅速吸取信息的方式表现数据。可以用图形取代巨大的表格。以用图形取代巨大的表格。 3)采用一致的标记、标准的缩写和预先定义的颜色。采用一致的标记、标准的缩写和预先定义的颜色。 4)允许用户保持可视化的语境。允许用户保持可视化的语境。 5)产生有意义的出
47、错信息。产生有意义的出错信息。 6)使用大小写、缩进和正文分组来辅助理解。使用大小写、缩进和正文分组来辅助理解。 7)使用窗口分隔不同类型的信息。使用窗口分隔不同类型的信息。 8)用用“类比类比”的手法,生动形象地表示信息。如用的手法,生动形象地表示信息。如用类似温度计的方式表示储油罐的压力,用红色表示危类似温度计的方式表示储油罐的压力,用红色表示危险区。险区。 9)合理划分并高效使用显示屏空间。合理划分并高效使用显示屏空间。复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程54/663 数据输入用户与系统交互的大部分时间用于键入命令、数据以及提供其它用户与系统交互
48、的大部分时间用于键入命令、数据以及提供其它的系统输入。输入手段主要有键盘、鼠标、数字化仪甚至语音识的系统输入。输入手段主要有键盘、鼠标、数字化仪甚至语音识别系统等。处理数据输入的问题时应该注意:别系统等。处理数据输入的问题时应该注意:1)尽量减少用户输入动作的数量。尽量减少用户输入动作的数量。2)保持信息显示和数据输入的一致性。保持信息显示和数据输入的一致性。3)允许用户定制输入。如专家用户可以决定创建客户命令或省允许用户定制输入。如专家用户可以决定创建客户命令或省去警告信息和动作确认。去警告信息和动作确认。4)交互应该是灵活的并可调整到用户喜欢的输入方式。如书记交互应该是灵活的并可调整到用户
49、喜欢的输入方式。如书记员喜欢键盘输入,经理喜欢鼠标点击。员喜欢键盘输入,经理喜欢鼠标点击。5)隐藏当前动作语境中不可选用的命令。隐藏当前动作语境中不可选用的命令。6)让用户控制交互流。用户应能跳过不必要的动作、改变所需让用户控制交互流。用户应能跳过不必要的动作、改变所需动作的顺序(如允许的话)以及在不退出系统的情况下从错误状动作的顺序(如允许的话)以及在不退出系统的情况下从错误状态恢复。态恢复。7)为所有的输入动作提供帮助。为所有的输入动作提供帮助。8)消除冗余输入。如,不要求用户指定计量单位;不要求在整消除冗余输入。如,不要求用户指定计量单位;不要求在整数后加数后加.00;提供缺省值;绝不要
50、让用户提供程序中能自动获取;提供缺省值;绝不要让用户提供程序中能自动获取或计算的信息。或计算的信息。复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程55/66 人的因素人的因素 人机界面风格人机界面风格 人机界面分析与建模人机界面分析与建模 界面设计活动界面设计活动 设计评估设计评估复旦大学计算机科学与工程系复旦大学计算机科学与工程系 软件工程课程软件工程课程56/66 创建设计模型后,通常可使用相关的工具开发创建设计模型后,通常可使用相关的工具开发界面原型,由用户检查,然后根据用户的意见界面原型,由用户检查,然后根据用户的意见进行修改,这些工具被称为进行修改,这