软件能力成熟度模型(CMM)
“软件能力成熟度模型”

“软件能力成熟度模型”(1)背景介绍:CMM是“软件能力成熟度模型”的英文简写,该模型由美国卡内基-梅隆大学的软件工程研究所(简称SEI)受美国国防部委托,于1991年研究制定,初始的主要目的是为了评价美国国防部的软件合同承包组织的能力,后因为在软件企业应用CMM模型实施过程改进取得较大的成功,所以在全世界范围内被广泛使用。
CMMI是SEI于2000年发布的CMM的新版本,目前CMMI已经发展到1.2版本,并且只接受1.2版本的评估结果。
CMMI目前包含了三个模型,分别是CMMI-DEV、CMMI-SVC以及CMMI-ACQ模型。
CMMI-DEV:最新版本是SEI于2006年8月份发布的CMMI for Development v1.2版本。
该版本集成了软件工程、硬件工程和系统工程三大学科领域。
图表1 CMMI-DEV模型集成CMMI-DEV模型按照阶段式表达方式将成熟度分为五个等级,每个等级包含相应的过程域,如下图所示:图表2 CMMI-DEV各成熟度等级包含的过程域CMMI-SVC:该模型SEI于2009年2月份发布,最新版本是CMMI for Services v1.2版本。
该模型可以应用于IT、医疗卫生、教育等各类服务领域。
该模型采用了CMMI的基础架构,在此基础上增加了服务相关的特有过程域。
对于已经实施CMMI- DEV 的企业,提供了快速、便捷的理解和导入机制。
图表3 CMMI-SVC和CMMI其他模型的关系CMMI-SVC模型按照阶段式表达方式也分成五个等级,每个等级包含相应的过程域,如下图所示:图表4 CMMI-SVC各成熟度等级的过程域CMMI-ACQ:该模型SEI于2007年11月份发布,最新版本是CMMI for Acquisition v1.2版本。
该模型基于CMMI模型体系架构,整合了CMMI采购模型、软件采购模型以及政府及产业采购的最佳实践等,用于指导采购方进行采购管理。
cmm能力成熟度模型的关键过程领域

cmm能力成熟度模型的关键过程领域【题目】cmm能力成熟度模型的关键过程领域【导言】在软件开发和项目管理领域中,CMM(Capability Maturity Model,能力成熟度模型)是一种评估组织能力和优化过程的工具。
它帮助组织了解自己在软件开发过程中的强项和薄弱点,并提供一种逐步提高成熟度和质量的方法。
CMM包括5个级别,每个级别都对应着特定的过程和实践。
本文将聚焦在CMM中的关键过程领域,深入探讨其内涵和重要性,并分享一些个人观点。
【正文】一、CMM能力成熟度模型简介1.1 什么是CMM?CMM(Capability Maturity Model)是美国国防部软件工程研究所(SEI)于1986年提出的一个框架模型,用于评估和改进组织的软件开发能力。
它将软件开发划分为5个级别,从初始级别到最高级别依次为初始级(Level 1)、被管理级(Level 2)、定义级(Level 3)、量化管理级(Level 4)和优化级(Level 5)。
随着级别的提升,组织的过程能力和质量也相应提高。
1.2 CMM的关键过程领域CMM的关键过程领域是指在软件开发过程中,对于组织而言十分重要的核心领域。
这些过程领域涵盖了软件开发过程中的关键点和关键活动,包括需求管理、配置管理、项目计划和追踪、过程监控和控制、合同管理等。
CMM将这些过程领域归类为几个指标和要素,并为每个过程领域提供了一套最佳实践和规范,以帮助组织提高其软件开发过程的稳定性和质量。
二、关键过程领域的内涵和重要性2.1 关键过程领域的内涵关键过程领域代表了软件开发过程中最重要的部分。
它们是支撑整个软件开发过程的基石,因为它们直接关系到软件开发过程的成功与否。
需求管理是确保软件开发过程满足用户需求的关键过程之一,配置管理是确保软件版本和变更管理的关键过程之一。
2.2 关键过程领域的重要性关键过程领域的重要性在于其对整个软件开发过程和项目管理的影响。
软件能力成熟度模型等级和过程

软件能力成熟度模型等级和过程在软件开发行业中,软件能力成熟度模型(Capability Maturity Model,简称CMM)是一种用于评估和改进组织软件开发能力的方法。
CMM将软件过程能力分为五个等级,每个等级代表了不同的软件开发成熟度。
在本文中,我将介绍CMM的五个等级和相应的软件开发过程。
第一等级——初始级(Initial)初始级是软件开发团队的起点,特点是开发过程不可预测、不稳定且不受控制。
在这个等级中,软件开发过程通常是一种灵活的方式,缺乏定义和规范。
开发团队的工作主要依靠个人技能和经验,而非标准化方法。
第二等级——可管理级(Managed)当开发团队达到可管理级时,他们开始寻求一种系统化的方法来管理软件开发过程。
这个等级的关键是建立有效的项目管理实践,通过规范化的计划、控制和测量,对项目进展进行管理和监控。
第三等级——已定义级(Defined)已定义级是软件开发过程的一个重要里程碑,它要求开发团队建立起一套标准化的软件开发流程。
这个过程必须经过详细的定义和文档化,以确保团队的工作是可重复的和可预测的。
第四等级——量化管理级(Quantitatively Managed)在量化管理级,软件开发团队进一步改进了他们的过程,并引入了更多的量化和度量方法。
这些量化和度量方法是为了监控和管理软件开发过程的关键指标。
通过定期收集和分析数据,团队可以做出有根据的决策,进一步提高软件开发过程的质量和效率。
第五等级——优化级(Optimizing)优化级是软件开发过程的最高级别。
在这个等级中,开发团队持续追求卓越,并通过不断改进软件开发过程来实现进一步的提升。
团队会寻找新的创新方式,试验新的技术和方法,以优化软件开发过程的效率和质量。
综上所述,软件能力成熟度模型将软件开发能力划分为五个等级:初始级、可管理级、已定义级、量化管理级和优化级。
不同的等级代表了软件开发过程的不同成熟度水平,团队可以通过评估自身的成熟度来制定相应的改进计划,并逐步提高软件开发过程的质量和效率。
软件能力成熟度模型CMMI

