软件项目质量管理论文

2022-04-17

摘要:电信行业日益激烈的竞争使得其对于高质量的软件有了更大的需求,而电信行业的特点也使得电信业软件项目质量管理工作更为复杂。本文首先厘清了软件质量与软件项目质量的不同涵义,进而根据电信行业的特点,从质量计划、质量保证以及质量控制这几个方面论述了在电信业软件项目的执行过程中提高项目质量所应该注意的问题以及需要完成的工作。下面是小编精心推荐的《软件项目质量管理论文(精选3篇)》,希望对大家有所帮助。

软件项目质量管理论文 篇1:

基于CMMI体系的软件项目质量管理实践分析

摘 要:文章以软件项目的生产特征为切入口,简要分析了软件项目质量管理结构影响因素,提出了几点基于CMMI体系下创建完善的软件项目质量管理框架的建议,以供参考指正。

关键词:CMMI体系;软件项目;质量管理

资源的多寡是软件项目实施效果的主要限制因素,因而不同的软件项目规模也需要采取不同的模式加以管理。CMMI体系作为新兴的软件项目质量管理体系,自其上线以来,极大地促进了我国软件生产企业的发展。

1 软件生产项目的特征分析

较之其他的计算机配套产品开发项目而言,软件项目有其鲜明的特色,大致上可概括为项目独立性、层次不明性、规模限制性等方面。

1.1 项目独立性

软件项目的开发环境一般是视机型与硬件配置而定的,因而具有突出的独立性,此外,软件项目的独立性还体现在项目的目标定位方面,所采取的项目开发方法以及语言等均带有鲜明的特性。因此,软件生产项目其内容、目标、方法等均带有显著的独立性,研发基础形式各异,因而实现统一形式的资源管理并不现实。

1.2 层次不明性

在软件项目当中,开发人员扮演的往往是“全能战士”的角色,需求分析、设计开发、软件测试等均是一手抓,分工层次非常模糊。此外,软件项目职责划分的标准为人员,而非角色,对软件过程改进的组织方式造成不利的影响,软件工程组的职责未能得到深入的明确,该方面亟待改善。

1.3 规模限制性

软件项目的基本特征就是组成人员少,资源有限,在软件研发的过程当中,资源的占用并非是简单的线形关系,传统的20:1的资源占用比例难以满足新时代软件项目的实际需求。因此,需要积极改善软件开发过程的各个细节,一般而言,软件企业与软件项目其管理核心是一致的,均是以有限的资源提高软件项目的整体质量,在两者之间寻找到合适的平衡点。

2 软件项目质量管理结构影响因素分析

笔者认为,软件项目的质量可以用如下的函数关系式来表示:

Q=f(M,P,T)

式中:

Q为软件质量;

M为开发人员;

P为开发过程;

T为开发技术。

经该函数式加以计算分析,可得出软件能力成熟度模型,在软件能力成熟度模型的基础上对影响软件项目质量管理质量的因素进行全面的总结与分析。基于项目管理的专业角度而言,质量管理可以说是组织管理、人员管理、技术管理三者的综合体,任何一个环节出现问题,对软件项目的质量管理均可能会造成负面的影响。软件项目质量管理影响因素示意图如图1所示。

3 基于CMMI体系的软件项目质量管理框架分析

软件研发是一项系统而复杂的工作,影响因素诸多,过程、人员、技术三者被视为独立的个体因素,唯有将三者紧密结合,才能确保软件项目的质量管理达到最佳的状态,这是CMMI体系的核心应用目标。而在过程、人员、技术三者当中,人员作为核心的主观能动性因素,集中体现出软件项目的整个质量过程的工作水平。在CMMI体系的指导下,可创建软件项目质量管理的完整框架,如图2所示。

在过程、人员、技术三个影响挺俗的基础上可加以进一步的剖析,分离出DT、PM、DR、PC、SC五项要素,各要素之间相互作用,相互影响,直接决定着软件项目质量管理工作水平的高低。在Q=f(M,P,T)的基础上还可衍生出一个软件项目质量控制模型函数关系式,如下:

SQ=f(DT、PM、DR、PC、SC)

