摘要:在科技高速发展、竞争日益激烈的今天,软件项目已经逐步显现大规模、复杂程度高而且时间要求紧迫等特征,并由此引发一系列新问题,软件项目因此失败的案例比比皆是。本文主要从软件质量的概念、软件项目质量管理的重要性、软件项目质量管理的内容、软件项目质量管理的方法与技术来进行探讨。
关键词:软件;项目质量;管理
一、软件质量的概念
对于软件质量,可以有不同的理解。有时候,质量指的是系统不失效;有时候,质量是指软件与用户期望之间达成一致,或者说程序配合完美;也有时候,质量指的是满足了一组特定需求,即正确地达到了指标的要求。简而言之,对“软件质量”可以做出这样的定义:“软件质量是指软件满足明确的或隐含的需求的程度”。软件质量对于软件经营成本的影响是本性的。低质量软件必然会加重对软件最后用户支持的负担。开发出低质量的软件,在不稳定的基础上进行生产,本身也会增加维护的费用。
二、软件项目质量管理的重要性
所谓软件项目的质量,就是指与软件项目产品满足明确或隐含需求的能力有关的特征总和,它主要反映了三个方面的信息特征:
(1)能满足客户需求的特性之全体;
(2)利用各种质量标准体系,指导软件开发人员开发软件;
(3)是否满足用户隐含需求。通过以上信息可以看出,不论软件开发模式如何演变,软件项目的质量始终是软件的核心竞争力。而要真正实现和提高软件项目质量,就必须通过执行项目质量管理,并通过使用一些基本项目质量管理工具和技术来实现。
三、软件项目质量管理的内容
软件项目质量管理包括建立对项目的软件产品质量的定量理解,和实现特定的质量目标,着重在于确定软件产品的质量目标、制定达到这些目标的计划,并监控及调整软件计划、软件工作产品、活动及质量目标以满足顾客及最终用户对高质量产品的需要及期望。软件项目质量管理的过程一般应包括软件项目质量计划编制,软件项目质量保证,软件项目质量控制等几个方面。
(1)软件项目质量计划编制
在软件项目质量计划编制过程中重要的是确定具体软件项目的相关质量标准,把质量计划贯彻到软件产品和管理项目所涉及的软件过程之中。质量计划编制还包括必须建立一种能理解的、完整的纠正措施以确保软件的质量。在项目的质量计划编制中,描述能够直接促成满足顾客需求的关键因素是很重要的。
(2)软件项目质量保证
软件项目质量计划编制软件质量保证是贯穿整个项目全生命周期的计划性和系统性活动,经常性地针对整个项目的质量计划执行情况进行评估、检查与改进,向管理者、顾客或其他方提供信任,以确保项目质量与计划保持一致。典型的SQA的职责包括:过程指导、过程评审、产品审计、过程改进、过程度量。
1.过程指导:企业成熟度等级较低时,由于过程体系尚处于建立过程中,员工的过程意识不强,所以SQA的工作主要集中在收集最佳实践、定义过程体系和培养员工建立过程意识方面。
2.过程评审:“过程评审”是对软件元素或者项目状态的一种评估手段,以确定其是否与计划的结果保持一致,并使其得到改进。其目的是为了及早和高效地从软件工作产品中识别并消除缺陷。过程评审的对象是公司的各个过程。
3.产品审计:产品审计的目的在于确定产品的缺陷,通过审计,可以将问题记录下来,使其具有历史可追溯性。
4.过程改进:过程改进是一种管理工作,其效果要通过业务部门的产品开发人员来体现。只有项目组的产品开发完成得更快、更好,才能体现出过程改进的价值。成熟的过程改进小组有三个特征:计划性、系统性和创造性。
期刊文章分类查询,尽在期刊图书馆
5.过程度量:当企业达到了高成熟度等级,过程的执行已经高度制度化,成为员工的工作习惯时,过程评审和产品审计所需要的工作量也大量减少,而定量管理需要SQA作为专业人员更多地投入度量分析工作中。过程度量是针对软件开发项目的特定度量,目的在于度量项目规模、项目成本、项目进度、顾客满意度等,辅助项目管理进行项目控制。
企业不同成熟度等级对SQA职责的要求有较大的不同,过程成熟度是影响SQA工作分布很重要的因素之一。企业在建立SQA组织时,应根据自身的需要,考虑到企业文化、成熟度等级,以及可获得的资源等因素,因地制宜。只有选择了合适的SQA组织形式,SQA人员具备相应的能力和素质,才能保证质量管理体系良好地运作,从而实现产品零缺陷、工作零错误的最终目标。在嵌入式导游导航地理信息系统中,SQA的工作主要包括项目计划指导、培训、过程审计、配置审计、组织工件评审、与客户代表沟通、质量保证报告、结案等。
(3)软件项目质量控制
软件项目质量控制是指监视项目的具体结果,确定其是否符合相关的质量标准,并判断造成不合格结果的根源。软件项目质量控制应贯穿于项目的始终。软件项目质量控制通常由机构中的质量控制部门或名称相似的部门实施,但实际上并不是非得由此类部门实施。项目管理层应当具备关于质量控制的必要统计知识,尤其是关于抽样与概率的知识,以便评估质量控制的产出。
四、软件项目质量管理的方法与技术
(1)配置管理技术
配置管理可以理解为:采用技术手段和行政手段进行管理和监督的一套规范化方法;对配置项的功能特性和物理特性加以标识,并将其文档化;控制这些特性的变更;报告变更进行的情况和变更实施的状态以及验证与规定需求的一致性。软件配置管理是对项目生命周期中的各阶段产品和最终产品演化和变更的管理,是软件项目管理和项目质量管理的重要组成部分。软件项目的成败在很大程度上取决于对其开发过程的控制,这包括对质量、源代码、进度、资金、人员等的控制。在开展配置管理工作之前,首先应根据项目特点,对项目实施过程中涉及到的配置项进行分类工作。一般来说,一个完整的软件项目应包括软件开发文档、程序代码、集成文档、维护文档项目管理文档等五类配置项。
(2)软件测试技术
测试是一个验证项目实施阶段是否满足需求的逆向过程,在所有的软件开发过程中都是最重要的部分。测试是软件项目管理质量控制过程实质性采用的工具和技术。经过多方面的测试活动,通过消除各种错误来保证项目的质量,使整个项目的交付成果基本满足了客户的需求。
(3)代码走查与缺陷追踪
代码走查的作用是非常有效率的,它可以检查到其他测试方法无法监测的错误,好多的逻辑错误是无法通过测试手段发现的,许多项目证明这是一个很好的质量控制方法。缺陷追踪要从缺陷发现就开始,一直到缺陷改正为止。缺陷的跟踪要逐一地进行,也要在统计的水平上进行,包括未改正的缺陷总数,已经改正的缺陷百分比,改正一个缺陷的平均时间等。缺陷追踪是可以最终消灭缺陷的一种非常有效的控制手段。
总结语
随着信息化建设的不断发展,应用软件功能薄弱、响应速度慢、后期维护困难等诸多问题日渐凸显,提高软件开发质量已成为信息化建设的当务之急。当今,并不缺乏先进的软件质量管理技术,但却缺少有效的软件项目管理机制。由于项目建设方与承建方在软件项目建设中存在着信息的严重不对称,建设方无项目建设经验且信息技术力量不足,而承建方存在着业务信息的弱势,致使双方无法有效的沟通,导致应用软件开发频频失利,故软件监理机制被提到信息化建设的日程上来。目前,软件监理机制还处于探索和初期应用阶段,基本上采用建筑工程监理方式,且软件监理行业还未能普及,其发展前景还有待于进一步观察。在未来很长一段时间里,利用具有软件开发实践经验和管理知识的企业人员担任软件项目监督对软件项目开发过程进行全面的质量控制是提高软件质量的最佳手段。
参考文献:
[1]苏秦,何进,张涑.软件过程质量管理.北京:科学出版社,2008.
[2]朱少民.软件质量保证和管理.北京:清华大学出版社,2007.
[3]李金海.项目质量管理.天津:南开大学出版社,2006:29-30,59-85,153-158.
[4]钟志永,姚珺.大学计算机应用基础.重庆:重庆大学出版社,2012:233.
论文作者:李坤锐
论文发表刊物:《基层建设》2017年4期
论文发表时间:2017/5/23
标签:软件论文; 项目论文; 质量论文; 过程论文; 质量管理论文; 质量控制论文; 缺陷论文; 《基层建设》2017年4期论文;