谈基于UCD的软件开发设计

时间:2022-10-16 08:56:02

谈基于UCD的软件开发设计

摘 要:随着软件开发的发展,工程师们发现只是针对于技术突破埋头苦干,并不能解决软件行业危机,软件的维护成本越来越高,成功率却降低,软件开发方法成为了人们研究的重点问题。本文提出了 UCD软件开发方法,是以用户为中心的软件设计,是当前IT行业很流行的一种软件设计理念,也在欧美等国家软件发达取得了成熟的发展。在此介绍UCD方法开发软件的四个流程。

关键词:UCD;用户中心;软件开发;可用性测试

中图分类号:TP31 文献标识码:A

随着软件开发技术不断发展,软件开发也经历了程序设计、程序系统和软件工程阶段,工程师们发现只是针对于技术突破埋头苦干,并不能解决软件行业危机,软件的维护成本越来越高,成功率却降低,软件质量也达不到要求,于是,软件开发的方法以及过程管理成为了软件开发的中心。

UCD(User-Centered Design),是以用户为中心的软件设计方法,是当前IT行业很流行的一种软件设计理念,也在欧美等国家软件发达取得了成熟的发展。与之前以技术为中心的软件设计不同,使用这种方法设计出来的软件产品成功率和质量要远远高于传统方法,无疑也比传统软件开发方式更具竞争力,从下表可以看出两种方法的区别:

表1

使用UCD方法开发软件有四个主要阶段,计划阶段,概念阶段,详细设计开发阶段和生存周期管理阶段。

1 计划阶段

这个阶段类似于传统方法的需求阶段,不同的是UCD方法要求开发者与目标用户一起工作,以用户的观点看问题,理解用户工作过程。

所以如何选择用户群是一个难题,首先可以在公司范围内选取几个目标用户,还可以通过电话、网站等有偿招收一部分用户群,包括潜在用户、可能会成为用户的人群,让这些用户有机会参与到软件开发的会议或者是实验室工作中,这种方法可以很好地提升软件的可用性,从而大大增加软件的成功率和受欢迎程度。例如微软公司就在西雅图有上万人的用户数据库,可以帮助他们昨产品研究。

当然,为了保护公司技术可以让用户签订保密协议一类的文书。

2 概念阶段

概念设计阶段的顶点是客户看见、听见、和触及的所有事物的高级(high-level)设计。在概念阶段要整理要计划阶段完成的需求分析,通过各种调查研究手段,形成一个软件模型,这个阶段要注意的是从一个比较高的抽象度开始概念设计,不要过快地转移到细节上。如果可能的话同时开发多个原型,从而选出最优的模型。

为了降低成本,可以使用多种纸面草图、模型和原型来支持创意过程,获取需求,将想法和解决方案可视化,在开发项目的早期,应该观察和分析用户对于纸面草图和实物模型的反应,然后在项目的后期,用户应该使用模拟系统或者原型来完成真实的任务,并且应该观察、记录和分析他们的行为和反应。

3 详细设计和开发阶段

通过第二阶段的分析设计,进入详细实施的开发阶段,这个阶段要注重设计过程要有用户参与,从而可以进行反复的修改进化。

在此,UCD方法提出一个很好的软件测试方法,就是使用可用性实验室。简单的可用性实验室只需要配置一块单面镜,几台多角度的摄像机和一台电脑,然后让用户在里面进行软件功能的操作,工程师通过单面镜观察用户使用的过程,并用摄录机把用户的使用过程录制下来,随后进行分析,查看用户在没有帮助的情况下完成任务的比例,完成任务所用的时间以及用户寻求帮助的次数,这些指标对于描述可用性水平很有帮助,如图。

为了个更好的对软件产品进行评价,UCD提出一种启发式评价方法,启发式评价是检查用户界面设计的另一种方法,以确定可用性问题的本质,启发式评价提供了确定潜在可用性问题的基本方法,启发式评价的内容是:

表2中的内容都是用户在使用软件过程中非常重要的评价指标,如果能够按照这个方式去评价软件,将软件的优点好好保留,缺点很好地解决,那么用户怎么能不爱上它呢?

4 生存周期管理阶段

UCD方法也是一个具有完全周期的过程,生存周期管理阶段收集的数据非常重要,是改善产品的后续版本、开发新产品的相关依据,在这里要重视三个方面:

4.1 客户满意度调查

客户满意度调查描述了客户对于所接受的服务级别、得到的产品满足商业需求能力的满意程度。可以说使客户满意的产品才具有市场竞争力。

4.2 按照项目设计的核心任务,将最终产品和竞争产品进行比较

核心任务就是软件的主要功能,想要科学的得出产品使用结果,需要完成对核心任务的定量测量,调查用户任务执行时间,在使用过程中需求助帮助的次数,错误次数等。

4.3 项目完工后需要进行后期评价

总结项目成功与失败的原因,以便在将来的项目中得到改进,开发小组的关键成员参加总结,项目总结最好不要让项目领导主持参加。

所有的软件都是工具,软件开发人员是工具制造者,并不是艺术家,设计中要考虑的并不是自己所看所想,一定要从用户的角度出发,当工程师的关注点从内部视角转向注重客户和最终用户的外部视角时,可用性、实用性和能力自然就成为保证软件质量的关键因素。

参考文献

[1]冯博琴.用户中心设计——集成化方法,[M]高等教育出版社.

上一篇:浅谈水利工程测量中的GPS系统应用 下一篇:行走在米甸的春天里