CMM(capability maturity model),即软件能力成熟度模型。CMM在改进软件过程中所起的作用主要是,指导软件机构通过确定当前的过程成熟度并识别出对过程改进起关键作用的问题,从而明确过程改进的方向和策略。通过集中开展与过程改进的方向和策略相一致的一组过程改进活动,软件机构便能稳步而有效地改进其软件过程,使其软件的过程能力得到循序渐进的提高。
能力成熟度的5个等级从低到高依次是:初始级,可重复级,已定义级,已管理级和优化级。
初始化
软件过程的特征是无序的,有时甚至是混乱的。几乎没有什么过程是经过定义的(即没有一个定型的过程模型),项目能否成功完全取决于开发人员的个人能力。
可重复级
软件机构建立了基本的项目管理过程(过程模型),可跟踪成本、进度、功能和质量。达到2级的一个目标是使项目管理过程稳定,从而使得软件机构能重复以前在成功项目中所进行过的软件项目工程实践。
已定义
软件机构已经定义了完整的软件过程(过程模型),软件过程已经文档化和标准化。所有项目组都是用文档化的、经过批准的过程来开发和维护软件。这一级的软件机构的过程能力可以概括为,无论是管理活动还是工程活动都是稳定的。软件开发的成本和进度以及产品的功能和质量都受到控制,而且软件产品的质量具有可追溯性。
已管理性
软件机构对软件过程(过程模型和过程实例)和软件产品都建立了定量的质量目标,所有项目的重要的过程活动都是可度量的。这一级的过程能力允许软件机构在定量的范围内预测过程和产品质量趋势,在发生偏离时可以及时采取措施予以纠正,并且可以预期软件产品是高质量的。
优化级
软件机构集中精力持续不断地改进软件过程。这一级的软件机构能够持续不断地改进其过程能力,既对现行的过程实例不断地改进和优化,又借助于所采用的新技术和新方法来实现未来的过程改进。
CMMI认证对企业的好处:
一、通过项目计划和项目监督管理等措施,保证产品开发的质量与进度,能对“杂乱无章、无序管理”的项目开发过程进行规范。
二、有利于成本控制。因为质量有所保证,浪费在修改、解决客户的抱怨方面的成本会降低很多。现在大多数情况是缺少规范制度,只是求快。项目完成后,要花很多时间修修补补,费用很容易失控。
三、通过配置管理等措施,解决人员流动所带来的问题,公司通过过程改进,建立了财富库以共享经验,而不是单纯依靠某些“高手”。
四、现在大多数情况是缺少规范制度,求快。项目完成后,要花很多时间修修补补,费用很容易失控。通过辅助企业承包通过CMMI认证后,对软件开发管理有不同程度的提升,还可以通过CMMI认证获得政府补助。
CMMI服务流程:
1. 企业现状与项目需求评估;
2. 合同签订;
3. 制订项目实施计划,搭建项目团队;
4. 实施标准培训,评估团队人员安排,评估文档准备;
5. ATM培训
6. CMMI专家去评估现场正式评估;
7. 评估师提交审核文档到官方,从提交之日算30天内CMMI官网出结果。