软件能力成熟度模型 CMM(Capabitity Maturity Model) 上海市信息化办公室技术中心 上海市软件评测中心软件能力成熟度模型 CMM目录 ......................................... ! "#$% .................................................... & '()*+,- ............................................ . /0 ................................................ 1 234+ ................................................... 5 678+ ...................................................................................................... 9 6:;+ .................................................. < =>+ ................................................... ................................................... ? ) @A ............................................... B CDEFGHIJK ...........................................B LMM !+NOGPQRS................................................................ B! T!+ 234+ UVW.....................................XYZ B& B. B1 T&+ 78+ UVW ..................................... T.+ :;+ UVW ...................................... T1+ =>+ UVW........................................ 上海市信息办技术中心SHIOTC软件能力成熟度模型 CMM 一CMM 发展历史实施步骤LMM [\]"^_`abcdef-ghij kDG lmnopqrsptmqo ^uv wx `yWz{| cd}~-g lmoomsqp mp Gef-g "Oef hcd}~-'(J¤-+ §sqp ^ ¨ `Wz G- ¨x ` r°± Fz LMM G xx ¨¨ ` r°± FzT!+ X G LMMxY T&+G LMMx ` FzT.+T1+ X G x LMM¨x ^ ¨¨ `F ¨w ` r°± F LMM¨¨ G#] ¨¨ Zx 7^ ¨ `- ^ LMM± -- G Zx LMM± LmmnoMmoqoMpn±opqmo *-[\( ij×O{OG[ \- àáG{OG LMM± '(×[\ {O-[\ -[\ èéabNO ^ ZxxZ ` ê ¨ ` INO XpqmnrìotmqpXqp XrX ê í^}~I ×í^Iò7óíG:;W ò÷'( ùú|üa LMM ]í^,GOGcd:; XrX ÷ I #G^ LMM -[\ LMM Gê]zaG haG]:G a acd abó- a ! "#íGab $%]\O ^*&aG'()x `y*+, k DD-P./012343/G56^a78GaNO:; 9:]; aNOG-<@=à7I>?@/G-< ABG aNO G-<CDEFG?HI&JKK@LMNOPQ?R,G-:KKS 2TUVG!GJK & 8-WGNOG34#í 8XYZ?[\GQ]^_ 8 `PSG{abcb:-z-GNO /Id)ee d!G JK d7f7dGgh)BGNO NOGij@/klmyWn8Gop kD r°± êGGqr)s @/2Dt LMM G'(8>:; >O7d}~qu ív92Dt LMM VwdV>éNGx a R )abí"y"^IRGJKV8a:;qV)}~ V; @/ LMM JKzaNO{L| ¨ }k LMM /}Dtz'(~7@/hGx-+% Z 8G-+%GNOG/UG3430J aNO w \上海市信息办技术中心SHIOTC软件能力成熟度模型 CMM Y eijBGNOV)b XYZ!G> 7d>G Q]^_gh #-WG[2ò[>G @/ LMM -G >G2 ó9 -#ùabG'( LMM 2@/DxGê¤ 92@/UG:;)§¨ ^!"8@/aj kDG \í")7 LMM °27abcdOGJK ±@ /=]8 LMM ` `7+ LMM \ `N LMM .+)1+G@/ ± ±@/Gab9d ¨x `G1k1Bk |^ Zxx `1 k ± ¨xxx @/ wY d/ ` xx @/±@ /G!" ¨ ` `z ¨wwx LMM qV ^|qV> YZ > qVG ` z Z]kD> D% wY I \ 7/ ¨ kDD -P7 Z ¨x z 1+^quG YwZ 234+ wYZ 78+ ¨w :;+ Y =>+ ¨Y T!+ 234+ @S4G Z ¨xx G T&+ 78+ h@S4G ¨xx ¨xxx G@/ T.+ :;+ h@S4G ¨xxx Zxxx G@/ T1+ =>+ h@S4G Zxxx G@/ 2 N LMM T!+G 4ò[ Z ¨xx 二NO rìotmqpXqp基本概念NO÷NO]#íM×7e7dGj-ê 278@/| e~abbG`PaàO:;à ;× r°± GkDNOáGI$%:]KKC/NO~-NOGà~ ab:k~ NO rìotmqpXqpLmmno @/NOh+JGO 2í^V@/GNO§¨ NO rìotmqpXqpXpqìq§mp @/>zNOhGx_g NO- rìotmqpXqpMmoqo NO278 V}~TUfGO F/íVW¤>hG NOGf -+ rìotmqpLmmnoMmoqo±ppn上海市信息办技术中心SHIOTC软件能力成熟度模型 CMM @/G->iNOhèlG×7-J$éG¨ê -)- Mmoqpm±§§moqp -GJKKA¤~GNO2Dt )8aV ìaNO cd) )í`GNO}~cd}~ >AK÷2 _gF/Dt>R ,IGFG&JG -GJKK>]Dt@/6¤~GNOK÷V _gAùDIUI &J >NO}~28IaêV abcdò} ó!G7d>Gt G>hYZgh2{í^VG> :; LìqmoMmmp§po N ×|:; 8MI÷>GW;$f3%ab 8ù$éGjà}~ 8jàú ü Z|üG pmo 8G|ü JK òüG¤jà 4 Xppqppt >-GMò÷8>abhG í^úh :; Mmmp§po í$Q]qu>|G* ×3% Q] +e }~ ONO, rìotmqp°ppqXqpq 8hGNO~7 Q] ò}G, N G4} s + rìotmqpìpLnp hG`NO ×dab|ab_GI+ Q$%op op |op op Vop op op op rìotmqppqp§po í"MJ?àM56/G 上海市信息办技术中心SHIOTC软件能力成熟度模型 CMM三CMM 框架结构与各级组成aNO;!"#C cdXX{à^NOG§¨ @/NOhíG *$NOG-§¨ NO]I2dG 2}~G GO LMM @/8NO%UG NO Q+_+GJ}V òNO@/q!Ua!GJK LMM -O;!2&'(G^aGJK 92&G:;;! x]8)h|GIOOGò7Q] G*×ONO# 9 ×8NOG:; LMM @/zIopóG1+O +,1 LMM Gy-)T+ G0 .1+ ±omnnppn áT +y7z*UGJ, LgzJ ÷2|+ ^I+%y/0ijz-G`P+%G"1 LMM +G C]I2eGNO LMM Gqu×1I+ | ¨ INO Z IJ w¨ I) +%Gquk D"3Oefh45GFqu}sGquR, z-VU@/P quNO ×@/\ 5678 b)tQ] >,- 97qu" qu_:Fqu ;<= LMM 1+JKG-Q% T+1+ ±omnnppn T!+234+ ppmomnpnppn T&+678+ pìpnppn T.+6:;+ Mmmpnppn T1+=>+ >o§?nppn 上海市信息办技术中心SHIOTC软件能力成熟度模型 CMM ¨1+ I@AF8GP| B)234f 9)Cgh >Gì]nCDEFG NO Y78 .#Mùò9ì @/×GH7G)I 8hJG* ×56XXKLMN7|üOaOPIYZ)FGQR8 8!"GéS_) T US!"Gab) Vcd)!GGV)ò} C]I], Wà?jà I@/G9 I@/AH7GNOò÷2Dt GòX~9Y?Z[ G]\] ^_`a:Xb_7c dù e^NOGt Gf9/gh ^ I@/G]234 2 - 2ghH7G #op30× ij>NO:; ij:; ¤~!"/ ij *>|ü ijBGb ìcdò} LMM !+hò7G*>) Z 234+ ~7z"#Ga:;}~ 8$7>~7NO:;i X> YZí^jG> GaNO>KL a-#+!G Vkl NOJK> >G]|üG }~G 234 G ^÷] IGNO]I234GNO2JK> T!+G:;NO×:; >|ü >klò} m:; cd):; 5I $+G@/2!"AGéS &@/2X>G-WYZ^_i jNOK÷V-W34mNO >:;í"K nmpnp VJ38-# kl @/NU:;!"ijzG 8ú2ò÷2DtVo '( I@ApQ@/Gò÷:;'( bGKG>tGe9 G 上海市信息办技术中心SHIOTC´INO d Ñ üQ 5I qu +Ô[ ´I +´µz¿í½J¿íq S$ 7½J $7q SïÖ,- w dK÷ +] ¢^ùA ÑÃÏìÀGNOGëì2 zPQ$7½J92 ©ª½J yA ^ +GNO] z`P$7½JGNO 8^ +¥ z`P$7½J DË z8õG= G¿í½J ÕK÷8 x ÀGNOÁÀqu2Þ~7 ¾ NOG ëì8´INO qu,2Þ Ñ@/ N O G r* ] I!Ús J t*us J] INO vs J] I +@/92Þ t UãG/V½J æ/8*> NO ÁG w3xÖãê 9~ê #@/yz ÑG NO r*?ñ;]½J{|w2Þ 8 Ç >½ t>½G½J æ/ 8f }~ NOG ëì //GNO ÁÞ T>½GÃ-== ¡ O 4= ./¢£¤¡ ¥2= ./ ¦ ./0 1§¨ ©ª ©ªOS «¬®aO$5'67OS «¬¯T°4p±@ABCRh O¡ =²O ./ + /³´µ = ./µc c= ./¶·¸¹ºO¡ E»¼½d¾p±¿À Á +O= ./RhÂÃp Ä ÅÆ !"©ªOÇÈ* OÉ p±= ./D OÊ ËÈÌ¥2 /»¦ = ./X·ÍÄ +p ./OÎ >ÏÐ9O ÄpÏÐ9O OÑÒÓ <ÔRhÕB bc> = ./3 ÖרbÙO h &OÚË +Ð9D O¡ ÛÜ+> bcO= ÈÌÓ ÝÞßÄ./²Þ HIJK êz^ë/ç ×ë æ/ OJKã s CD½¾6 Fz _ > OJKÄ]/ a/æ/w 7ÿð Õ| /~7GJK F/] ýc +JK N¤JK ¢dJKõö:;JK cd JKÛ{V JK >½:; JK :;JK十一实施CMM二级过程的部分样例对于一个软件开发组织在实践中如何具体实施各关键过程域CMM并没有明确说明以下根据有关实践试着给出某公司实施CMM二级的简单样例供读者参考这些样例中是一些简单的初步的应用过程在实际的工作中还需不断完善提高尽管这些初步应用过程并不是为软件开发组织提供有用工具也不要求遵照执行但可为开展CMM实施工作提供一个借鉴某公司在二级实施过程中一共进行了8个方面改进核心实践为34个项目管理策略*项目管理过程概要*需求管理*评估过程*约定控制过程项目跟踪过程*项目管理审查过程软件质量保证过程*以下只对的部分进行说明内容包括目的目标范围及其相关流程活动等具体格式如下一项目管理策略1有效日期XXXXXXXX2授权经理XXXXXXXX3目的为使用项目管理过程提供指导下表3-1所示表3-1项目级别过程业务单元级别过程需求管理过程约定控制过程项目计划过程项目管理审核过程评估过程软件质量保证过程项目跟踪过程项目管理过程概要过程说明作为有效数据以上这些过程都需被用到获得以上有效日期三个月后应可提供所有过程的质量记录4范围适用于符合下列标准的所有项目项目约定与业务单元分离部门费用超过20000元的项目开发期超过10个星期的5策略为了满足软件交付约定项目管理过程要形成一个直接面向这个目的的管理系统这些过程要求达到以下目标1需求管理需求文档化需求提交管理人员和决策小组审查当需求改变时项目计划项目交付期和活动也都随之改变2软件项目计划需求和评估是项目计划的基础约定要在项目经理部门经理主管人及决策小组之间进行协商和其他业务单元的相互独立性进行协调和文档化决策小组评估项目计划主管人复审所有的外部业务约定对项目计划进行管理控制备案3软件项目计划进行项目计划是项目跟踪的基础计划要保持原有的状态项目经理要了解项目状态和问题如果项目计划不能被达到那么就要采取正确的措施可以调整工作方式或调整设计改变约定要重新协调所有的相关部门4软件质量保证在所有项目中执行SQA正在执行的SQA活动与项目管理报告无关主管人和项目经理定期检查SQA活动和结果5软件配置管理清楚分配的SQA任务SCM贯穿项目的整个生命周期SCM贯穿外部软件产品交付设计内部软件交付设计支持工具的整个过程例如编译器项目有能力在SCM下存储基本信息对软件基线和SCM行为进行定期检查二项目管理过程概要1有效日期XXXXXXXX2 授权经理XXXX XXXX3 目的这部分文档描述了项目管理过程如何生成一个满足软件需求协定的管理系统4 介绍这个文档描述如何确定项目管理过程如何根据这些过程形成满足交付约定的项目管理系统组织中的每一个人在项目过程中都有自己的角色如表3-2所示表3-2角色 描述/职责 主管人 业务单元领导提供业务单元外的所有约定权力部门经理直接向主管人汇报授权部门资源拥有者利用其运行约定项目项目经理 通常是一个区域管理者或项目小组领导负责项目管理活动例如设计和跟踪 项目小组成员 软件工程师或软件编写人员负责完成项目工作对设计提供计划和状态程序经理 主管人负责的员工负责跟踪约定提供市场前景SEPG 负责支持软件质量保证的过程提高活动5范围本范围包括支持在业务单元级别上的软件交付约定的必须的过程这些过程包括业务级别上的组织范围过程和项目级别上的项目基础过程如表3-3所示表3-3项目级别过程业务单元级别过程需求管理过程 约定控制过程项目计划过程 项目管理审核过程评估过程 软件质量保证过程 项目跟踪过程 项目管理过程概要6概念流程该管理系统的目的是建立一个基本的项目管理过程来跟踪项目的规模成本进度功能以及必要的过程准则以期在相似应用中可以重复在预算内准时按功能需求和按项目质量交付这些过程的概念流程用以下管理系统过程金字塔如下图所示描述为了满足约定需要做到以下几点了解需求估计工作量为了满足最初约定做工作计划控制批准约定跟踪计划状况根据约定审查状况如有必要从头修改保证产品质量遵从约定如有必要重新开始正确行动控制设备交付和记录自上向下看最初的约定是由项目计划支持的而项目计划是由需求和评估活动支撑的在最初的约定完成之前约定是由复审支撑的而复审又是由跟踪和保证支撑的自下向上看需求收集和工作量的估计结果被反馈到计划计划由约定授权接下来计划被跟踪产品和过程得以保证这些结果反馈至审核然后审核进程反馈至约定配置管理是用来防止重要项目信息丢失例如交付和记录7过程流程以下给出的全部过程流程反映了过程之间的交互和流动关系如果要了解更多过程进步的细节可以在过程文档上找到向业务单元提供某种功能产品是整个过程的出发点这些可能意味着销售程序声明另一个相互依赖的业务单元或者顾客工工程需求1 需求管理过程定义/分析/建议和项目计划定义和分析结果的过程步骤产生了需求说明书需求说明书是建议和项目计划步骤的基础2 项目计划过程初始计划项目计划初始化如果在需求说明书中不止一项项目则要将需求在项目内部分为几个部分多项目开发计划和单项目设计便被启动3 评估过程设计评估/审查评估评估是根据需求说明书和包含在项目计划里的资源和日程表进行的4 项目计划过程初始计划评估同项目计划一同作用计划要为约定的协定和建议做准备5控制过程约定协商/建议表格/约定点/约定跟踪在约定协商期间对计划和评估进行审核和讨论当取得所有小组认可后约定达成建议表格签署这就是约定约定信息被记录在约定记录中并且更新产品行车图6 项目跟踪过程实际与计划比较/估计状态和性能跟踪项目状态并同实际对比明确其差别处估计差别的影响决定是否需要采取正确的行动7 需求管理过程需求状态跟踪跟踪需求状态保证在整个项目的生命期中需求的实现8 软件质量保证过程年度SQA 计划/进行核查每年都应当准备一个来自单个项目的质量计划的SQA 计划这个计划展示了资源和进度的保证活动比如审计在建议之后执行计划和审计9 项目管理复审过程状态会议/项目复审/约定复审项目状态和性能的管理复审是在两个级别上进行的状态会议是在项目级别上召开的项目复审是在商务单元级别上进行的约定复审是用来复审在产品行车图上所有约定进行的状态在这一点上如果需要重新计划则过程流程也还需要重新设计如果需要重新计划则进行以下10~13步骤否则回到约定点去继续项目跟踪和项目管理审核过程如果项目完成则转至14步的交付点 10 项目计划过程需要重新计划吗重新计划更新项目计划如果需要从需求变更和评估变更获得输入为建议和约定协商准备一个修订计划11 需求管理过程需求变更控制如果修订计划包括需求变更执行需求变更控制步骤12 评估过程附加评估进行附加估计是为了满足项目计划需要以为了下一个开发阶段可能会需要重新计划需求变更或严重偏离计划或者改进评估13 约定控制过程新的约定协商返回至约定点或进行到交付点在约定协商期间复审和设计和评估当所有小组同意后做出新的约定并且签署建议表格这是新的约定点关于约定的信息记录在约定变更记录中同时产品行车图也被更新然后从这个新的约定点针对已更新的计划继续进行项目跟踪过程和项目管理复审过程如果项目完成则转至交付点步骤1414 项目跟踪过程事后分析交付之后举行从这个项目获得的信息和学到的教训的事后分析评估15 评估过程更新历史数据库收集执行后的实际数据同估计的比较存入历史数据库以备将来项目评估活动使用8 过程流程图 参考下图所示9质量记录质量记录是报告和表示使用过程的文档在过程存在问题的地方质量记录会指出过程改进的需要为了支持产品寿命必须进行质量记录建立项目备注存储以下项目管理过程的文档如表3-4所示如果记录没有存储在备注中在备注中应该有一个确定那条记录位置的条目表3-4 备注章节 文档/记录控制记录KPA/KP 的可跟踪性 10 项目管理策略 */*/C-1*C-211 项目管理过程概要*/C-1*C-220 需求管理过程 2RM 21 需求说明书 需求管理 2RM/AB-2 2 2 建议需求管理 2PP/AB-1 2 3 需求可跟踪性工具/矩阵需求管理 2RM/AC-2M-130 项目计划过程 2PP 2MC31 多项目开发设计 项目计划 2PP/AC-72PT/AB-13 2 单项目计划 项目计划 2PP/AC-72PT/AB-133质量计划项目计划 2PP/AC-8AC-132PT/AB-12QA/AC-3 2CM/AC-440 评估过程 2PP50 约定控制过程 2PP2PT60项目跟踪过程 2PT70 项目管理复审过程 2PT80 软件质量保证过程 2QA90 其他文档/记录可选2CM/AC-3说明C 约定AB 能力AC 活动M 度量V 验证2RM 需求管理KPA 2PP 项目计划KPA 2PT 项目跟踪KPA 2QA 质量保证KPA 2SM 转包合同管理KPA 2CM 配置管理KPA *第2级所有的KPA 以下列出了维护组织范围内过程的其他质量记录如表3-5所示表3-5控制组 文档/记录 控制过程KPA/KP 的可跟踪性 程序管理 产品流程图 约定控制 2PP 2PP 2PP/AC /AC /AC--42PT/AC 2PT/AC--4程序管理 约定改变记录 约定控制 2PP/AC 2PP/AC 2PP/AC--42PT/AC 2PT/AC--3SEPG SEPG 约定协议书 约定控制 2PP/AC 2PP/AC 2PP/AC--42PT/AC 2PT/AC--3SEPG SEPG项目审核日程项目管理审核 2PT/V 2PT/V 2PT/V--1 SEPG v SEPG v SQA 计划 软件质量保证 2QA/AC 2QA/AC 2QA/AC--1 SEPG SEPG SQA 审查报告 软件质量保证 2QA/AC 2QA/AC 2QA/AC--4 SEPG SEPG SQA 状态报告 软件质量保证 2QA/AC 2QA/AC 2QA/AC--6 SEPG SEPG尺度报告各种过程*/M */M */M--1说明C 约定AB 能力AC 活动M 度量V 验证2RM 需求管理KPA 2PP 项目计划KPA2PT 项目跟踪KPA 2QA 质量保证KPA 2SM 转包合同管理KPA 2CM 配置管理KPA *第2级所有的KPA三需求管理过程1 有效日期XXXX XXXX2 授权经理XXXX XXXX3 目的本文档描述为确保交付符合约定的功能和质量特点的产品而进行的需求管理过程4 范围这个过程可应用于一个或多个需求者给出的一个软件项目初始需求集合管理和控制这些需求以使得最终产品满足需求由于没有需求者协商同意需求所以这个过程不能应用在高级项目开发中本过程不包括收集初始需求集合的特定活动但是它设想用一些方式收集一个初始集合为了协商和同意文档化四评估过程1 有效日期XXXX XXXX2 授权经理XXXX XXXX3 目的这个文档描述了评估项目规模资源进度的过程用来支持项目计划和约定控制评估是来自于输入的数据结果必定是一定范围且没有确切的答案然而随着过程的改进及与历史数据的校准评估的作用才能逐渐显示出来4 目标评估过程的目标是提供输入数据来建立和保持产品开发约定项目计划是在评估项目的规模资源及进度的基础上建立的它反映在过去相似项目成绩上的表现与项目开发计划过程相关评估过程为以下问题提供了框架结构什么时候做评估谁应包括在内评估在其生命周期至少要做三次接近需求的批准或通过交付覆盖设计的建议在需求和计划任务上进行评估接近设计的批准通过交付覆盖实现使用当前的项目数据和计划任务的评估接近实现的完成通过交付覆盖综合测试使用当前的项目数据和计划任务的评估如果需要项目计划过程也许需要额外的评估因为评估是建立在需求的基础之上如果需求改变评估是无效的这就是需要新的评估最近项目的历史数据可用来提高评估的可靠性当项目完成时这些历史数据也应该收集起来5 需求与期望项目经理和小组成员需要把历史数据当作评估项目规模资源进度的基础它们需要一个可重复的简单的方法来产生评估6 过程流程评估过程的流程图如下图所示评估过程步骤发 相互依赖性过程步骤() % 0123 4ABCD EFGHI3 >?@五项目跟踪过程1 有效日期XXXX XXXX2 授权经理XXXX XXXX3 目的本过程的目的就是在项目的生命周期内对照计划临控一个项目的实际过程临控工作是通过收集有关进度资源成本特性和质量的重要信息完成的反映项目当前状态的信息是要与最初的和或当前通过的项目计划做比较项目过程是否违反计划的比较允许管理部门去确定与计划的偏差以便能对项目目标计划或资源做适当的调整它也能确保决定项目生存能力的重大的偏差被估计到并以适时的方式提到高层管理中4目标1这个过程应产生这样的信息它们是执行周期性项目状态会议和项目复审所需要的2这人过程应给项目经理和高层管理提供足够的信息来做出以数据为基础的业务决策3这个过程应提供在评估和计划效果方面支持未来项目的信息足够的项目追踪过程将被当作普通项目管理部门复审过程的副产品来复审5 过程流程项目追踪过程的流程图如下图所示项目跟踪过程 项目计划过程六软件质量保证过程 1有效日期XXXX XXXX Z [\L!M;½Ã-½½J |ü´×7}~NO>£ F6XXXX2授权经理XXXX3目的软件质量保证SQA过程提供了对软件开发活动是否在通过的方式下进行的独立的验证软件开发活动"这个词指整个组织活动并包括开发产品信息连续设计长工各种支持功能活动它包括管理活动也包括非管理活动在通过的方式下是指活动和最终产品符合可行的政策过程规程计划和标准4范围虽然所有的软件项目和大部分软件开发活动都潜在地属于SQA复审但并不是所有的软件开发活动都需要一个正式的SQA过程而且对某些活动应用SQA所得的利益要比应用在其他活动上大的多为了得到最大的利益SPEG和指挥委员会需要监视和复审SQA过程以便使得可利用的SQA资源总是用在那些管理部门认为对质量保证最重要的地方指挥委员会和SPEG要形成和通过一个SQA计划这个计划确定管理部门SQA优先考虑的事和资源承诺来完成计划他们还要按季度联合的复审SQA状态结果和计划5目标6顾客需要和期望7输入此过程包括两种类型输入SQA年度计划输入和审查过程输入8活动9输出审查报告月度状态报告指导委员会对SQA活动的复审10尺度11相互依赖性12过程流程软件质量保证过程流程图如下图所示软件能力成熟度模型 CMM d :; rìotmqp Lìqmo Mmmp§po >+ G bOe[Gf T&+ 678+ ,NO0 >qm?mo Xqp I,jJKGNOzm, 8,NO~j @/GJKNO O ^>GGJ~j L 30 ,NO~7 >qm?moXqppìo \|ü qmXqqm§ -:; ±opqmop rìotmqp Mmmp§po abO rìotmqp Xqo °ppq ,x ±opqq Lqmo 4 Xppq ppt 8>,//GNO\ >klò} rìotmqpXqpoqmm>pqso K->NOha m:;rìotmqp roqmo Mmmp§po ijò>GQ:;~ cd rìotmqp mno qmp N8NOGò}qVcG|ü56 #>,8>GQz}~ cd Gf :;-I~7G>NO | a V *>,G) #*op- *>,-í VpáabGú T.+ 6:;+ 7dNO:; moomopXqpMmmp§po cd:; rìotmqpmnoMmmp§po 8NOG*I,7d> Q]ed>t :; N7dpklabcd#z 7JK T1+ =>+ ú- pìpoXqppo N~ 3%úQ]úVd-'( f× z@/N 7d:;"1T`@/G TUfG ù'( :; psn Lsmp Mmmp§po NOj:; XqpLsmpMmmp§po O acd NO a ùG+ @/GNO+^=Fà 四CMM 实施要点上海市信息办技术中心SHIOTC软件能力成熟度模型 CMM "^ LMM -[\ ×R@/G@/L,NO L,×>f LMM GJK-qG30 LMM G0^G ^O NOO:; hONO]OGINOhG6O GVefì NO#*^h;G La { 9 ^h}GO:; NO*]8O}hGOz±$$f. ú +,abG) yNOGa V qu op Id_@/8z?q OG0 A~GNO:2 ~Gaba &8NO*op/ò ^NO/I)O:; &×G56^Ròü $% ]DGR@/P. MNOOGó $%qnL| G56 zNOG/} ¨ 2^-×G +,Gy/I8G3, / Gàó Lg@/Qqu,à7z LMM OJKVòiUG ÷ $eG|@/NO ~ó;+G)- Z /0 LMM JK ¤G]$ lsmo SR t Wz8aNO;Q]G±G0 Xsns ó LMM 9yLMM 3^NOG/J Sà F/]zàMI×>G56 9'(|ab ¨xx-W LMM hGNOzONO:;NO 8GNO/EU_RGopfG S á:Gj w LMM¨¨ F/8\@/ ù@/GaNOG 8^ x |GR\@/?R\> LMM¨¨ Gù2í /0U8j Y @/ LMM NOGó 2f)Uà>×G N 8N OG/@/`A+ f÷8+A Lg@/C]DE q3NO &V @/2eCù è éê @/8UhG§¨NOì2 G!G Gz 2í#,@/UVW ¤zUxNO+ , @/~7/G+JF/h @// GJ×h$7GN OJNO X {@/U§¨)>$é @/¤zzUx+ )J+G, ~7òü à7eO 2íGà&J× J)G ¨w +)cdG @/^)>G¨w Jc 4)4 4G R-W L2 @/P-j.GNOòü, @/òGó?5 9=ê GNO óqnNO8|üu & 7d× × 上海市信息办技术中心SHIOTC软件能力成熟度模型 CMM ¨÷J¤~2Z^GZJK Z÷G Gùà*Gú w÷L× Q]Gí{KG8× 8\>/ Y÷~7>óW INOGó)Wü ÷8>Gd{| tòü* ÷NO~tG Q]G u ÷hNO × Q] >|ü >Ze y/0ab ×Gò} í|üVòvNOG |üíG2f8 ÷@/G:;)NOG~7)6-G~ }s8op G^_~7êG,è 867|üNOG/0úGY}s n ÷G43/G ÷] NO2^ hy;ìGNO cd)zG)à LMM [*2í^x×GG-§¨ 92í^¤@/Oh *;¤zG U@/UKLGG LMM GYZ "#O > =_G56'(V^OGe OòüO:; ]GR OQ]B6OYZ 97ê2BGNO G+~730:; 4d>tVij-+GJ GON OzeG zXà\]G IFG&JD4ù GIfd±j+nGjL,ifíBONOV [\ LMM x]8O;!í^)G> 8Gí F/×a bíH u06 LMM JKG@/JKà7>GéN)Q ) U _R@/N LMM ó z@/PQONOJuG " efhêz LMM JKG Gi ±° ]@/1 f LMM G[ × ±KKà ±omo W LMM GfKG+"1Oe KK m ¤~hG§¨J+h °KKi °omns ~7L,J+G|ü KKà o ×$|ü KK pmq ghXYZzí^TUGNO óqn×Gf NO L2 @/ó?ó;G|2 LMM fGNO @//0ó^ \U;ONOGQ AG×,PQ>- LMM eR,,上海市信息办技术中心SHIOTC。
CMM(CMMI)基础知识介绍