式中:

SQ为软件项目质量;

DT为开发工具;

PM为成熟度;

DR为所需资源;

PC为人员能力;

SC为复杂程度。

3.1 DT——所使用的开发工具

基于CMMI体系,软件项目所采用的开发工具往往会直接影响到软件项目本身的质量管理,且会对其余的要素产生显而易见的影响。在CMMI体系之下,软件开发所采用的工具应秉持“少而精”的基本原则,因为所采用的软件开发工具越多,软件项目的一致性也就会越差,两者总体成反比例关系,加大了软件系统的协调性工作难度。

3.2 PM——软件开发过程成熟度

软件开发者管理开发过程工作水平的高低直接决定着软件开发过程成熟度的高低,两者总体成正比例关系。在CMMI体系之下,PM的作用直接体现在反映出软件开发过程能力投资水平的优劣。一般而言,软件开发过程的成熟度越高,软件项目的自我控制与改善的能力就越强,出现重复工作与开发错误的激烈也随之降低,软件项目的整体质量得以保证。

3.3 DR——软件项目所需的资源

软件项目所需的资源大致上可概括为人力、物力、财力三类,作为软件项目质量管理当中的核心要素,DR间接或是直接地影响到其余的四项要素。在CMMI体系软件项目质量控制模型之中,软件项目本身的质量与软件项目所需的资呈现出互补的关系,软件项目质量的提高理论上可降低开发错误的发生率,然而其中的实质性工作可能会出现重复的问题,造成了严重的资源浪费,增加了软件项目的成本投入。基于提高软件项目整体质量以及降低开发成本的目的,必须要提高DR的使用效率,严格遵循软件项目的系统步骤,落实系统测试与代码审核等方面的工作。

3.4 PC——开发人员能力

PC可具体分为软件项目开发人员的个人能力以及小组的整体能力,对SQ有着显著的影响。整体而言。PC越强,DR当中的时间资源也就越少。在CMMI体系之下,可得知往往存在质量问题的软件项目,其根本症结在于软件项目的开发人员未能结合软件项目的实际情况与使用环境,综合地考虑问题,仅凭自身的工作经验难以保证SQ。

3.5 SC——软件的复杂程度

软件的复杂程度基本上取决于其相关业务的复杂程度,以执行程序语句以及系统模块的数量进行测量。软件的复杂程度涵盖技术、决策、数据三个方面,其中技术集中体现在实现系统功能的难度,决策集中体现在软件项目决策路径复杂性,数据集中体现在软件项目当中数据结构的复杂性。SC越大,SQ也就越难以保证。

4 完善基于CMMI体系的软件项目质量管理框架的

建议

由上文可知,在CMMI体系之下,对于DT、PM、DR、PC、SC均有着更高的要求,针对软件项目质量管理的不足,必须加大软件项目开发过程的建设力度,以DR为核心,其余要素均其辅助的作用,合理应用软件项目的开发工具,严格控制软件质量。在CMMI体系的指导下,捏合软件项目质量管理的各项特点,划分明确的层次,提高CMMI体现在软件项目质量管理当中的实践应用价值。基于CMMI体系的软件项目质量管理新框架如图3所示。

5 结 语

综上所述,CMMI体系是改善软件质量管理的有效途径之一,具有高度的可行性。促使软件项目运作环节的持续完善,提高执行效率以及资源利用率。软件产业的从业人员需要在明确软件生产项目特征的基础上,以CMMI体系为指导,科学管理控制软件项目的质量。

参考文献:

[1] 李飏,李丹.基于CMMI的软件项目质量管理研究[J].电子技术与软件工程,2014,(6).

[2] 李飞飞,朱超.基于CMMI的企业软件项目质量管理研究[J].商场现代化,2014,(15).

[3] 葛文勇.基于CMMI的软件项目质量管理研究[J].信息通信,2014,(8).

[4] 张仲雷.基于CMMI的软件项目质量管理框架[J].中小企业管理与科技(下旬刊),2009,(9).

[5] 费丽,何玉敏,吴超英,等.金和软件公司基于CMMI的项目质量管理研究[J].北京航空航天大学学报(社会科学版),2012,(3).

