能力成熟度模型cmm与cmmi.docx
8页CMM 与 CMMI软件能力成熟度模型(Capab ility Mat uri ty Model For Sof tware,简称 SW-CMM/CMMI),是由美国卡内基梅隆大学软件工程研究所(CMU SEI)研究出的一 种用于评价软件承包商能力并帮助改善软件质量的方法,其目的是帮助软件企业 对软件工程过程进行管理和改进,增强开发与改进能力,从而能按时地、不超预 算地开发出高质量的软件其所依据的想法是:只要集中精力持续努力去建立有 效的软件工程过程的基础结构,不断进行管理的实践和过程的改进,就可以克服 软件开发中的困难CMM/CMMI是目前国际上最流行、最实用的一种软件生产过 程标准,已经得到了国际软件产业界的认可,成为当今(企业)从事规模软件生产 不可缺少的一项内容CMMCMMI区别需求管理RM Requirements Management需求管理RM Requirements Management要与需求开发Requirement Development并行工作 明确要求需求的可追溯性软件项目策划SPPSoftware ProjectPlanning项目策划PPProject Planning・ 强调相关人员的参与・要有具体的任务分解表WBS・ 关注项目技巧的获得・ 项目数据的数据管理软件项目跟踪与监 控 SPT0 SoftwareProject Trackingand Oversight项目监督与控制PMC Project Monitoring and Control・ 监控具体实践级别上的约定・ 强调对风险和相关人员参与的监督软件子合同管理SSMSoftwareSubcontractManagement供应商合同管理SAMSupplier AgreementManagement引入了原"子商管理"和"组间协调"的意图 强调合同的概念软件质量保证SQASoftware QualityAssurance过程和产品质量保证PPQAProcess and ProductQuality Assurance强调对过程及工作产品的客观评价 要正式建立评价标准软件配置管理SCMSoftware Configuration Management配置管理CMConfiguration Management• "Software Library 软件库"被 "Configuration Management Syste m 配置管理系统" 代替・ 配置管理系统包括存储介质,规程和登陆配置 系统的工具度量与分析MAMeasurementandAnalysis新的过程区域比原来共同特性中的"度量与分析"部分要求要多 要求组织能够系统地开发并发展自己的度量CMM/CMMI将软件过程的成熟度分为5个等级,以下是5个等级的基本特征:(1) 初始级(ini tial)。
工作无序,项目进行过程中常放弃当初的计划 管理无章法,缺乏健全的管理制度开发项目成效不稳定,项目成功主要依靠项 目负责人的经验和能力,他一但离去,工作秩序面目全非2) 可重复级(Repeatable)管理制度化,建立了基本的管理制度和规 程,管理工作有章可循 初步实现标准化,开发工作比较好地按标准实施 变更依法进行,做到基线化,稳定可跟踪,新项目的计划和管理基于过去的实践 经验,具有重复以前成功项目的环境和条件3) 已定义级(Defined)开发过程,包括技术工作和管理工作,均已实 现标准化、文档化建立了完善的培训制度和专家评审制度,全部技术活动和管 理活动均可控制,对项目进行中的过程、岗位和职责均有共同的理解 4) 已管理级(Managed)产品和过程已建立了定量的质量目标开发活 动中的生产率和质量是可量度的已建立过程数据库已实现项目产品和过程的 控制可预测过程和产品质量趋势,如预测偏差,实现及时纠正5) 优化级(Optimizing)可集中精力改进过程,采用新技术、新方法 拥有防止出现缺陷、识别薄弱环节以及加以改进的手段可取得过程有效性的统 计数据,并可据进行分析,从而得出最佳方法能力成熟度模型能力成熟度模型( Capability Maturity Model for Software ,英文缩写为 S W-CMM ,简称 CMM)什么是能力成熟度模型 (Capability Maturity Model)CMM 是指 “能力成熟度模 型”,是对于软件组织在定义、实施、度量、控制和改善其软件过程的实践中各个发 展阶段的描述。
它是在美国国防部的指导下,有软件开发团体和软件工程学院( SEI )及 Carnegie Mellon 大学共同开发的 CMM 的核心是把软件开发视为一个过程,并 根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化、 使企业能够更好地实现商业目标CMM 是一种用于评价软件承包能力并帮助其改善软件质量的方法,侧重于软件 开发过程的管理及工程能力的提高与评估 CMM 分为五个等级:一级为初始级,二 级为可重复级,三级为已定义级,四级为已管理级,五级为优化级 从当今整个软 件公司现状来看,最多的成熟度为 1 级,多数成熟度为 2 级,少数成熟度为 3 级,极 少数成熟度为 4 级,成熟度为 5 级的更是凤毛麟角其所依据的想法是: 只要集中精力持续努力去建立有效的软件工程过程的基础结 构,不断进行管理的实践和过程的改进,就可以克服软件生产中的困难 CMM 它是 目前国际上最流行、最实用的一种软件生产过程标准,已经得到了众多国家以及国际 软件产业界的认可,成为当今企业从事规模软件生产不可缺少的一项内容CMM 为软件企业的过程能力提供了一个阶梯式的改进框架,它基于过去所有软 件工程过程改进的成果,吸取了以往软件工程的经验教训,提供了一个基于过程改进 的框架;它指明了一个软件组织在软件开发方面需要管理哪些主要工作、这些工作之 间的关系、以及以怎样的先后次序, 一步一步的做好这些工作而使软件组织走向成熟。
能力成熟度模型的历史和发展信息时代,软件质量的重要性越来越为人们所认识软件是产品、是装备、是工 具,其质量使得顾客满意,是产品市场开拓、事业得以发展的关键而软件工程领域 在 1992 年至 1997 年取得了前所未有的进展 , 其成果超过软件工程领域过去 15 年来 的成就总和软件管理工程引起广泛注意源于 20 世纪 70 年代中期当时美国国防部曾立题专 门研究软件项目做不好的原因, 发现 70% 的项目是因为管理不善而引起, 而并不是因 为技术实力不够,进而得出一个结论,即管理是影响软件研发项目全局的因素,而技 术只影响局部到了 20 世纪 90 年代中期,软件管理工程不善的问题仍然存在,大约 只有 10%的项目能够在预定的费用和进度下交付 软件项目失败的主要原因有: 需求 定义不明确;缺乏一个好的软件开发过程;没有一个统一领导的产品研发小组;子合 同管理不严格;没有经常注意改善软件过程;对软件构架很不重视;软件界面定义不 善且缺乏合适的控制;软件升级暴露了硬件的缺点;关心创新而不关心费用和风险; 军用标准太少且不够完善等等 在关系到软件项目成功与否的众多因素中, 软件度量、 工作量估计、项目规划、进展控制、需求变化和风险管理等都是与工程管理直接相关 的因素。
由此可见,软件管理工程的意义至关重要1987 年,美国卡内基 . 梅隆大学软件研究所( SEI )受美国国防部的委托,率先 在软件行业从软件过程能力的角度提出了软件过程成熟度模型( CMM ),随后在全世界推广实施的一种软件评估标准, 用于评价软件承包能力并帮助其改善软件质量的 方法它主要用于软件开发过程和软件开发能力的评价和改进它侧重于软件开发过 程的管理及工程能力的提高与评估 CMM 自 1987 年开始实施认证,现已成为软件 业最权威的评估认证体系 CMM 包括 5 个等级,共计 18 个过程域, 52 个目标, 30 0 多个关键实践CMM 的基本思想CMM 的基本思想是,因为问题是由我们管理软件过程的方法引起的,所以新软 件技术的运用不会自动提高生产率和利润率 CMM 有助于组织建立一个有规律的、 成熟的软件过程改进的过程将会生产出质量更好的软件,使更多的软件项目免受时 间和费用的超支之苦软件过程包括各种活动、技术和用来生产软件的工具因此,它实际上包括了软 件生产的技术方面和管理方面 CMM 策略力图改进软件过程的管理,而在技术上的 改进是其必然的结果必须牢记,软件过程的改善不可能在一夜之间完成, CMM 是以增量方式逐步引 入变化的。
CMM 明确地定义了 5 个不同的 “成熟度”等级,一个组织可按一系列小的 改良性步骤向更高的成熟度等级前进成熟度等级1:初始级(Initial)处于这个最低级的组织,基本上没有健全的软件 工程管理制度每件事情都以特殊的方法来做如果一个特定的工程碰巧由一个有能 力的管理员和一个优秀的软件开发组来做,则这个工程可能是成功的然而通常的情 况是,由于缺乏健全的总体管理和详细计划,时间和费用经常超支结果,大多数的 行动只是应付危机,而非事先计划好的任务处于成熟度等级 1 的组织,由于软件过 程完全取决于当前的人员配备, 所以具有不可预测性, 人员变化了, 过程也跟着变化 结果,要精确地预测产品的开发时间和费用之类重要的项目,是不可能的成熟度等级 2:可重复级 (Repeatable) 在这一级,有些基本的软件项目的管理 行为、设计和管理技术是基于相似产品中的经验,故称为 “可重复 ”在这一级采取了 一定措施,这些措施是实现一个完备过程所必不可缺少的第一步典型的措施包括仔 细地跟踪费用和进度不像在第一级那样,在危机状态下方行动,管理人员在问题出 现时便可发现,并立即采取修正行动,以防它们变成危机。
关键的一点是,如没有这 些措施,要在问题变得无法收拾前发现它们是不可能的在一个项目中采取的措施也 可用来为未来的项目拟定实现的期限和费用计划成熟度等级 3:已定义级 (Defined) 在第 3 级,已为软件生产的过程编制了完整 的文档软件过程的管理方面和技术方面都明确地做了定义,并按需要不断地改进过 程,而且采用评审的办法来保证软件的质量在这一级,可引用 CASE 环境来进一步 提高质量和产生率 而在第 —级过程中, “高技术 ”只会使这一危机驱动的过程更混乱成熟度等级 4:已管理级 (Managed) 一个处于第 4 级的公司对每个项目都设定 质量和生产目标 这两个量将被不断地测量, 当偏离目标太多时, 就采取行动来修正 利用统计质量控制, 管理部门能区分出随机偏离和有深刻含义的质量或生产目标的偏 离(统计质量控制措施的一个简单例子是每千行代码的错误率相应的目标就是随时 间推移减少这个量 )成熟度等级5:优化级(Optimizing)一个第5级组织的目标是连续地改进软件过 程这样的组织使用统计质量和过程控制技术作为指导从各个方面中获得的知识将 被运用在以后的项目中,从而使软件过程融入了正反馈循环,使生产率和质量得到稳 步的改进。
整个企业将会把重点放在对过程进行不断的优化, 采取主动的措施去找出过程的 弱点与长处,以达到预防缺陷的目标同时,分析各有关过程的有效性资料,作出对 新技术的成本与效益的分析,并提出对过程进行修改的建议达到该级的公司可自发 的不断改进,防止同类缺陷二次出现在表中可以看出, CMM 为软件的过程能力提供了一个阶梯式的改进框。

卡西欧5800p使用说明书资料.ppt
锂金属电池界面稳定化-全面剖析.docx
SG3525斩控式单相交流调压电路设计要点.doc
话剧《枕头人》剧本.docx
重视家风建设全面从严治党治家应成为领导干部必修课PPT模板.pptx
黄渤海区拖网渔具综合调查分析.docx
2024年一级造价工程师考试《建设工程技术与计量(交通运输工程)-公路篇》真题及答案.docx
【课件】Unit+3+Reading+and+Thinking公开课课件人教版(2019)必修第一册.pptx
嵌入式软件开发流程566841551.doc
生命密码PPT课件.ppt
爱与责任-师德之魂.ppt
制冷空调装置自动控制技术讲义.ppt


