我理解的CM M I 一、前言 10 年来我一直在做信息系统集成开发和管理工作,我对ISO,CMMI 之类的标准的理解很简单,我不知道那些字母背后的意思,不知道他们的来源。我只是看到有用的就拿来应用,不合适的我就根据自己需要修改,不合用的我看都不看。公司做 ISO,CMM,在我看到的就是一些文档模板,它们对我的工作具有一定的指导意义,尤其在我开始进行项目管理时。当然我还看到公司为 ISO9000 的评审准备资料,所谓准备,有很多书面资料是临时补上的,我就仿冒过多个客户的笔迹在自己的项目文档上签字。 然后 CMM 在这个 IT 业似乎很有市场,很多公司都在过级。很多咨询公司都在围绕着这些做事,看来是一个不错的方向。来到公司 ,公司正好启动 CMM 项目,不对,同事告诉我是 CMMI,两者不同,具体怎么不同,我后来才知道的。想想自己多年的实际工作经验,理论上却没什么条条道道的,也应该提升一下。于是就积极加入了,当时还想,在新领导的带领下,在咨询公司的引导下,我应该可以得到高人指点,自身水平得到提升。 现在已经半年过去,CMMI 的迷雾自己也不知看穿了多少,我觉得自己并没有得到高人指点,但自己却有一些深痛的理解了。 二、概述 CMMI,Capability Maturity Model Integration 集成的能力成熟度模型,这是检验一个产品开发,尤其是软件开发公司的能力水平的一个尺度,是一种能力检测模型。发展到现在,CMMI 还被认为是一个过程改进模型,大家可以按照这个模型,按照这个模型要求的方面去改进、提升自己的开发能力。 CMMI 有一种前提思想,就是过程决定质量,这种思想是经验总结所得,不能说过程唯一决定质量,但过程绝对在很大程度上决定了质量。这种实践所得的经验,应该是不容置疑的。因此CMMI 是围绕过程来做文章的。我理解,CMMI作为能力的检查或衡量模型,是非常简单有效的,作为过程改进模型,其原意其实也是可行的,不错的,但实际在改进模型中,恐怕不是每个企业都能达到其效果的,似乎更多的企业,包括咨询公司都是形而上学的在应用模型。而SEI 的指导书 《Guidenlines for process integration and product improvement》也对模型在改进中的真正作用,或者如何让该模型起作用没有提及。我认为自己对模型在过程改进中的地位和作用已经小有所察,在此,共享一下自己的理解。 我想从产品开发中存在问题的分析,来说明CMMI 作为能力检测模型和合理性、有效性,同时也来看一下如果直接套...