作者:韩少华

软件项目质量管理论文 篇2:

软件项目质量管理探讨

摘要:电信行业日益激烈的竞争使得其对于高质量的软件有了更大的需求,而电信行业的特点也使得电信业软件项目质量管理工作更为复杂。本文首先厘清了软件质量与软件项目质量的不同涵义,进而根据电信行业的特点,从质量计划、质量保证以及质量控制这几个方面论述了在电信业软件项目的执行过程中提高项目质量所应该注意的问题以及需要完成的工作。

关键词:软件 项目质量管理 电信

随着国内市场的开放,我国的电信行业不仅要面对国内同类型企业的竞争,而且还要接受国外电信企业的挑战,甚至是与美国电话电报公司(AT&T)以及德国电信(Deutsche Telekom)等国际领军型的电信服务公司同台竞技。在这样的背景下,我国的电信业必须改变传统的经营理念与经营模式,快速建立起一套“以市场为导向、以客户为中心、以效益为目标”的新型企业模式[1]。而电信业要实现这一战略转型就必须具有高质量的信息系统,其中能够帮助企业提高运营效率的软件更是不可或缺。电信企业一般将软件开发的任务外包给专业的软件企业,因此,电信业的软件开发是一个复杂的项目,有效的项目质量是保证所开发的软件具有较高适用性以帮助企业达成战略目标的关键。

1 软件质量与软件项目质量

电信企业要想应对市场的挑战就必须转变经营模型,而转变经营模型则必须具有帮助企业提高经营绩效的软件,这一点已经成为许多电信企业的共识,很多电信企业的管理者也都意识到了软件质量的重要性,因此投入大量的人、财、物以开发高效的软件系统。然而值得注意的是,企业开发软件(电信企业一般将软件开发的任务外包给专业的软件企业)的过程是一个复杂的项目,该项目的质量并不等同于项目所开发软件的质量。软件质量是指软件产品能够满足客户需求的所有特征和性能的总和,而软件项目质量则是软件开发过程中所涉及的各项工作的质量,即对所开发软件质量的保证程度。电信行业的基础设施建设需要耗费很大的成本,因此对软件质量的过高要求必然会增加企业的经营负担。从这个意义上讲,对于电信业而言,电信企业软件项目质量管理的目的就在于通过软件开发过程的管理确保所开发软件的适用性,实现以较少的成本投入研发适合企业经营的软件产品。

2 电信业软件项目质量管理

软件项目质量管理的涵义是确定软件项目的质量方针、目标和职责,并通过质量计划、质量保证与质量控制各项工作确保软件开发项目中各项工作的质量,进而保证所交付的产品满足客户的需求。

2.1 质量计划

对于软件项目质量管理而言,必须先制定出一套较为完善的质量计划,才能够以较大的概率完成软件项目质量管理的目标。制定软件项目质量所依据的应该是企业对与项目质量所制定的的战略目标。我国企业采取的等级结构一般都是典型的金字塔型结构,管理者特别是高层管理者的理念与意识对于企业的各项工作能够产生非常大的影响。从这个意义上讲,质量计划应该是电信企业与软件企业高管层的责任,而软件项目的质量就应该是由企业高管层所规定的关于项目质量的战略规划以及工作的方向。

软件项目质量计划的目的是确保软件项目的质量,因此就涉及到了衡量软件质量的问题,即判断质量计划中的项目质量是否已经达到较高的标准。对于这一问题,软件开发企业通常所采用的做法通常是与行业内项目质量的均值作比较,以此判断本项目的质量能否达到行业内的平均标准。

2.2 质量保证

质量保证的一般含义是为了证明项目能够达到有质量的标准而在质量体系中所进行的工作。因此,质量保证工作必须确保项目涵盖了能够达到质量要求的所有工作。若质量保证工作确定项目已经满足要求,则可以继续进行下一个环节的工作,即质量控制,反之,则要先完善项目质量计划工作。

