文章目录
CMM
体系结构
CMM是指“能力成熟度模型”,其英文全称为Capability Maturity Model for Software,英文缩写为SW-CMM,简称CMM。它是对于软件组织在定义、实施、度量、控制和改善其软件过程的实践中各个发展阶段的描述。CMM的核心是把软件开发视为一个过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化、使企业能够更好地实现商业目标。此外还是化妆品的名字。
一:简介
CMM(Capability Maturity
Model)是能力成熟度模型的缩写,CMM是国际公认的对软件公司进行成熟度等级认证的重要标准。CMM的工作最早开始于86年11月,当时为满足美国政府评估软件供应商能力并帮助其改善软件质量的要求,由美国国防部资助的卡内基—梅隆大学的软件工作研究所(SEI)牵头,在Mitre公司协助下,于87年9月发布了一份能力成熟度框架(Capability Maturity Framework)以及一套成熟度问卷(Maturity Questionnaire)。四年后,SEI在总结自87年以来对成熟度框架和初版成熟度问卷的经验基础上,推出了CMM1.0版。CMM1.0版在成熟度框架的基础上建立了一个可用的模型,该模型可以更加有效地帮助软件公司建立和实施过程改进计划。两年后,SEI于93年推出了CMM1.1版。近几年,SEI又推出了CMM2.0版,同时进入了ISO体系,称为ISO/IEC15504(软件过程评估)。
二:CMM等级
CMM共分五级。在每一级中,定义了达到该级过程管理水平所应解决的关键问题和关键过程。每一较低级别是达到较高级别的基础。其中五级是最高级,即优化级,达到该级的软件公司过程可自发地不断改进,防止同类问题二次出现;四级称为已管理级,达到该级的软件公司已实现过程的定量化;三级为已定义级,即过程实现标准化;二级为可重复级,达到该级的软件公司过程已制度化,有纪律,可重复;一级为初始级,过程无序,进度、预算、功能和质量等方面不可预测。
CMM致力于软件开发过程的管理和工程能力的提高与评估。该模型在美国和北美地区已得到广泛应用,同时越来越多的欧洲和亚洲等国家的软件公司正积极采纳CMM,CMM实际上已成为软件开发过程改进与评估事实上的工业标准。如今,全球通过CMM五级评估的软件公司大约有十几家,三级以上的大约有100余家,通过二级评估的有300家左右。软件大国印度在这方面工作开展的比较广泛,受益匪浅。,该公司表示将争取早日通过CMM三级评估。
CMM与ISO9000的主要区别:
1.CMM是专门针对软件产品开发和服务的,而ISO9000涉及的范围则相当宽。
2.CMM强调软件开发过程的成熟度,即过程的不断改进和提高。而ISO9000则强调可接收的质量体系的最低标准。
三:CMM的基本思想
CMM的基本思想是,因为问题是由我们管理软件过程的方法引起的,所以新软件技术的运用不会自动提高生产率和利润率。CMM有助于组织建立一个有规律的、成熟的软件过程。改进的过程将会生产出质量更好的软件,使更多的软件项目免受时间和费用的超支之苦。软件过程包括各种活动、技术和用来生产软件的工具。因此,它实际上包括了软件生产的技术方面和管理方面。CMM策略力图改进软件过程的管理,而在技术上的改进是其必然的结果。
必须牢记,软件过程的改善不可能在一夜之间完成,CMM是以增量方式逐步引入变化的。CMM明确地定义了5个不同的“成熟度”等级,一个组织可按一系列小的改良性步骤向更高的成熟度等级前进。
整个企业将会把重点放在对过程进行不断的优化,采取主动的措施去找出过程的弱点与长处,以达到预防缺陷的目标。同时,分析各有关过程的有效性资料,作出对新技术的成本与效益的分析,并提出对过程进行修改的建议。达到该级的公司可自发的不断改进,防止同类缺陷二次出现。
CMM实施步骤
在表中可以看出,CMM为软件的过程能力提供了一个阶梯式的改进框架,它基于以往软件工程的经验教训,提供了一个基于过程改进的框架图,它指出一个软件组织在软件开发方面需要哪些主要工作,这些工作之间的关系,以及开展工作的先后顺序,一步一步的做好这些工作而使软件组织走向成熟。CMM的思想来源于已有多年历史的项目管理和质量管理,自产生以来几经修订,成为软件业具有广泛影响的模型,并对以后项目管理成熟度模型的建立产生了重要的影响。尽管已有个人或团体提出了各种各样的成熟度模型,但还没有一个像CMM那样在业界确立了权威标准的地位。但PMI于20