CMM---软件能力成熟度模型

CMM的含义与作用

CMM是Capability Maturity Model for Software的简称,中文叫“软件能力成熟度模型”,是对组织软件过程能力的描述。CMM的核心是把软件开发视为一个过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化,使企业能够更好的实现商业目标。它侧重于软件过程开发的管理及软件工程能力的改进与评估,因此CMM被用作评价软件承包商能力并帮助组织改善软件过程质量,是目前国际上最流行、最实用的一种软件过程改进模型,成为当今企业从事规模软件生产不可缺少的一项内容。CMM的目的是帮助软件企业对软件工程过程进行管理和改进,增强开发与改进能力,从而能按时地、不超预算地开发出高质量的软件。企业实施CMM模型并评估可为企业带来如下好处:指导软件组织提高软件开发管理能力;降低软件承包商和采购者的风险;评估软件承包商的软件开发管理能力;帮助软件企业识别开发和维护软件的有效过程和关键实践;帮助软件企业识别为达到CMM更高成熟等级所必须的关键实践;增加软件企业的国际竞争能力。
CMM的发展过程

1984年美国国防部为降低采购风险,委托卡耐基—梅隆大学软件工程研究院(SEI)制定了软件过程改进、评估模型,也称为SEI SW-CMM。该模型于1991年正式推出,迅速得到广大软件企业及其顾客的认可。从1987年SEI推出SW-CMM框架开始,1991年推出 CMM 1.0 版,1993年推出CMM 1.1 版,2000年推出CMMI-SE/SW 1.0版。我国也于2001年4月发布了《SJ/T 11234-2001 软件过程能力评估模型》和《SJ/T 11235-2001 软件能力成熟度模型》两个标准。我国政府一直重视软件产业的规范和发展,国务院于2000年6月颁发的“18号文件”第五章第十七条明确提出鼓励软件出口型企业通过ISO9000系列质量保证体系认证和CMM认证,其认证费用通过中央外贸发展基金适当予以支持。目前各省市、高新区、软件园都有对通过CMM的企业给予资金奖励的制度。

CMM的结构与内容

CMM吸取了质量工程的主要原理,形成了5级模型。提出了由第一级(初始级)向第五级(优化级)逐级发展的模式。模型的等级从低到高,可以预计企业的开发风险越来越低,开发能力越来越高。模型的每个等级由不同的关键过程领域(Key Process Area)构成,而每个过程领域又由各种目标构成,每个目标由各种特定惯例和通用惯例支持。
CMM的级别划分如下:

CMM 1—初始级;

CMM 2—已管理级,有6个过程域;

CMM 3—已定义级,有7个过程方面;

CMM 4—定量管理级,有2个过程域;

CMM 5—持续优化级,有3个过程域。

CMM的建立与评估方法

企业实施CMM,可从如下几个步骤进行:

1、提高思想认识,了解必要性和迫切性;

2、确定合理的目标;

3、进行CMM培训和咨询工作,成立工作组;

4、制定和完善软件过程;

5、内部评审;

6、初期评估;

7、正式评估;

8、根据评估的结果改进软件过程。

CMM 评估是为了评价当前的水平,找出问题所在,指导如何改进和了解软件承包商的软件能力。目前针对CMM开发出许多的评估方法,其中公认评估方法有两个:一是用于内部过程改进的CMM评估称为CBA-IPI;二是用于选择和监控分承包方的CMM评估,称为SCE方法。这两种方法基于不同的目的,但评估的结果应一致。评估包括三个阶段:准备阶段、现场阶段和报告阶段,最终评价当前的水平结果是SEI的主任评估师签署的评估报告,并且评估需要在SEI注册登记。(注:2005年底前,SEI不再支持CMM的工作)。

CMMI的起源