第5级
◆ 特征 (1) 整个组织特别关注软件过程改进的持续性、预见及增强自身,防止缺陷及问题的发生,不 断地提高他们的过程处理能力。 (2) 加强定量分析,通过来自过程的质量反馈和吸收新观念,新科技,使软件过程不断地得到 改进。 (3) 根据软件过程的效果,进行成本 / 利润分析,从成功的软件过程中吸取经验,加以总结。 把最好的创新成绩迅速向全组织转移,对失败的案例,由软件过程小组进行分析以找出原因。 (4) 组织能找出过程的不足并预先改进,把失败的教训告知全组织以防止重复以前的错误。 (5) 对软件过程的评价和对标准软件过程的改进,都在全组织推广。 过程 不断地系统地改进软件过程。 理解并消除产生问题的公共根源,在任何一个系统中都可找到:由于随机变化造成重复工作、 进而导致时间浪费。为了防止浪费人力可能导致的系统变化,要消除“公共”的无效率根源”, 防止浪费发生。尽管所有级别都存在这些问题,但这是第5级的焦点。 ◆ 人员 整个组织都存在自觉的强烈的团队意识。 (2) 每个人都致力于过程改进,人们不再以达到里程碑式的成就而满足,而力求减少错误率。 ◆ 技术
CMM2级的关键过程域是8个,目标20个, 承诺9个,能力25个,活动62个,度量6个, 验证19个。
CMM等级及特点
12
CMM过程的可视性
5 输入
输出
4 输入
3 输入
2 输入 1 输入
13
输出 输出 输出 输出
1.6 CMM1.1的等级及其特征
第1级 ◆ 特征
(1) 软件过程的特点是杂乱无章,有时甚至是混乱,几乎没有定义过程 的规则或步骤。 (2) 过分的承诺。常作出良好的承诺:如“按照软件工程方式,有序的 工程步骤来做”;或达到高目标的许诺。实际上却出现一系列问题。 (3) 遇到危机就放弃院计划过程,反复编码和测试。 (4) 成功完全依赖个人努力和杰出的专业人才,取决于超常的管理人员 和杰出有效的软件开发人员。具体的表现和成果都源自于或者说决定于个 人的能力和他们先前的经验、知识以及他们的进取心和积极程度。 (5) 能力只是个人的特性,而不是开发组织的特性。依靠着个人的品质 或承受着巨大压力;或找窍门取得成果。但此类人一旦离去,组织的稳定 作用也随之消失。 (6) 软件过程是不可确定的和不可预见的。软件能力成熟度处于一级的 软件组织其软件过程在实际工作过程中经常被改变(过程是随意的)。这 类组织也在开发产品,但其成果是步稳定的,不可预见的不可重复的。也 就是说,软件的计划、预算、功能和产品的质量都是不可确定的和不可预 见的。
软件能力成熟度模型一级申报条件

