分享到:

一种界面需求分析方法

31-Oct- 2013

 1、引言 
  
软件界面是人与计算机之间的媒介。用户通过软件界面来与计算机进行信息交换。因此,软件界面的质量,直接关系到应用系统的性能能否充分发挥,能否使用户准确、高效、轻松、愉快地工作,所以软件的友好性、易用性对于软件系统至关重要。目前国内软件开发者在设计过程中很注重软件的开发技术及其具有的业务功能,而忽略了用户对软件界面的需求,影响软件的易用性、友好性;对界面设计的研究也集中在界面设计技术、设计手段上面。软件开发人员在设计时以经验为参考依据,缺乏对实际用户需求的了解。而软件的友好性、易用性同用户特征紧密相联,同样的软件界面,不同用户可能有绝然相反的评价。因此分析用户特征、了解用户需求和操作习惯,是开发软件界面的必有步骤,必须引起足够重视。

  本文讨论了一种界面需求分析的方法,意在探讨研究如何完成针对系统所有用户的界面需求定义,从而开发为用户所接受的界面。讨论该方法的目的在于帮助设计人员快速明确用户的界面需求,让用户充分参与到界面需求分析中,从而在最终界面需求说明中体现用户的思想,满足用户要求。

  2、界面需求分析过程

  2.1界面元素

  通常一个软件界面的元素包括界面主颜色、字体颜色、字体大小、界面布局、界面交互方式、界面功能分布、界面输入输出模式。其中,对用户工作效率有显著影响的元素包括:输入输出方式、交互方式、功能分布,在使用命令式交互方式的系统中,命令名称、参数也是界面元素的内容,如何设计命令及参数也很重要。影响用户对系统友好性评价的元素则有:颜色、字体大小、界面布局等,这种划分不是绝对的,软件界面作为一个整体,其中任何一个元素不符合用户习惯、不满足用户要求都将降低用户对软件系统的认可度,甚至影响用户的工作效率,而使用户最终放弃使用系统。围绕界面元素所要达到的设计目的是让最终用户能够获得美感、提高工作效率、易于操作使用系统。

  目前在界面元素的选择、布局设计等方面的研究进行得较多,内容涵盖了人机工程学、认知心理学、、美学、色彩理论等方面的探讨。

  2.2用户角色

  界面需求分析必须围绕用户为中心,不同于客观功能需求分析,具有很大的主观性。虽然,界面设计人员可以按照通行的原则来设计,但是用户个体的文化背景、知识水平、个人喜好等是千差百异的,其界面需求也是相差很大。不同的用户,对软件界面有不同的要求,表达自己要求的方式也尽不相同。而且用户的界面要求通常不象业务功能需求那样容易明确、有据可查、可以利用专门工具进行分析。多数用户往往并不能提出明确的、全局的界面需求,其需求同自身主观因素联系紧密,是模糊、变化的。调查用户的界面需求,必须先从调查用户自身特征开始,将不同特征用户群体的要求进行综合处理,再有针对性地分析其界面需求。因此这里引出用户角色这个概念模型。

  用户角色是指按照一定参考体系划分的用户类型,是能够代表某种用户特征、便于统一描述的众多用户个体的集合。用户调查的目标是通过调查分析用户特征,将每个不能建立模型的单一用户归纳为集合,将用户集合定义为角色模型,同时赋予不同的优先级别,了解记录其界面需求。用户的需求调查和其特征调查即用户角色定义,往往同时进行。调查的方法有很多种,如直接交流、资料统计、表格调查等。用户角色定义的原则是有代表性、同系统功能有关并有利界面的需求分析。一个用户角色可能包括大量的用户个体,他们对于界面的要求可以按照一定的界面模型进行定义。在一个软件系统中,用户角色定义时所依据体系可以多种多样,一个单一用户可以属于不同参考体系下的不同用户角色,但是一个用户角色要求能够代表一种界面需求类型。如收银员就是按照用户工作职位划分出来一个用户角色,如果按照操作计算机的熟练程度,属于收银员角色中的系统用户又可以分为:熟练用户、生疏用户。

  用户角色定义就是人机工程学理论在软件开发过程中的一种应用。用户角色的确定可以根据系统需求方提供的用户资料和行业经验,如美学观念、用户计算机水平、用户工作内容等对用户进行初始角色定义,然后在需求调查过程中进行修正扩充。

  之所以要定义用户角色,是因为不同的用户角色在需求分析过程中的需求目标不同,侧重点也不同,甚至互相矛盾。在一个大型系统中,需求分析人员面对的用户只能是众多单一的用户个体,他们的需求千奇百怪。只有明确了用户角色,需求分析人员才能在纷乱复杂而又不甚明了的用户要求中理出脉络,依据用户角色不同的优先级别,平衡众多用户需求中的矛盾,抽象出完整的GUI界面模型。

  2.3需求变化

  我们知道用户对于界面通常只能提出基本的要求,而且提出的要求也不一定科学,因此如何诱导用户在项目进行中尽早明确自己的需求,是任何需求分析人员都会面临的问题。

  用户对目标系统的认识和需求的变化过程如下图所示:



  用户根据自己想象中的理想系统向分析开发人员提出自己的要求。开发方实现目标后交给用户,在系统实施运行后,用户将实际目标系统同自己想象中的理想系统对比,同时目标系统的使用会刺激用户修正想象中的理想系统,然后提出新的需求。由于软件界面的评审因素同用户的心理状况、认识水平有很大关系,所以对于软件界面,用户只有在使用过之后才能知道是否符合自己的操作习惯,颜色、字体等界面元素是否满足自己的要求,从而提出更明确的要求。

  2.4界面原型

  由于在软件开发前期,用户的界面需求很模糊,甚至没有自己的理想模型,用户提出的要求就很难量化,结果很容易被需求分析人员忽略。因此在用户角色定义完成后应用快速原型法来设计用户界面,可以帮助用户尽快完善自己的理想模型。

  利用界面原型可以将界面需求调查的周期尽量缩短,并尽可能满足用户的要求。快速原型法是迅速地根据软件系统的需求产生出软件系统的一个原型的过程,其主要好处是可尽早获得更完整、更正确地需求和设计。利用界面原型,用户可以很感性地认识到未来系统的界面风格以及操作方式,从而迅速作出判断:系统是否符合自己的感官期望,是否满足自己的操作习惯,是否能够满足自己工作的需要。需求分析人员可以利用界面原型,诱导用户修正自己的理想系统,提出新的界面要求。

  因此,界面需求分析的步骤可为:确定所涉及的界面元素,分析用户特征并定义用户角色,依据用户角色的界面需求设计界面原型并不断改进完善。

  3需求分析结果

  3.1面向用户的分析结果

  用户角色的优先等级是将不同用户的要求进行综合处理的重要参考依据。不同用户角色对界面的要求体现在界面元素的属性上,界面元素构成用户界面。界面元素的属性不同,最终的界面风格就不同。同一个系统中的不同用户角色,面对界面原型,提出的要求可能产生冲突,需求分析时依据用户角色优先级别的不同,对界面原型作出对应修改。

  不同用户角色的需求在目标系统中实现方法也有不同。用户需求是否目标系统中得到体现,取决于实现用户需求所带来的成本、效益,并不是所有的用户界面需求都会体现在系统界面中。界面同用户联系紧密,在特定情况下,可以利用培训用户的方式使用户满足系统的要求。

  友好的目标系统应该是同用户的理想模型接近甚至一致的,因此需求分析最终应该充分明确用户的潜在需求,并将用户需求在目标系统中实现。在需求分析过程中用户面对的始终是感性的可视化的实际运行界面,因此界面需求的结果就是满足自己要求的目标系统界面。

  3.2面向设计人员

  由于应用快速原型法后可以直接通过改进原型得到目标系统,而不必从头做起,所以一般可结合表格法一起进行分析,以利于形成准确的需求说明书。表格法就是将软件界面的构成元素分解为不同类别的最小单位并加以描述,按照划分后的元素单位拟定不同的设计方案,列出详细表格,用户可以按照描述说明作出自己的选择。如以下表格:

  字体及大小
  标题文字
   小四
   宋体加粗
 
  输入框文字
   五号
   宋体
 
  菜单文字
   五号
   宋体
 
  命令文字
   小四
   宋体
 
  帮助文字
   五号
   仿宋
 

  表格的设计原则为以界面元素为基本内容,依据用户角色和系统功能进行合理分割,能够全面、准确描述界面风格。其内容可以固定为三个部分:
平面设计、交互方式定义、功能模型定义。平面设计包括视觉设计、听觉设计等,通常是用户直接可以感受到的界面元素,能让用户从心理上获得舒适感、愉悦感。交互方式定义指计算机系统及软件系统同用户交流信息的方式,包括鼠标、键盘等的使用,是否有命令模式,是否有语音输出,信息显示方式等内容。功能模型定义是指根据每个用户角色要完成的一系列工作和任务,将对应系统功能按照一定的优先级建立成特定的模型,按照这种模型来来组织界面布局,方便用户完成一系列工作。实际上,大家用得很多的菜单和导航功能就同用户角色的工作系列有关。

  利用表格形成文档,目的在于方便交流,并在设计人员和用户之间建立一座沟通的桥梁。

  4结束语

  界面需求分析的结果应该是清晰、准确、符合用户习惯、满足人机工程学要求的界面设计方案,能够形成清晰的开发文档。该文介绍了将模糊却又时时存在的用户需求转化为清晰、准确的需求定义文档的一种方法。该方法可以作为进行需求分析的基本思路在实际项目中扩充发展、灵活应用。

  目前该方法在多个项目中得到实践应用,对提高软件系统友好性、降低系统实施成本方面颇有意义。