韩少华
摘 要:文章以软件项目的生产特征为切入口,简要分析了软件项目质量管理结构影响因素,提出了几点基于CMMI体系下创建完善的软件项目质量管理框架的建议,以供参考指正。
关键词:CMMI体系;软件项目;质量管理
中图分类号:TP311.5 文献标识码:A 文章编号:1006-8937(2015)05-0078-02
资源的多寡是软件项目实施效果的主要限制因素,因而不同的软件项目规模也需要采取不同的模式加以管理。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).