软件项目质量管理的研究
2017-04-06
(中国人寿数据中心 北京 100020)
软件项目质量管理的研究
高婕
(中国人寿数据中心北京100020)
软件项目质量管理是一个贯穿整个软件生存周期的重要问题。重视软件项目质量管理,规范软件项目质量管理体系,对整个软件项目管理有着非常重要的促进作用。研究论述了软件项目质量管理的重要性,介绍了软件项目研发中的项目质量管理的过程与原则,着重阐述了如何提高软件项目质量管理的方法。
软件项目;质量管理;方法
随着计算机技术的进步,生产规模的扩大,计算机硬件的价格不断下降,软件成本在整个计算机系统中所占比例越来越大。软件项目已经逐步显现大规模、复杂程度高而且时间要求紧迫等特征,并由此引发一系列新问题。软件项目的失败,通常不完全因为技术上的问题,而是管理工作的疏忽,尤其是质量管理工作的缺失。
一、软件项目质量管理的重要性
软件行业是一个高智力密集型行业,软件开发的过程会受多方面因素的影响。从软件项目的开始到结束过程中不确定的因素太多,使得在按时提交软件产品的前提下有效保障软件质量成为一个比较棘手的问题。
二、软件项目质量管理过程
软件项目的质量管理指的是保证项目满足其目标要求所需要的过程,它包括编制质量计划、质量控制、质量保证等过程。
(一)编制质量计划。质量管理的基本宗旨是“预防胜于检查”,一个清晰的质量计划能够指导软件项目的实施,输出高质量的软件产品。在质量计划中应该根据所研发项目自身所具有的特征与实际情况来进行,对于会影响质量问题如“设备、人员、环境”等各方面原因进行细致分析并且要制定出与其相应的预防措施。对于软件项目来说,质量标准包括允许系统升级、为系统计划一个合理的响应时间、确保产生一致和准确的信息等。
(二)质量保证。质量保证的主要任务是制定质量标准和质量控制流程、明确质量管理体系等。这一过程贯穿整个软件项目全生命周期,经常性地对整个项目执行情况进行评估,以确保项目质量与计划保持一致。
(三)质量控制。质量控制的主要用途是预防缺陷,控制产品的质量,及时纠正可能的缺陷,确保软件项目质量与质量标准保持一致。
三、软件项目中质量管理的原则
现在国内很多软件企业都已经意识到了软件产品质量的重要性,同时也意识到软件质量受进度、成本两大因素的影响。因此在项目实施中做好质量管理工作应该坚持自己的原则。
(一)尊重客户的需求,建立良好的互利合作关系。在实际中有许多企业曾一度认为商业利益高于客户的利益。但是在软件产业发达的今天,拥有高质量的产品、诚信于客户的企业,一定会成为客户的第一选择,因此,处理好客户的需求,建立良好的互利合作关系是非常重要的。
(二)重视软件开发团队的团队精神。软件开发团队作为项目开发的基本工作单元,是确保项目能否顺利实施的基础平台。在一个软件开发团队中,任何个人的能力是有限的,做到人尽其才,充分发挥个人的主观能动性,打造有战斗力的开发团队,不仅会对质量管理产生影响,而且会直接影响整个项目的实施过程,因此,团队的合作精神也至关重要。
(三)建立系统的质量管理体系,逐步促进软件开发良性循环。我们熟知的软件能力成熟度模型(CMM)和国际标准ISO9000,都对质量管理做了详尽的描述,但缺乏对实际工程操作的详细指导。因而针对不同的企业,应该建立一个符合企业自身管理水平的质量管理体系,只有这样才能使质量管理的实际效果充分的发挥出来,开发出高质量的软件,从而促进软件开发的良性循环。
(四)将质量管理切实应用到实际项目实施中。早些年国内的很多企业,为了竞争,采取“抢进度、降低成本、牺牲质量”等措施,导致质量管理不当致使许多软件公司难以维持,甚至于破产,使软件产业曾一度陷入恶性循环中。
四、提高项目质量管理的方法
(一)明确用户真实的需求。明确用户的真实需求是软件开发的基础,在软件项目失败的案例中,大部分是因为一开始需求分析的不明确造成的。由于开发人员未能对用户的需求做实际调查,而且对于干系人的需求覆盖的不是很全面,这些有时不会影响项目的前期实施,但是到了后期会有明显的影响,甚至会导致项目的夭折。因此,明确用户的真实需求,是保证软件产品质量能否合格使用的关键环节。
(二)实行代码走查。软件的质量在很大的程度上依赖于代码质量,但实际项目组中各个成员的能力、编码习惯、对需求的理解和个性的不同,所开发的代码质量也不尽相同。因此,在软件开发过程中可根据需要引进代码走查。每周在规定的时间内,让程序员讲解其所开发代码的主要部分,这样不仅能促使程序员关注自己所开发代码的质量,还能促进组内成员的交流和学习,从而使得软件质量更有保障。
(三)实施项目跟踪控制管理。项目跟踪控制管理主要是通过跟踪和控制两个环节,对于项目实施的全过程进行跟踪控制。这一过程不仅反映出软件项目是否按计划进行开发,产品的性能是否合格,而且也需要对于计划在项目实施过程中是否合理进行跟踪。然后通过反馈,对于那些不合理的、存在潜在问题的因素进行纠正和更改。
(四)实施软件测试。在项目实施质量管理工作中,软件测试是保证软件质量的重要手段,也是让用户直观地了解软件质量和熟悉软件操作的有效途径。软件测试的目的是根据用户需求检查系统是否符合项目合同与任务书规定的要求,不仅在于发现软件的缺陷,而且为软件过程改进和管理提供确切的数据依据。测试活动要尽可能覆盖整个项目过程,重点做好测试用例设计、功能测试、性能测试、缺陷管理等工作。
(五)常用技术和工具
1、统计抽样检验,是指按预先规定的抽样方案,从总体中随机抽取规定数量的样本,进行检验,它是统计方法中一种有效的检验方式,由于全数检验方式所花的时间和费用都比较高,一般只用于一些特定项目的检验中,如关键性指标、安全性指标的检验。所以在软件项目质量控制中,常常采用抽样检验方法。
2、帕累托分析。帕累托分析有被称作“二八定律”,该方法强调80%的问题经常是由于20%的原因引起的。软件项目质量控制用帕累托法则来分析造成系统质量问题的诸多因素中最为重要的几个因素。首先找到原因并且收集相关的信息,然后通过绘制帕累托分析图,找出的几个关键原因,依据重要性排序,最后采用改进技术消除产生问题的原因。
五、结语
软件项目的质量管理越来越受到企业的重视,但是要将项目质量管理恰如其分地运用到实际的项目中,并且使各个企业能够依据自身的特点制定出适合自己的管理规定和制度,还有待于软件行业的不断发展和规范。本文介绍了软件项目质量管理的重要性以及软件项目质量管理的过程与原则,重点研究了软件项目质量管理常用的方法与技术。
[1]吴吉义.软件研发中的项目质量管理工具与技术[J].微型机与应用,2007(S1):43-46.
[2]李彭,高世臣.大型软件系统的项目管理研究[J].科技情报开发与经济,2007,17(33):195- 196.
高婕(1990-),女,汉族,陕西耀县,工程师,管理学学士,中国人寿数据中心,研究方向:IT项目管理。