CMM是指能力成熟度模型,它是对于软件组织在定义、实施、度量、控制和改善其软件过程的实践中各个发展阶段的描述。以下是由小编整理关于cmm知识的内容,希望大家喜欢!
成熟度模型能力成熟度模型(Capability Maturity Model,英文缩写为CMM)[1] 是一种开发模型。Carnegie Mellon大学的研究人员从美国国防部合同承包方那里收集数据并加以研究,提出了CMM。美国国防部资助了这项研究。Carnegie Mellon以该模型为基础,创办了软件工程研究所(SEI)。CMM的目标是改善现有软件开发过程,也可用于其它过程。
它是对于软件组织在定义、实施、度量、控制和改善其软件过程的实践中各个发展阶段的描述。CMM的核心是把软件开发视为一个过程,并根据这一原则对软件开发和维护过程进行监控和研究。
CMM是一种用于评价软件承包能力以改善软件质量的方法,侧重于软件开发过程的管理及工程能力的提高与评估。分为五个等级:一级为初始级,二级为可重复级,三级为已定义级,四级为已管理级,五级为优化级。
其假设是:只要集中精力持续努力去建立有效的软件工程过程的基础结构,不断进行管理的实践和过程的改进,就可以克服软件生产中的困难。
CMM历史1984年,美国国防部资助建立了卡内基·梅隆大学软件研究所(SEI)[2] ;1987年,SEI发布第一份技术报告介绍软件能力成熟度模型(CMM)及作为评价国防合同承包方过程成熟度的方法论;1991年,SEI发表1.0版软件CMM(SW-CMM)。
CMM自1987年开始实施认证,现已成为软件业权威的评估认证体系。CMM包括5个等级,共计18个过程域,52个目标,300多个关键实践。
CMM等级能力等级
特点
关键过程
第一级 初始级(最低级)
软件工程管理制度缺乏,过程缺乏定义、混乱无序。成功依靠的是个人的才能和经验,经常由于缺乏管理和计划导致时间、费用超支。管理方式属于反应式,主要用来应付危机。过程不可预测,难以重复。
第二级 可重复级
基于类似项目中的经验,建立了基本的项目管理制度,采取了一定的措施控制费用和时间。管理人员可及时发现问题,采取措施。一定程度上可重复类似项目的软件开发。
需求管理,项目计划,项目跟踪和监控,软件子合同管理,软件配置管理,软件质量保障
第三级 已定义级
已将软件过程文档化、标准化,可按需要改进开发过程,采用评审方法保证软件质量。可借助CASE工具提高质量和效率。
组织过程定义,组织过程焦点,培训大纲,软件集成管理,软件产品工程,组织协调,专家审评
第四级 已管理级
针对制定质量、效率目标,并收集、测量相应指标。利用统计工具分析并采取改进措施。对软件过程和产品质量有定量的理解和控制。
定量的软件过程管理和产品质量管理
第五级 优化级(最高级)
基于统计质量和过程控制工具,持续改进软件过程。质量和效率稳步改进。
缺陷预防,过程变更管理和技术变更管理
CMM能力成熟度各级特点和关键过程。