CMM的主要应用问题:
用CMM指导企业的软件过程改进工作是相当不错的,但是企业要做的重要事情显然不仅是软件过程改进。企业最关注的是生存和发展问题,一切离不开赚钱。CMM本身不谈如何赚钱的问题。它假设了美好的前提条件,即企业有充足的人员、资金、时间从事软件过程改进,当软件过程能力提高了,那么产品的质量、生产率自然上去了(同时成本也下降了),企业自然能够获取更多的利润。软件过程改进对企业经济效益的贡献是间接的,从投入到产出,时间相对比较长。
遗憾的是,国内大部分企业没有能力提供那么好的前提条件,企业最缺乏的资源往往就是人员、资金和时间,企业领导当然想把资源用在“刀刃”上,即赚钱最多最快的地方。当软件过程改进和其它直接赚钱的事情“发生资源冲突”时,只好“拆东墙,补西墙”,往往减少软件过程改进的资源。
CMM对软件项目管理和机构过程管理论述很深入,但是对软件开发的核心工作即“需求开发、软件设计、编程、测试、维护”论述非常少,CMM把它们压缩为一个过程域叫做“产品工程”(Product Engineering),近乎一笔带过。所以导致一个怪现象,管理人员觉得CMM很好,而大量开发人员学了CMM后却很是迷惘,感觉CMM对他们的开发工作没有直接的指导。
作者对应用CMM/CMMI的建议:
CMM/CMMI是衡量企业软件过程能力的国际标准,它对软件过程改进有很多有益的指导。CMM/CMMI仅仅对等级评估做了强制要求,但是对企业“如何进行软件过程改进”没有强制要求,CMM/CMMI的数百页文本并不是“放之四海皆准”的,企业可以采纳也可以不采纳。
对于软件过程改进而言,CMM/CMMI和ISO等等都是用来参考的,而不是用来迷信的。企业在参考业界推荐的标准或规范时,要舍弃那些听起来很先进但是对本企业无益处的东西,只选取对企业有实用价值的东西。
文章来源于领测软件测试网 https://www.ltesting.net/