软件能力成熟度模型一级申报条件摘要:一、软件能力成熟度模型简介1.概念和作用2.发展历程二、CMM 一级申报条件1.必须具备的软件过程能力2.必须满足的软件开发和维护过程要求3.必须满足的人员能力要求三、CMM 一级申报的具体流程和评估方法1.申报流程2.评估方法四、CMM 一级申报的意义和价值1.对软件过程改进的促进作用2.对软件企业竞争力提升的帮助正文:软件能力成熟度模型(Capability Maturity Model,简称CMM)是一种评估软件开发组织能力水平的模型,其目的是帮助软件企业识别和改善软件开发过程中的问题,提高软件开发效率和质量。
CMM 模型分为五个等级,从低到高依次为:初始级、可重复级、定义级、管理级和优化级。
CMM 一级是软件能力成熟度模型的最低等级,申报一级需要满足以下条件:1.必须具备的软件过程能力:软件企业在申报CMM 一级时,需要具备基本的软件开发和维护过程,例如需求分析、设计、编码、测试等。
这些过程需要以文档化的形式进行记录,以便于评估人员进行评估。
2.必须满足的软件开发和维护过程要求:在软件开发和维护过程中,企业需要遵循一些基本的原则和规范,例如配置管理、变更管理、问题管理等。
这些要求有助于确保软件开发过程的稳定和可控。
3.必须满足的人员能力要求:CMM 一级申报企业需要拥有一定数量的专业软件开发人员,这些人员需要具备相关的技能和经验,例如编程语言、开发工具、软件工程等。
此外,企业还需要有专门的培训计划,以提高员工的能力水平。
申报CMM 一级的具体流程如下:1.准备工作:企业需要进行内部评估,了解自身软件过程能力的现状,找出存在的问题和薄弱环节。
2.申报:企业向CMM 评估机构提交申报表,提供企业相关信息和软件过程资料。
3.评估:评估机构对企业进行现场评估,审查企业软件过程的文档和实践情况,与企业人员进行交流。
4.评估结果:评估机构给出评估结果,如果企业满足CMM 一级要求,将获得CMM 一级认证。
软件工程第十二章软件能力成熟度模型

