CMM(Capability Maturity Model,能力成熟度模型)是一种用于评估组织的软件开发过程成熟度的模型。CMM最初由美国国防部所发展,后来被卡内基梅隆大学软件工程研究所(SEI)进一步完善和推广。CMM定义了五个不同的成熟度级别,从初级到优秀级别:
- 初始级别(Level 1: Initial):过程是无序的、不可预测的,并且经常依赖于个别人员的技术能力。
- 重复级别(Level 2: Repeatable):过程已经有了一定的规范性,项目能够在一定程度上重复执行,并具有一定的管理能力。
- 定义级别(Level 3: Defined):过程已经被定义并记录下来,组织有能力按照这些定义来执行和管理项目。
- 管理级别(Level 4: Managed):过程已经得到了监控和管理,通过指标的收集和分析,组织能够预测项目的进展和质量。
- 优化级别(Level 5: Optimizing):过程持续改进,通过充分利用经验教训和技术创新,不断提高软件开发过程的效率和质量。
通过CMM的评估,组织可以了解当前的软件开发过程成熟度,识别改进的重点和方向,并逐步提升到更高的成熟度级别。CMM已经演变为更加广泛应用的CMMI(Capability Maturity Model Integration,能力成熟度模型集成),它整合了不同领域的能力成熟度模型,提供了更为综合和全面的评估框架。