对于软件项目而言,质量保证的具体内容包括几个方面:(1)具有清晰的软件需求分析。需求分析是软件达到客户要求的基本评价标准,也是软件项目质量评价的基本依据,因此,必须确保软件项目具有清晰、可行的需求分析。(2)具有科学的软件项目质量体系与质量标准。需求分析是判断软件质量的标准,而根据前文所述,软件质量是否达标只是评价软件项目质量的基本标准。因此,但仍然有必要从多个维度建立、健全软件项目的质量体系以及质量标准。特别是对于电信企业而言,所面对的市场具有很大的不确定性,有鉴于此,电信企业软件的项目质量更需要建立、健全质量评价体系,制定完善的评价标准。(3)具有完成项目所必需的各种资源。电信企业的基础设施建设需要耗费大量的成本,电信企业的软件项目也同样需要大量的人、财、物等资源。因此,在质量保证工作当中需要确定企业具有达到项目质量标准所必需的各种资源,以保证软件项目能够达到其预定的标准。

2.3 质量控制

质量控制工作是指评价项目成果是否符合相关的质量标准,并且当项目成果未达到标准时,对其原因进行分析并找到解决的方法。当项目的成果达到质量标准时,相关产品就可以交付使用了,反之,则需要对质量计划与质量保证两项工作进行改进,以保证项目成果能够符合相关规定。

具體到软件项目,质量控制包括两项具体的工作:(1)判断所开发的软件是否达到客户所指定的标准,若已经达到,则可以继续开发,反之,则要对产品进行改进,保证产品能够满足客户需要。(2)判断项目的成本与进度执行是否达到质量计划中的标准,若已经达到,则项目可以继续进行;反之,就要判断,是质量计划制定得过高,抑或是具体的执行工作还有待改进以及怎样改进。

上述这两项工作实际上都是反馈控制(即事中控制),即在软件开发项目的执行过程当中对开发工作的绩效进行判断。电信行业的市场特征使得电信行业的软件项目具有较大的不确定性,采用事前控制的策略是较为困难的,而事后控制策略对于当前正在进行的项目并没有太大的实际价值,若当前的软件项目在执行过程中已经产生成本浪费,使用事后控制策略不能及时发现问题进而采取措施。因此,在质量控制工作当中应该采用反馈控制策略对各项工作进行合理的规划。

3 结语

电信业软件项目质量管理对于电信企业以及与之合作的软件企业的发展都有很大的意义,相关企业的管理者应该给予充分的重视。在具体的项目质量管理工作中,相关企业的领导者要根据企业对于项目质量的战略目标制定合理的质量计划,通过质量保证工作确定项目涵盖了能够帮助达成质量计划的所有工作,并通过质量控制工作对产品以及项目的成本与进度进行反馈控制,以此提升项目的质量,即所开发软件满足客户需求的基础上,做到节约项目成本、加快项目进度。

参考文献

[1] 卢有杰,王勇译.项目管理协会,项目管理知识体系指南(第3版)[M].北京:电子工业出版社,2005.

[2] 戴和义.电信业务支撑系统软件质量管理初探[J].江苏通信技术,2005,21(2):38~41.

作者:吴英

软件项目质量管理论文 篇3:

基于CMM软件项目质量管理的研究

摘要: 软件企业或单位软件过程的改进是软件能力成熟度模型关注的焦点,首先对软件能力成熟度模型进行简单介绍,并以中小型软件企业为分析对象,对其软件过程管理现有不足进行探讨,之后对模型的改进及实施方案进行深入阐述。

关键词: 软件能力成熟度模型;软件过程管理;项目测试

0 前言

中中国软件行业协会相关统计资料显示,从数量上来分析,我国拥有的软件企业并不少,然而大多数的软件企业的规模有限,抗风险能力有限。实践证实,中小型软件企业在进行软件项目研发的过程中,管理无序、工期延期、系统缺乏可维护性以及经费预算不准等问题普遍存在,这些问题给软件企业业务的开展造成了极大的负面影响,甚至会造成软件项目失败。笔者分析,导致这些问题的主要原因并非研发技术不够先进,软件研发人员的业务能力不够,而是这些软件企业在进行软件研发过程中处于无序状态,将主要的注意力集中在技巧方面,对管理的重视程度不够,换句话说,就是软件生产过程对目标管理关注过度,而忽视了过程管理。