随着人们对CMM研究的不断深入,其他学科也结合本系统的特点,陆续推出了自己的CMM模型。例如,人力资源能力成熟度模型、系统工程能力成熟度模型等等:
(1) SW-CMM (Software CMM) 软件CMM
(2) SE-CMM (System Engineering CMM) 系统工程CMM
(3) SA-CMM (Software Acquisition CMM) 软件采购CMM
(4) IPT-CMM (Integrated Product Team CMM) 集成产品群组CMM
(5) P-CMM (People CMM) 人力资源能力成熟度模型
为了以示区别,国内外很多资料把CMM叫做SW-CMM。按照SEI原来的计划,CMM的改进版本2.0应该在1997年11月完成,然后在取得版本2.0得实践反馈意见之后,在1999年完成准CMM2.0版本。但是,美国国防部办公室要求SEI推迟发布CMM2.0版本,而要先完成一个更为紧迫的项目CMMI。
CMMI(Capability Maturity Model Integration)即能力成熟度集成模型,这也是美国国防部的一个设想,他们想把现在所有的以及将被发展出来的各种能力成熟度模型,集成到一个框架中去。这个框架有两个功能,第一,软件采购方法的改革;第二,建立一种从集成产品与过程发展的角度出发、包含健全的系统开发原则的过程改进。就软件而言,CMMI是SW-CMM的修订本。它兼收了SW-CMM 2.0版C稿草案和SPA中更合理、更科学和更周密的优点。SEI在发表CMMI-SE/SW 1.0版时,宣布大约用两年的时间完成从CMM到CMMI的过渡。
CMMI项目更为工业界和政府部门提供了一个集成的产品集,其主要目的是消除不同模型之间的不一致和重复,降低基于模型改善的成本。CMMI将以更加系统和一致的框架来指导组织改善软件过程,提高产品和服务的开发、获取和维护能力。

CMM/CMMI咨询与评估服务

我们拥有14名不同领域内的美国软件界享负盛名的SEI注册主任评估师,这些评估师曾直接或间接参与SEI-CMM的创建,并为MPSI, Biometric Solution, Motorola University, Qwest, Lockheed Martin, 美国电报、电话公司,南方贝尔公司,大西洋贝尔公司,波音公司,洛克希德、马丁公司,罗杰肯公司,诺思罗普格鲁曼公司, 美国空军,美国国家安全局,美国国务院等提供过解决方案、过程改进指导、评估工作。BTC-USA还在美国、加拿大等地从事软件开发、PMO等业务。我们还拥有十多名国内资深高级咨询师。均有十年以上的项目开发经验或项目管理经验,他们分别有着对电子、通信、金融、网络、信息系统集成等多个领域的IT企业进行咨询及评估的丰富经验。可以为您的企业提供最有价值的专业服务。
另外我们和合作伙伴BTC-USA是美国CMU-SEI(卡耐基梅隆大学软件工程研究所)授权的CMM培训、咨询、评估权威转换伙伴,
自2001年10月以来,BCC与BTC-USA公司进行全方面的合作,通过提供一系列CMM培训、咨询、评估服务,帮助中国软件企业获得增强国际竞争力的最新理念和国际标准。对通过SEI的CBA-IPI评估的企业,我们还通过PMO为其提供海外软件开发合作及产品出口的机会。
强大的各方面实力使得我们在中国可以最快的掌握CMM及CMMI的发展动向、新技术且及时得到准确和完整的教材。
成功案例