CMM的未来发展
云原生和微服务架构的适 应性
随着云原生和微服务架构的普 及,CMM模型需要进一步发 展和改进,以适应这些新兴技 术的需求。
人工智能和机器学习的整 合
人工智能和机器学习在软件开 发中的应用越来越广泛, CMM模型需要与这些技术整 合,以提高软件开发的智能化 水平。
敏捷开发与CMM的融合
敏捷开发方法在软件开发中受 到广泛应用,CMM模型需要 与敏捷开发进一步融合,以提 高软件开发的灵活性和快速响 应能力。
个性化软件能力成熟度模 型
随着软件行业的快速发展和变 革,组织需要根据自身的特点 和需求,发展个性化的软件能 力成熟度模型,以更好地满足 业务发展需求。
05
软件能力成熟度模型案例研究
4. 重新评估
经过一段时间后,再次评估企业的软件开发 过程,确认改进效果。
05
06
实施效果
经过CMM的实施,企业的软件开发过程更加 规范,质量得到显著提升,同时开发效率也有 所提高。
案例二:CMM在软件开发项目中的应用
项目背景
01 某大型软件项目的开发,客户
对质量要求非常高。
1. 选择CMM级别
02 根据项目需求和客户要求,选
需求管理
需求变更得到控制,项目范围 和进度相对稳定。
已建立过程
项目过程已文档化并得到一定 程度的遵守。
文档管理
项目文档得到有效管理,方便 查阅和使用。
质量保证
实施了一定的质量保证措施, 如代码审查、测试等,以提高 软件质量。
已定义级
已定义过程
项目过程已完全文档化,并成为组织内部 标准。
预防措施
采取预防措施来降低缺陷和问题的发生率 。
3. 实施改进
III软件能力成熟度模型CMM