1 CMM相关理论及等级选择

CMM,即软件能力成熟度模型,其主要关注的焦点为软件企业改进软件生产过程,致力于不断提升软件研发组织或项目的软件过程能力以及软件成熟度。对软件能力成熟度模型准确而合理的运用可以促进软件研发质量及效率的不断提升。软件能力成熟度模型自提出之后,其影响范围迅速扩大,并得到广泛应用,给各国软件行业带来了深远影响,其作为国际主流行业标准的角色已经得到普遍认可。按照从高到低的顺序,可以将软件能力成熟度模型划分为五大不同等级,其共涉及关键过程域18个,目标52个以及关键实践316个。所有成熟度等级主要是由初始级以及软件能力成熟度模型数个关键过程域构成。CMM2级企业已经具备软件项目管理相关测量以及具体的实施规程,软件研发及维护过程波动不大,并具有可以重复使用的成功经验。以项目为主要对象制定过程管理策略,项目经理的主要职责是对成本、进度以及软件功能进行跟进,并找出其中存在的不足;遇到问题时,具备识别及纠正的能力,并可以实现相关承诺。CMM等级及管件过程域分类详见下表所示。

对基于中小型软件企业而言,企业规模有限,但一般具备突出的创造力,灵活性也较高,容易沟通;在人才配置方面,主要是技术研发人员,其同时兼顾管理,一般没有专业且经验丰富的管理人员;质量意识淡薄,管理水平有限,软件研发规范性有待提升;大多数是短期星期,产品及过程欠缺重复利用性。结合中小软件企业实际存在的上述不足,在实施软件项目研发管理的过程中引入CMM项目管理标准,可以为软件项目的实施及管理提供比那里,在很大程度上提升软件项目过程及质量。若以CMM标准为参考,中小型软件企业尚处于CMM初级阶段,从这点分析,由CMM2级切入较为适合;但笔者并不赞同对CMM2级管理标准进行简单的照抄照搬,原因在于:1)CMM内容的复杂系数较高,具备较为完善的标准,中小型企业的资源有限,若进行过度评审和实践将会造成实施上的不便;2)CMM培训时间长、花费大,会给中小企业造成极大压力;3)CMM只对软件能力成熟度要实现的结果作出了相关规定,但并没有对如何实现这样的结果作出说明。所以,要想使其更加适应于中小型企业的CMM,还需要对CMM管理内容及相关标准进行优化。

CMM软件的技术核心是网络计划,因为网络计划直接影响了施工生产的进度和所产生的费用,而且整个资源的动态管理与控制也都在这个网络计划的核心中,所以这个技术非常的有价值,对于企业的各项管理来说,都是很有管理价值的。在整个过程中,要先做好进度计划安排,实施好计划和编制,然后根据编制的进度进行施工项目,合理的进行工作结构的分解和作业工期等各个工序的逻辑关系,使得这样能够对于施工生产的流程和方案要求进行计算。最后还要对于这些成果进行优化和分析,对于进度编制要积极的检查和优化,这样能够对于生产作业的逻辑关系进行检查和完善,检查企业的生产是否满足其工期的要求,资源配置是否合理。

2 模型改进及实施方案

2.1 改进模型

笔笔者在此介绍一个以CMM2级为基础的软件项目管理模型,具体的结构详见下图所示。

该基于CMM2级的软件项目管理模型的生命周期结合了软件项目研发生命周期,主要包括需求的确定、制定计划、具体实施、测试维护以及最终交付等五个阶段,每个阶段中均含有对应的CMM2级关键过程域,软件质量保证以及软件配置管理贯穿于软件研发过程始终,对于大部分的中小型软件企业而言,软件研发项目并不会采取外包的方式,因此,可以用软件子合同管理KPA对其进行裁剪;若在实践中遇到需要外包的情况,可以在具体的实施阶段有项目经理筛选资质合格的转包商对子项目进行转包。

2.2 组织结构

