软件能力成熟度模型(CMM)
- 格式:docx
- 大小:30.46 KB
- 文档页数:2
“软件能力成熟度模型”(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(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)优化级是软件开发过程的最高级别。
在这个等级中,开发团队持续追求卓越,并通过不断改进软件开发过程来实现进一步的提升。
团队会寻找新的创新方式,试验新的技术和方法,以优化软件开发过程的效率和质量。
综上所述,软件能力成熟度模型将软件开发能力划分为五个等级:初始级、可管理级、已定义级、量化管理级和优化级。
不同的等级代表了软件开发过程的不同成熟度水平,团队可以通过评估自身的成熟度来制定相应的改进计划,并逐步提高软件开发过程的质量和效率。
软件能力成熟度模型 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。
软件能力成熟度模型一级申报条件摘要:一、软件能力成熟度模型简介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)是一个用于评估和改进软件开发能力的框架,它通过定义五个不同的成熟度等级来帮助组织了解他们软件开发过程的状态,并提供指导他们改进的路径。
这五个等级分别是初始级、重复级、定义级、管理级和优化级。
在本文中,我将从这五个等级出发,深入探讨软件能力成熟度模型等级和过程,以期帮助读者更全面地理解这一主题。
### 1. 初始级在软件能力成熟度模型中,初始级是指组织在软件开发过程中缺乏一致性和可预测性。
在这个阶段,软件开发过程通常是不受控制的,因为缺乏标准化的过程和程序。
这意味着在初始级的组织中,软件开发过程是混乱的,不可靠的,并且难以管理和预测。
### 2. 重复级在重复级,组织开始意识到需要对软件开发过程进行一定程度的标准化和文档化,以确保在软件开发过程中能够重复使用成功的实践。
在这个阶段,组织可能会创建一些基本的流程,并且对这些流程进行持续改进,以确保在软件开发过程中的可预测性和一致性。
### 3. 定义级在定义级,组织已经实现了对软件开发过程的标准化,并且能够对这些过程进行量化和测量。
这意味着组织可以更好地控制和管理软件开发过程,并且能够更好地预测成果和生产力。
在这个阶段,组织通常会将标准化的软件开发过程进行文档化,并且建立一些度量指标来监控和改进这些过程。
### 4. 管理级在管理级,组织不仅能够量化和测量软件开发过程,还能够根据这些度量指标来进行持续改进和优化。
这意味着组织已经具有较高的管理水平,能够监控和控制软件开发过程,并且能够在持续改进中实现更高的成果和生产力。
在这个阶段,组织通常会建立一个持续改进的文化,并且不断提高对软件开发过程的认识和理解。
### 5. 优化级在优化级,组织已经实现了对软件开发过程的最高理解和控制。
这意味着组织能够根据对软件开发过程的深刻理解来实现最佳的成果和生产力,并且能够持续改进和优化软件开发过程。
在这个阶段,组织不断寻求创新和改进,以保持其在软件开发领域的领先地位。
什么是CMMI?软件能力成熟度模型(Capability Maturity Model For Software ,简称SW-CMM/CMMI),是由美国卡内基梅隆大学软件工程研究所(CMU SEI)研究出的一种用于评价软件承包商能力并帮助改善软件质量的方法,其目的是帮助软件企业对软件工程过程进行管理和改进,增强开发与改进能力,从而能按时地、不超预算地开发出高质量的软件。
其所依据的想法是:只要集中精力持续努力去建立有效的软件工程过程的基础结构,不断进行管理的实践和过程的改进,就可以克服软件开发中的困难。
CMM/CMMI是目前国际上最流行、最实用的一种软件生产过程标准,已经得到了国际软件产业界的认可,成为当今(企业)从事规模软件生产不可缺少的一项内容。
CMM/CMMI将软件过程的成熟度分为5个等级,以下是5个等级的基本特征:(1)初始级(initial)。
工作无序,项目进行过程中常放弃当初的计划。
管理无章法,缺乏健全的管理制度。
开发项目成效不稳定,项目成功主要依靠项目负责人的经验和能力,他一但离去,工作秩序面目全非。
(2)可重复级(Repeatable)。
管理制度化,建立了基本的管理制度和规程,管理工作有章可循。
初步实现标准化,开发工作比较好地按标准实施。
变更依法进行,做到基线化,稳定可跟踪,新项目的计划和管理基于过去的实践经验,具有重复以前成功项目的环境和条件。
(3)已定义级(Defined)。
开发过程,包括技术工作和管理工作,均已实现标准化、文档化。
建立了完善的培训制度和专家评审制度,全部技术活动和管理活动均可控制,对项目进行中的过程、岗位和职责均有共同的理解。
(4)已管理级(Managed)。
产品和过程已建立了定量的质量目标。
开发活动中的生产率和质量是可量度的。
已建立过程数据库。
已实现项目产品和过程的控制。
可预测过程和产品质量趋势,如预测偏差,实现及时纠正。
(5)优化级(Optimizing)。
基本概念:软件过程(Software Process):过程即人们为实现某一既定目标所执行的一系列步骤(IEEE--STD--610)。
软件过程则可定义为企业设计,研制和维护软件产品及相关资料文档的全部生产活动和工程管理活动。
理解包括SEI在内的美国过程学派的一个核心概念就是--只要过程正确及构成过程的解决方法正确,产品就会正确。
软件过程能力(Software Process Capability):企业实施软件过程所能实现预期目标的程度。
它可用于预测企业的软件过程水平。
软件过程行为(Software Process Performance):企业在项目开发中遵循其软件过程所能得到的实际结果。
软件过程成熟度(Software Process Maturity):软件过程行为可被定义,预测和控制并被持续性提高的程度。
它主要用来表明不同项目所遵循的软件过程的一致性。
软件能力成熟度等级(Software Capability Maturity Ievels):企业的软件开发在由低到高成熟化演进过程中所普遍面临的具有一定成熟度标志特征的平台。
成熟与不成熟(Mature and Immature):不成熟的标志有--没有明确的软件过程体系可以依据;无法对生产进行预测;不严格执行生产过程;质量无法保证;无健全的过程控制及质量控制体系;项目开发没有准则可遵循;开发结果主要依据项目小组及个人的带有主观因素的能力发挥。
成熟的标志有--项目开发是依据企业早已明确的过程准则来实施;开发结果较少依赖个人能力和自然因素;项目由过程控制并可对整个生产作出预测;产品质量得到有效监控(借助客观定量化的数据);过去的开发项目中所获经验得以积累并可系统地用于现行和未来的项目之中。
配置管理(Configuration Management):包括以下管理行为:对某个配置项的功能和物理特性进行识别和编档;对这些特征的变动进行控制;对变动和事实进行记录、汇报;验证需求计划的实现。
什么是CMMCMM是Capability Maturity Model for Software的简称,中文叫“软件能力成熟度模型”,是对组织软件过程能力的描述。
CMM的核心是把软件开发视为一个过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化,使企业能够更好的实现商业目标。
它侧重于软件过程开发的管理及软件工程能力的改进与评估,因此CMM被用作评价软件承包商能力并帮助组织改善软件过程质量,是目前国际上最流行、最实用的一种软件生产过程标准,成为当今企业从事规模软件生产不可缺少的一项内容。
CMM是由美国卡内基-梅隆大学软件工程研究所(CMU SEI)研究制定,并在全世界推广实施的一种软件评估标准,主要用于软件开发过程和软件开发能力的评估和改进。
CMM把软件开发过程的成熟度由低到高分为五级,等级越高,表明该企业软件开发失败风险越低,整体开发时间越短,并能减少开发成本,降低错误发生率,提高产品质量。
按照《使用软件工程》的标准,CMM将软件分为5个等级:(如图一所示)图一1.初始级(initial)工作无序,项目进行过程中常放弃当初的规划管理无章,缺乏健全的管理制度开发项目的成效不稳定,产品的性能和质量依赖于个人能力和行为。
2.可重复级(Repeatable)管理制度化,建立了基本的管理制度和规程,管理工作有章可循初步实现标准化,开发工作较好的实施标准稳定课跟踪,新项目的计划和管理基于过去的实践经验,具有重复以前成功项目的环境和条件3.已定义级(Defined)开发的过程,包括技术工作和管理工作,均已实现标准化,文档化。
建立了完善的培训制度和专家评审制度全部技术活动和管理活动均可稳定实施项目的质量,进度和费用均可控制。
对项目进行中的过程,岗位和指责均有共同的理解。
4.已管理级(Managed)产品和过程已建立了定量的质量目标。
过程中活动的生产率和质量是可度量的。
已建立过程数据库。
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%,平均每个软件开发人员的生产率会提高四倍。