5.Optimizing Focus on process improvement Managing Change
4. Managed Process measured and controlled
Disciplined Process
3. Defined Process characterized, fairly well understood 2. Repeatable Integrated Can repeat previously Engineering mastered tasks Process Project Management
– – – –
自始至终对项目有控制 知道该做什么,怎么做,何时做,何时完成。 整体实力大于个人实力之和。 成员可以从合作中得到合作的乐趣。
TSP的7条原则:
1 提供一个简单的框架,每个人在其中各司其职。 2 把产品的开发分为多个周期。 3 建立标准的评估机制。 4 对小组和组员有准确的评价。 5 采用针对角色和小组的评估。 6 开发过程中强调纪律性。 7 有人提供关于小组协同工作的问题的指导。
全称:《质量管理和质量保证标准 第三部分: 在软件开发、供应和维护中使用指南》。 与GB/T19000.3—94对应
IS09000族标准 包含
(1) GB/T6583 1994( idtIS08402:1994) 质量管理和质量保证术语。
(2) GB/T19000.1-1994(idtlS09000-1:1994) 质量管理和质量保证准第1 部分选择和使用指南。 (3) GB/19000.2-1994(idtIS09000-2:1993) 质量管理和质量保证标准第2 部分GB/T19001、GB/T19002和GB/T19003实施通用指南。 (4) GB/T19000.3-1994(idtlS09000-3:1994) 质量管理和质量保证标准第 3部分GB/T19001在软件开发、供应和维护中的使用指南 (5) GB/T19000.4-1994(idtIS09000-4:1993) 质量管理和质量保证标准第 4部分可信性大纲管理指南。 (6) GB/T19000-1994(idtlS09001:1994) 质量体系列化设计、开发、 生 产、安装和服务的质量保证模式。 (7) GB/T19002-1994(idtlS09002:1994) 质量体系生产、安装和服务的 质量保证模式。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
CMM是Capability Maturity Model for Software的简称,中文叫“软件能力成熟度模型”,是对组织软件过程能力的描述。
CMM的核心是把软件开发视为一个过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化,使企业能够更好的实现商业目标。
它侧重于软件过程开发的管理及软件工程能力的改进与评估,因此 CMM被用作评价软件承包商能力并帮助组织改善软件过程质量,是目前国际上最流行、最实用的一种软件生产过程标准,成为当今企业从事规模软件生产不可缺少的一项内容。
CMM是由美国卡内基-梅隆大学软件工程研究所(CMU SEI)研究制定,并在全世界推广实施的一种软件评估标准,主要用于软件开发过程和软件开发能力的评估和改进。
CMM把软件开发过程的成熟度由低到高分为五级,等级越高,表明该企业软件开发失败风险越低,整体开发时间越短,并能减少开发成本,降低错误发生率,提高产品质量。
按照《使用软件工程》的标准,CMM将软件分为5个等级:(如图一所示)
图一
1.初始级(initial)
工作无序,项目进行过程中常放弃当初的规划
管理无章,缺乏健全的管理制度
开发项目的成效不稳定,产品的性能和质量依赖于个人能力和行为。
2.可重复级(Repeatable)
管理制度化,建立了基本的管理制度和规程,管理工作有章可循
初步实现标准化,开发工作较好的实施标准
稳定课跟踪,新项目的计划和管理基于过去的实践经验,具有重复以前成功项目的环境和条件
3.已定义级(Defined)
开发的过程,包括技术工作和管理工作,均已实现标准化,文档化。
建立了完善的培训制度和专家评审制度
全部技术活动和管理活动均可稳定实施
项目的质量,进度和费用均可控制。
对项目进行中的过程,岗位和指责均有共同的理解。
4.已管理级(Managed)
产品和过程已建立了定量的质量目标。
过程中活动的生产率和质量是可度量的。
已建立过程数据库。
已实现项目产品和过程的控制
可预测过程和产品质量趋势。
5.优化级(Optimizing)
可集中精力改进过程,采用新技术,新方法。
拥有防止出现缺陷,识别薄弱环节以及加以改进的手段
可取得过程有效性的统计数据,并可据此进行分析,从而得到更佳方法。
目前业界的通行标准:每千行源代码所包含的BUG数,CMM1级为11.95个,CMM2为5.52个,CMM3为2.39个,CMM4为 0.92个,而CMM5则只有0.32个。
在可靠性提高的同时,CMM5软件开发周期是CMM1的36%,而生产成本是CMM1的19%,平均每个软件开发人员的生产率会提高四倍。