自2001年起,BCC与BTC-USA(后改名为EPS-USA)密切合作,在国内外广泛开展了多项CMM活动,包括人员培训,软件过程诊断,CMM咨询、评估,进行标准软件过程改进,软件配置管理SCM等。
2002年3月,BCC高级咨询师为交大铭泰举行了CMM2级的培训与咨询;
2002年4月, 邀请SEI授权的CMM培训师 Mr. Thomas Vaitkus对我国软件行业的20名精英举办 “intro to CMM” CMM实习评估师资格培训课程;
2002年4月,为NEC提供“intro to CMM” CMM实习评估师资格培训与CMMI实施工作,该公司已于2005年初通过CMMI5级的评估;
2002年8月,BCC高级咨询师为广东AIA举行了CMM3级的培训和咨询;
2002年12月13曰,由SEI授权的CMM主任评估师Ralph D. Bowden先生领导的六名BCC高级咨询师及一名万达内部成员对万达信息股份有限公司进行评估,并一致认为万达信息股份有限公司的软件过程成熟度达到CMM3 级;
2002年12月27曰, 由SEI授权的CMM主任评估师Ralph D. Bowden先生领导的六名BCC高级咨询师对北京华泰贝通网络科技有限公司进行评估,并一致认为北京华泰贝通网络科技有限公司的软件过程成熟度达到CMM2 级;
2003年3月31曰,由SEI授权的CMM主任评估师Ralph D. Bowden先生领导的八名BCC高级咨询师对重庆普金软件股份有限公司进行评估,并一致认为重庆普金软件股份有限公司的软件过程成熟度达到CMM2 级;
2003年6月,BCC高级咨询师为北京奥码天地举行了CMMI2级的培训与咨询;
2003年9月,对北京通茂科技公司实施CMMI的咨询和过程改进;
2003年9月3曰,由美国SEI授权的CMMI培训师 Mr. Shawn Presson对我国软件行业的25名精英举办 “intro to CMMI” CMMI实习评估师资格培训课程,其中包括柯达、西门子中国公司、Ntt data, Nec-中科软等著名公司的高级雇员;
2003年12月, 由SEI授权的CMM主任评估师Ralph D. Bowden先生领导的八名BCC高级咨询师对北京华泰贝通网络科技有限公司进行评估,并一致认为北京华泰贝通网络科技有限公司的软件过程成熟度达到CMM3级;
2004年3月,对交大铭泰信息技术有限公司实施CMMI3级咨询;
2004年5月,BCC高级咨询师为西门子(中国)举行了CMMI2级的培训与咨询;
2004年6月-2005年3月,BCC高级咨询师为北京天融信网络安全技术有限公司举行CMMI 2级的培训与咨询;
2004年10月,对建设银行总行信息技术管理部北京开发中心项目实施管理与质量控制处实施CMMI咨询;
2004年12月17曰, 由SEI授权的CMMI主任评估师Ralph D. Bowden先生领导的八名BCC高级咨询师对万达信息股份有限公司进行评估,并一致认为万达信息股份有限公司的软件过程成熟度达到CMMI5 级;
2005年3月7曰,对上海国信朗讯进行软件度量的培训;
2005年3月21曰-2005年3月25曰,由SEI授权的CMMI主任评估师Ralph D. Bowden先生领导的八名BCC高级咨询师对北京天融信网络安全技术有限公司进行评估,并一致认为北京天融信网络安全技术有限公司的软件过程成熟度达到CMMI2 级;
2005年9月20号-2005年9月29号,由SEI授权的CMMI主任评估师Ralph D. Bowden先生领导的八名BCC高级咨询师对北京久其软件股份有限公司进行评估,并一致认为北京久其软件股份有限公司的软件过程成熟度达到CMMI3 级;
2005年8月-2006年3月,北京新世纪高级咨询师为北京东方飞扬软件技术有限公司实施CMMI2级过程改进;
正在实施的有“武汉钢铁自动化CMMI3级”、“天津大地网络科技有限公司CMMI3级”、“北京京北方科技有限公司CMMI3级”“北京北广软件技术有限公司CMMI2级”、“中国一汽无锡油泵油嘴研究所CMMI2级”等。

部分获得我们美国合作方BTC-USA CMM评估的美国客户:BTC-USA, Biometric Solution, Motorola University, Qwest, Lockheed Martin, 美国电报、电话公司,南方贝尔公司,大西洋贝尔公司,波音公司,洛克希德、马丁公司,罗杰肯公司,诺思罗普格鲁曼公司, 美国空军,美国国家安全局,美国国务院等。


什么是CMM的核心?本人转载了别人在一次CMM培训中准备的案例,希望能够生动而浅显地解释这个问题,如要转载,顺手给原创作者发个Email:JennyLi@netease.com,非常感谢。尊重原创!
案例背景:有一间房子,里面有一些人,一些杯子和水壶,以及用于烧水的用具,所有的人都需要喝开水。