改在进CMM过程的第一步就是要调整软件组织结构,将之前的不科学之处予以舍弃,并根据实际需求裁剪CMM2级的组织结构。对于中小型软件企业而言,研发人员队伍较为薄弱,如果设置过多人员或是过于复杂的角色关系,实现起来比较困难。组织结构角色及其工作职责为:高级经理一名,主要职责是对软件项目进行管理;项目经理数名,主要职责是对整个项目进行管理;软件工程组,一般需要根据项目规模确定组成人数,主要作用是开发、维护软件;系统测试组,可以由软件工程组兼任,但必须交叉,也就是说,同一个模块的开发及测试不能是同一组人员;软件配置人员,可由项目经理兼任,主要工作时配置软件产品;软件质量保证组,要尽可能的确保该机构在组织上的独立性,如果条件不具备,也能由项目经理或者是测试人员兼任。

2.3 实施方案

首首先,确定需求,主要是开展需求调研、分析可行性、制定需求文档以及出具可行性报告等工作。在该阶段,需要注意以下几方面内容:建立相应的管理制度,从实际情况出发,开展必要的培训,并积极创造交流机会;适时引进管理工具,并加以推广,以便于尽可能的降低软件项目管理压力;开展尽可能详细的需求调研,并且尽量多采用选择题的方式,避免使用开放性问题;其次,制定计划,主要是向软件工程的实施及各个阶段的管理提供一个科学可行的计划,具体的工作包括:选择软件项目开发模型;明确项目资源;对项目进行风险评估;工作分解与职责分配;编订项目计划书。此阶段需要注意以下几方面:根据每个开发模型的优点及不足、具体需求、项目开发周期以及研发队伍能力等因素来挑选开发模型;项目经理要带领团队对项目进行全面评估;结合研发人员特长分配职责;再次,具体实施,为了提供足够的项目实施实际进度可见度,防止在项目实际实施过程与原计划出现较大偏差的情况下,管理部门可以及时采取有效应对方案,需啊哟开展项目跟踪及监控。在此阶段,需要注意的是,在进行编码时,客户有可能对需求进行调整,这就要求项目经理能够随时提出需求变更请求,评估及批准权掌握在如见配置组手中;使用VSS等版本管理工具,这样既可以保证项目开发组成员使用最新的代码及文档,由便于程序的调试、修改和管理;项目的测试及维护,主要目的是为确保软件及服务质量,软件研发及软件项目管理的每个阶段都贯穿着项目的测试及维护;最后一个阶段就是最终交付,在项目的最终交付时并不包含任何KPA,主要涉及到的工作有项目验收、项目资料归档以及培训等。

3 结语

综综上所述,对于规模有限的软件企业而言,在进行软件项目研发的过程中,普遍存在着管理无序、工期延期、系统缺乏可维护性等问题,给软件企业业务的开展造成了极大的负面影响,导致这些问题的主要原因在于对管理的重视程度不够,笔者在软件开发生命周期的基础之上,运用CMM2级项目管理关键过程域,构建了依托于CMM2级的软件项目管理模型,并分别从需求的确定、制定计划、具体实施、测试维护以及最终交付等五个阶段对项目模型的具体实施进行了阐述。

参考文献:

[1]宋华青,国内软件企业软件开发质量与项目管理[D].对外经济贸易大学,2003:56.

[2]董锋,基于软件过程改进理论提高软件生产能力的研究[D].首都经济贸易大学,2003:45-46.

[3]王嘉鹏,软件项目质量成本模型与管理方法的研究[D].首都经济贸易大学,2005:34-35.

[4]陈宇静,基于CMM的软件过程改进案例分析[D].首都经济贸易大学,2005:45-46.

[5]李帜、林立新、曹亚波编著,软件工程项目管理功能点分析方法与实践[M].清华大学出版社,2005:243-250.

[6]孙煜,P6项目管理软件在建筑工程中的应用研究[D].华南理工大学,2010:54.

[7]李洪东、孙艺键,工程项目管理软件的发展趋势与应用现状初探[J].中国建设信息,2008(10):123-125.

作者:王军

上一篇:建筑装修技术管理论文下一篇:工程投标管理建设论文