CMMI全称是Capability Maturity Model Integration,即能力成熟度模型集成(也有称为:软件能力成熟度集成模型)[1],是美国国防部的一个设想,1994年由美国国防部(United States Department of Defense)与卡内基-梅隆大学(Carnegie-Mellon University)下的软件工程研究中心(Software Engineering Institute,SEISM)以及美国国防工业协会(National Defense Industrial Association)共同开发和研制的,他们计划把现在所有现存实施的与即将被发展出来的各种能力成熟度模型,集成到一个框架中去,申请此认证的前提条件是该企业具有有效的软件企业认定证书。
其目的是帮助软件企业对软件工程过程进行管理和改进,增强开发与改进能力,从而能按时地、不超预算地开发出高质量的软件。其所依据的想法是:只要集中精力持续努力去建立有效的软件工程过程的基础结构,不断进行管理的实践和过程的改进,就可以克服软件开发中的困难。CMMI为改进一个组织的各种过程提供了一个单一的集成化框架,新的集成模型框架消除了各个模型的不一致性,减少了模型间的重复,增加透明度和理解,建立了一个自动的、可扩展的框架。因而能够从总体上改进组织的质量和效率。CMMI主要关注点就是成本效益、明确重点、过程集中和灵活性四个方面。
过程域
Process Area:过程域。简单的说就是做好一个事情的某一个方面,对应软件开发来说,就是做好软件开发的某一个方面。
CMMI 2、3级共有18个过程域(PA),主要内容如下,分四大类:
过程管理
1. OPD:(Organizational Process Definition,3级)组织级过程定义。建立和维护有用的组织过程资产。
2. OPF:(Organizational Process Focus,3级)组织级过程焦点。在理解现有过程强项和弱项的基础上计划和实施组织过程改善。
3. OT:(Organizational Training,3级)组织培训管理。增加组织各级人员的技能和知识,使他们能有效地执行他们的任务。
项目管理
4. PP:(Project Plan,2级)项目计划。保证在正确的时间有正确的资源可用。为每个人员分配任务、协调人员。根据实际情况,调整项目。
5. PMC:(Project Monitoring and Control,2级)项目监督与控制。通过项目的跟踪与监控活动,及时反映项目的进度、费用、风险、规模、关键计算机资源及工作量等情况,通过对跟踪结果的分析,依据跟踪与监控策略采取有效的行动,使项目组能在既定的时间、费用、质量要求等情况下完成项目。
6.SAM:(Supplier Agreement Management,2级)供应商协议管理。旨在对以正式协定的形式从项目之外的供方采办的产品和服务实施管理。
7.IPM:(Integrated Project Management,3级)集成项目管理。根据从组织标准过程剪裁而来的集成的、定义的过程对项目和利益相关者的介入进行管理。
8. RSKM:(Risk Management,3级)风险管理。识别潜在的问题,以便策划应对风险的活动和必要时在整个项目生存周期中实施这些活动,缓解不利的影响,实现目标。
工程管理
9.RD:(Requirement Development,3级)需求开发。需求开发的目的在于定义系统的边界和功能、非功能需求,以便涉众(客户、最终用户)和项目组对所开发的内容达成一致。
10.REQM(Requirement Management,2级)需求管理。需求管理的目的是在客户和软件项目之间就需要满足的需求建立和 维护一致的约定。
11.TS:(Technical Solution ,3级)技术解决方案。在开发、设计和实现满足需求的解决方案。解决方案的设计和实现等都围绕产品、产品组件和与过程有关的产品。
12.PI:(Product Integration,3级)产品集成。从产品部件组装产品,确保集成产品功能正确并交付产品。
13.VAL:(Validation ,3级)确认。确认证明产品或产品部件在实际应用下满足应用要求。
14.VER:(Verification,3级)验证。验证确保选定的工作产品满足需求规格。
支持管理
15. CM:(Configuration Management,2级)配置管理。建立和维护在项目的整个软件生存周期中软件项目产品的完整性 。
16.PPQA:(Process and Product Quality Assurance,2级)过程和产品质量保证。为项目组和管理层提供项目过程和相关工作产品的客观信息。
17.MA:(Measurement and Analysis,2级)测量与分析。开发和维持度量的能力,以便支持对管理信息的需要。作为改进、了解、控制决策。
18. DAR:(Decision Analysis and Resolution,3级)决策分析与解决。应用正式的评估过程依据指标评估候选方案,在此基础上进行决策。
第4级除第2、3级所涵盖的18个流程领域外,增加:
19. OPP :(Organizational Process Performance,4级)组织过程性能。建立与维护组织过程性能的量化标准,以便使用量化方式的管理项目。
20. QPM(Quantitative Project Management,4级) 量化的项目管理,量化管理项目已定义的项目过程,以达成项目既定的质量和过程性能目标。
第5级包含第2级到第4级的20个流程领域外,增加:
21. OPM:(Organizational Performance and Management ,5级)组织的绩效与管理,选择并推展渐进创新的组织过程和技术改善,改善应是可度量的,所选择及推展的改善需支持基于组织业务目的的质量及过程执行目标。
22. CAR:(Causal Analysis and Resolution,5级)因果分析与解决。识别缺失的原因并进行矫正,进一步的防止未来再次发生。