📅  最后修改于: 2023-12-03 15:41:23.255000             🧑  作者: Mango
能力成熟度模型(Capability Maturity Model,简称CMM)是一种评估和改进组织软件过程的标准模型。它是一种基于“最佳实践”的框架,可帮助组织确定其软件过程的成熟度级别,并提供通向更高级别的演进路径。
CMM 最初是一种用于软件工程的分层模型,它最初是由美国国防部研究计划署(Software Engineering Institute,简称SEI)开发的,于 1987 年正式发表。
CMM 将能力成熟度划分为 5 个层次,分别为:
初级阶段是软件过程的混沌阶段,这个阶段的工作人员普遍缺乏良好的管理控制和纪律,无法对过程进行确定和维护。其特点是工作效率低下、成本高昂、产品质量难以得到保证。
在此阶段,程序员开始了解软件开发的基础原则,并以此为依据形成一定的工作规范。此时开始对过程进行跟踪,根据固定的方法和程序进行软件开发。其特点是存在基本的管理流程和规范的重复性开发过程。
在此阶段中,任务清单、编程标准和过程规范化程度更高。此时组织中开始建立正式的软件开发过程。其特点是完善的管理和规范,良好的组织,全面的产品质量保证。
在此阶段中,程序员依据组织确立的管理制度和指导方针,按照协定的规程执行项目,并依据项目评价找出问题,保证绩效和产品的质量。
在此阶段中,组织在持续优化过程的基础上,对过程的改进进行创新,从而达到进一步提高工作效率和产品质量的目的。
CMM 能力成熟度模型的应用包括以下几个方面:
评估能力成熟度水平,为组织发现软件开发过程中存在的问题并提出改进的建议以及推进变革提供参考。
开发和实施过程改进计划,使得组织软件开发过程从低级别向高级别转变。
评估供应商的能力成熟度,以便选择、评估和监督软件开发的供应商。
CMM 能力成熟度模型是一种用于评估和改进组织软件过程的标准模型。它通过将软件过程能力成熟度划分为 5 个层次,为组织提供了一种评价和改进软件过程的框架。CMM 的应用包括评估能力成熟度水平、开发和实施过程改进计划、评估供应商的能力成熟度等。
Markdown 代码片段:
# 能力成熟度模型
## 什么是能力成熟度模型?
能力成熟度模型(Capability Maturity Model,简称CMM)是一种评估和改进组织软件过程的标准模型。它是一种基于“最佳实践”的框架,可帮助组织确定其软件过程的成熟度级别,并提供通向更高级别的演进路径。
CMM 最初是一种用于软件工程的分层模型,它最初是由美国国防部研究计划署(Software Engineering Institute,简称SEI)开发的,于 1987 年正式发表。
## 能力成熟度模型的层次
CMM 将能力成熟度划分为 5 个层次,分别为:
### 初级(Level 1:Initial)
初级阶段是软件过程的混沌阶段,这个阶段的工作人员普遍缺乏良好的管理控制和纪律,无法对过程进行确定和维护。其特点是工作效率低下、成本高昂、产品质量难以得到保证。
### 重复(Level 2:Repeatable)
在此阶段,程序员开始了解软件开发的基础原则,并以此为依据形成一定的工作规范。此时开始对过程进行跟踪,根据固定的方法和程序进行软件开发。其特点是存在基本的管理流程和规范的重复性开发过程。
### 定义(Level 3:Defined)
在此阶段中,任务清单、编程标准和过程规范化程度更高。此时组织中开始建立正式的软件开发过程。其特点是完善的管理和规范,良好的组织,全面的产品质量保证。
### 管理(Level 4:Managed)
在此阶段中,程序员依据组织确立的管理制度和指导方针,按照协定的规程执行项目,并依据项目评价找出问题,保证绩效和产品的质量。
### 优化(Level 5:Optimizing)
在此阶段中,组织在持续优化过程的基础上,对过程的改进进行创新,从而达到进一步提高工作效率和产品质量的目的。
## 能力成熟度模型的应用
CMM 能力成熟度模型的应用包括以下几个方面:
1. 评估能力成熟度水平,为组织发现软件开发过程中存在的问题并提出改进的建议以及推进变革提供参考。
2. 开发和实施过程改进计划,使得组织软件开发过程从低级别向高级别转变。
3. 评估供应商的能力成熟度,以便选择、评估和监督软件开发的供应商。
## 总结
CMM 能力成熟度模型是一种用于评估和改进组织软件过程的标准模型。它通过将软件过程能力成熟度划分为 5 个层次,为组织提供了一种评价和改进软件过程的框架。CMM 的应用包括评估能力成熟度水平、开发和实施过程改进计划、评估供应商的能力成熟度等。