CMM 1级:
过程:
找到杯子和水壶
倒水喝
问题:
找不到杯子,没水喝
找不到水壶,没水喝
水壶没水——不知道该怎么办
一天要喝多少水——不知道
倒一杯水要花多少时间,每个人每天为倒水花多少时间——不知道
思考:
买个饮水机能解决问题吗?

CMM 2级:
过程:
杯子放在茶几上
水壶放在餐台上
如果水壶没水,在厨房烧水
杯子用完要清洗,并放回茶几
培训:厨房烧水,清洗杯子
度量一天要烧几壶水,每个人每次/每天倒水要花多少时间
有人检查是否所有人用完杯子后都清洗并放回餐台
管理者关注这些活动的执行状态与成效
问题:
烧水太花时间
水要等凉了才能喝
效率不稳定:有人每天花20分钟倒水,有人每天花80分钟
思考:
买个饮水机能有帮助吗?

CMM 3级:
过程:
所有人都先在茶几取杯子,再去餐台倒水
统一用大杯子
每人每次倒两杯水,与人分享
指派专人定时烧水,放在凉水壶里
指派专人定时收集和清洗杯子
问题:
怎样才能做得更好?
思考:
买个饮水机划算吗?

CMM 4级:
过程:
建立评价模型:节省1分钟=节省1元钱,如果每人每天节省1分钟,则100个人1个月(30天)可以节省3000元——只要每月花费不超过3000元,我们就可以尝试新过程
定义量化的管理目标:3个月内将每人每天用于倒水的时间减少2分钟
以现在每人每天用于倒水的时间建立基线:平均10分钟,最少5分钟,最多20分钟
每个人为自己制定优于平均值的目标:本人每天用于倒水的时间不超过6分钟
度量并监控每天用于倒水的时间,一旦超过6分钟,要分析根本原因,并制定调整措施;最后结果是8分钟,超出预定的目标,但比平均值要好
3个月后调整基线:平均8分钟,最低4分钟,最高15分钟
问题:
不改进不行了!
思考:
买个饮水机是最好的方案吗?

CMM 5级:
过程:
发现问题的根本原因:倒水的时间之所以不能再少,是因为房间太大,走到餐台太远
找出能够解决根本原因的所有方法,用评价模型进行评价
选择一种方法,并制定改进的目标:买10个饮水机放在客厅里,每人每天节省2分钟
制定相应的过程:如果买饮水机,则需要定期定购桶装水,定期对饮水机出水口进行清洗和消毒,请人及时更换空水桶
试行过程:先找几个人试用,看看是否能达到预期目标
推广:让所有人都用饮水机
继续发现其它的根本原因……
问题:
怎样发现更多根本原因
怎样引进更多新方法
思考:
还有什么比饮水机更好的方法吗?
 
比喻二:
一级:一群人没有经过训练,也不知道有没有经验,下水之后乱扑腾,有的人浮起来,有的人沉下去了。这就是一级的无序状态,结果是不可知的
二级:大家都在游泳池或者小池塘里下过几次水,基本上在这样的条件下不会出事了。但是动作乱七八糟,有狗刨有说不出名字的动作。也就是二级的能够重复以前的成功经验
三级:经过研究,确定了几种标准泳姿,知道自由泳最快,蛙泳最省力等等。这就是三级,有了标准的过程定义
四级:大家都掌握标准动作之后,互相之间的成绩就可以比较了。通过测量大家的游泳成绩(当然不同泳姿的成绩要分开)、肌肉力量等等,分析特别好的和特别差的,找出好的原因和差的原因,大家的技术水平不断提高。这就
是四级的量化控制,通过数据来管理和改进
五级:大家的技术水平都很高了,动作都很完美。我们就通过创造新的泳姿,引入新式游泳衣等等创新来提高成绩。这就是五级的持续改进



  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值