




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
项目管理与质量保证CMM项目管理与质量保证CMM1我国软件产业存在的问题(1/5)观念有待创新观念创新软件企业对软件技术的了解大于对应用的了解技术与市场脱离软件服务将企业运营的重心由产品转向服务技术创新过于追求技术先进性培养软件关键技术加强核心产品在国际上的竞争力我国软件产业存在的问题(1/5)观念有待创新2我国软件产业存在的问题(2/5)观念有待创新管理创新多数企业缺乏软件工程的管理缺乏对软件过程的控制所有行为基本是反应式的软件过程是临时拼凑的对进度、经费的估计无实际根据难于控制质量进度滞后时,多数通过减少质量保证活动来赶工人员安排不合理,忙的太忙、闲的太闲我国软件产业存在的问题(2/5)观念有待创新3我国软件产业存在的问题(3/5)软件人才短缺缺乏软件设计和技术管理人才软件人才总量低软件人才结构不合理人才培训困难办学资格难于申请师资匮乏政府不扶持我国软件产业存在的问题(3/5)软件人才短缺4我国软件产业存在的问题(4/5)没有软件的监理机制软件开发采用自营制用户无法了解项目进度缺乏对开发过程有效的监督和控制我国软件产业存在的问题(4/5)没有软件的监理机制5我国软件产业存在的问题(5/5)应重视网络化、服务化、国际化的发展趋势网络化趋势分布计算、移动计算、智能网络、网络通信等服务化趋势开发周期缩短软件自动升级提供多种服务,由用户定购国际化趋势我国软件产业存在的问题(5/5)应重视网络化、服务化、国际化6如何按时、按预算、按客户需求生产出符合质量要求的软件?请使用软件能力成熟度模型(SoftwareCapabilityMaturityModel,SW-CMM)如何按时、按预算、按客户需求生产出符合质量要求的软件?7CMM产生的理论基础(1/2)20世纪30年代,谢华特(WalterShewart)在贝尔实验室工作时,提出了一套运用统计学进行质量管理的控制原则。统计学家丹明(W.EwardsDeming)和佐兰(JosephJuran)将其理论加以完善并付诸于实践。后来丹明又提出了一种称为丹明链式反应的现象。这些学者的做法,被人们称为全面质量管理(TotalQualityManagement,TQM)CMM产生的理论基础(1/2)20世纪30年代,谢华特(Wa8CMM产生的理论基础(2/2)1979年,一个质量管理学家克罗斯比(PhilipCrosby),成立了一家名为质量管理顾问的公司。专门从事质量问题的研究。IBM公司的拉德斯(RonRadice)和汉弗莱(WattsHumphrey)将全面质量管理思想应用于软件工程。1986年,汉弗莱从IBM退休后,加入了卡耐基.梅隆大学的软件工程研究所CMM产生的理论基础(2/2)1979年,一个质量管理学家克9CMM的发展过程(1/2)1986年11月,卡耐基.梅隆大学的软件工程研究所(CMU/SEI)应美国联邦政府的要求,在Mitre公司的协助下,于1987年9月开发了一套软件能力成熟度框架和一套软件成熟度问卷,用于评估软件供应商的能力1991年,SEI自己总结了成熟度框架和初版成熟度问卷的实践经验,并以此为基础,推出了CMM1.0版CMM的发展过程(1/2)1986年11月,卡耐基.梅隆大学10CMM的发展过程(2/2)1992年4月,SEI举行了一个CMM的研讨会,与会的大约有200名富有经验的软件专家。SEI在广泛听取他们的意见之后,于1993年推出了CMM1.1版。按原计划SEI将于1999年推出CMM2.0版,但美国国防部办公室要求SEI推迟发布……2001年12月,SEI完成了一个替代项目——能力成熟度模型集成(CapabilityMaturityModelIntegration,CMMI)CMM的发展过程(2/2)1992年4月,SEI举行了一个11CMM的概况(1/4)CMM提供了一个软件过程改进的框架该框架与软件生命周期无关,也与所采用的开发技术无关根据该框架开发企业内部具体的软件过程,可以极大程度地提高按计划的时间和成本提交有质量保证的软件产品的能力CMM的概况(1/4)CMM提供了一个软件过程改进的框架12CMM的概况(2/4)CMM重视企业的软件过程能力CMM认为保障软件质量的根本途径就是提升企业的软件生产能力企业的软件生产能力取决于企业的软件过程能力,特别是在软件开发和生产中的成熟度项目的执行不再是一个黑箱CMM的概况(2/4)CMM重视企业的软件过程能力13CMM的概况(3/4)CMM是在软件工程基础上提出来的CMM认识到在开发的过程中,某些关键过程域(KPA)才是软件开发的重点CMM描述了一个有效的软件过程的各个关键元素,指出了一个软件企业如何摆脱杂乱无章的、不成熟的软件过程,形成一个成熟的、有纪律的软件过程所必经的进化、提高的途径——判断企业当前的过程成熟状况,找出在改进过程中急需解决的若干问题,然后依据CMM选择过程改进策略,提升企业的软件过程能力CMM的概况(3/4)CMM是在软件工程基础上提出来的14CMM的概况(4/4)CMM是动态的质量管理系统标准与ISO9000有所不同CMM是一个指南CMM列举的实践几乎覆盖了软件企业计划、软件开发和维护工作管理的所有活动规划出了5个成熟度级别企业按部就班,就可以保证平稳提高自身的软件过程和产品质量CMM的概况(4/4)CMM是动态的质量管理系统标准15什么是CMM的评估?CMM评估包括5个等级,共计18个关键过程域,52个目标,300多个关键实践。每一级的评估由SEI授权的主任评估师领导一个评审小组进行,该小组成员大部分来自企业内部。评估过程包括员工培训、问卷填写和统计、文档审查、数据分析、与企业的高层领导讨论和撰写评估报告。评估结果由主任评估师签字生效。什么是CMM的评估?CMM评估包括5个等级,共计18个关键过16评估周期有多长?12~30个月评估周期有多长?17如何取得主任评估师资格?需要有10年以上的软件开发经验两年以上的软件项目管理经验计算机相关专业硕士以上学位要在SEI接受培训要经过两次以上的CMM评估全程实习这样可以拿到预备评估师资格要得到已有主任评估师资格的人推荐再次经过SEI的培训,并通过SEI认证如何取得主任评估师资格?需要有10年以上的软件开发经验18有关主任评估师……该资格非终身制,要继续保持,每年至少要参加两次CMM评估SEI有权取消你的主任评估师资格主任评估师收入如何?每天1500美元还可以考评估咨询师有关主任评估师……该资格非终身制,要继续保持,每年至少要参加19有关主任评估师……截止至2001年,全世界共有313个主任评估师2002年,上升至400多位我国于2002年5月有了中国的首批主任评估师北京航空航天大学软件所的周伯生和吴超英老师有关主任评估师……截止至2001年,全世界共有313个主任评20世界的CMM评估情况截至2000年6月底,全世界有1269家软件公司和机构通过了不同级别的认证5级38家,4级50家,3级210家澳大利亚和以色列各有1家4级,中国1家5级,其余均为印度和美国企业印度Infosys,从1991到1999通过了5级世界的CMM评估情况截至2000年6月底,全世界有1269家21我国的CMM评估情况截至2003年底,我国有104家软件公司和机构通过了不同级别的认证5级7家,4级4家,3级26家,2级67家5级中只有东软和用友为民族企业截至2003年9月,世界上从4到5的组织最快用了6个月时间国内某家从3到5,用了6个月,同时拿下了CMMI从SW-CMM到CMMI的过渡,某公司花了8000个人时我国的CMM评估情况截至2003年底,我国有104家软件公司22NextCMM的具体介绍NextCMM的具体介绍23CMM的专业术语(1/4)过程(Process):为实现给定目标所执行的一系列操作步骤。软件过程(SoftwareProcess):软件开发人员开发和维护软件及相关产品的一套行为、方法、实践和革新。其中,相关产品是指项目计划、设计文档、编程、测试和用户手册等。软件过程的定义完善与否标志着该企业的成熟程度CMM的专业术语(1/4)过程(Process):24CMM的专业术语(2/4)软件过程能力(SoftwareProcessCapablity):描述了在遵循软件过程后能够达到的预期结果的界限范围。该指标是对能力的一种衡量,用它可以预测一个组织(企业)在承接下一个软件项目时,所能期望得到的最可能的结果。CMM的专业术语(2/4)软件过程能力(SoftwareP25CMM的专业术语(3/4)软件过程性能(SoftwareProcessPerformance):表示遵循一个软件过程后所得到的实际结果。软件过程性能关注的是实际得到的结果。软件过程能力关注的是期望得到的结果。软件过程能力受限于它的环境,软件过程性能也不可能充分反映软件过程的整体能力。CMM的专业术语(3/4)软件过程性能(SoftwareP26CMM的专业术语(4/4)软件过程成熟度(SoftwareProcessMaturity):指一个具体的软件过程被明确地定义、管理、评价、控制及产生实效的程度。软件过程成熟度包含着能力的一种增长潜力,同时也表明了组织(企业)实施软件过程的实际水平。CMM的专业术语(4/4)软件过程成熟度(Software27不成熟的软件组织特征(1/3)在不成熟的软件组织中,软件过程实施前一般没有计划,往往是在项目开发的过程中由实际工作人员和管理员临时计划。甚至有的时候,即时建立了一个软件过程计划,在开发的过程中也不按计划进行。不成熟的软件组织特征(1/3)在不成熟的软件组织中,软件过程28不成熟的软件组织特征(2/3)不成熟的软件组织没有一个客观的基准来判断产品质量、及解决产品和过程中的问题,因此产品质量很难得到保证。一些为提高质量的环节经常会因为赶项目进度而减少或取消。在产品交付前,对用户来说,一切都是不可见的。不成熟的软件组织特征(2/3)不成熟的软件组织没有一个客观的29不成熟的软件组织特征(3/3)不成熟的软件组织工作性质是反应式的,通常项目管理者要集中精力去解决各种临时出现的各种疑难问题。不成熟的软件组织由于没有一套实事求是的估算进度、预算的方法,导致经常发生经费超支和项目超时等危机。当最后期限即将来临时,为了按照原定时间完成任务,往往在产品的功能和质量上大打折扣。不成熟的软件组织特征(3/3)不成熟的软件组织工作性质是反应30成熟的软件组织特征(1/3)成熟的软件组织自身应该具备组织和管理软件开发维护的过程能力。成熟的软件组织能够及时准确地向工作人员通报实际软件过程,有条不紊地按计划好的软件过程开展工作。必要时,及时地对软件过程定义加以更新,使其与实际工作方法相吻合。通过测试和成本、收益分析等方式来改进过程,使软件过程不断提高。成熟的软件组织特征(1/3)成熟的软件组织自身应该具备组织和31成熟的软件组织特征(2/3)成熟的软件组织对各项目的软件过程,有非常明确的规则。它要求每个人的职责清晰和明确(各负其责、协同工作和最大限度发挥个人潜力),它要求全体人员能普遍地、积极地参与改进软件过程的活动。成熟的软件组织中管理者可以方便地监督软件产品的质量以及生产这些产品的开发维护过程。成熟的软件组织特征(2/3)成熟的软件组织对各项目的软件过程32成熟的软件组织特征(3/3)成熟的软件组织具有一个评价产品质量,分析软件产品和过程问题的客观的、量化的基础。对进度和预算的制定是基于以往积累的经验,结果是合理和可行的。对产品的成本、进度、功能、性能和质量的期望值通常是能够实现的。成熟的软件过程中所有参与者都明白按要求工作的意义,并自觉遵循软件过程的有关规则,在一种有序的状态下开展软件工程活动。成熟的软件组织特征(3/3)成熟的软件组织具有一个评价产品质33CMM的体系结构——分级标准(1/2)初始级(Initiallevel)软件过程的特点是无秩序的,甚至是混乱的。可重复级(Repeatablelevel)建立了基本的项目管理过程来跟踪成本、进度和功能特性。已定义级(Definedlevel)已将管理和工程活动的软件过程文档化、标准化,并形成了整个软件组织的标准软件过程。CMM的体系结构——分级标准(1/2)初始级(Initial34CMM的体系结构——分级标准(2/2)已管理级(Managedlevel)收集对软件过程和产品质量的详细度量值,对软件过程和产品都有定量的理解和控制。优化级(Optimizinglevel)通过对来自过程方面、来自新概念方面和来自新技术方面的各种有用信息进行定量分析,能够不断地、持续性促使过程不断改进。CMM的体系结构——分级标准(2/2)已管理级(Manage35初始级可重复级已定义级已管理级优化级纪律化的过程标准、一致的过程可预测的过程不断改进的过程初始级可重复级已定义级已管理级优化级纪律化的过程标准、36某项目管理与质量保证培训课件37CMM的体系结构——可视性(1/1)级别1:软件过程是一个不定形的实体(一个黑盒),项目过程的可视性有局限性。级别2,生成软件的过程看成是一系列黑盒相连,在传输节点上具有管理可视性。级别3,盒子的内部结构,项目定义的软件过程中的任务,具有可视性。级别4,定义的软件过程得到定量使用和控制。管理人员可以测量项目的进度和存在的问题。级别5,不断尝试新的和改进的软件开发方法,以受控方式提高生产率和软件质量。CMM的体系结构——可视性(1/1)级别1:软件过程是一个不38成熟度级别过程能力CMM结构关键过程域公共特性关键实践目标实施及规范基础设施及活动成熟度级别过程能力CMM结构关键过程域公共特性关键实践目标实39CMM的体系结构——内部结构(1/2)CMM由5个成熟度等级组成,每个成熟度等级有着各自的功能。除第1级外,CMM的每一级都是按照完全相同的内部结构构成的。成熟度等级为顶层,不同的成熟度等级反映了软件组织的软件过程能力和该组织可能实现预期结果的程度。CMM的体系结构——内部结构(1/2)CMM由5个成熟度等级40CMM的体系结构——内部结构(2/2)每一个成熟度级别中,包含了实现这一级目标的若干关键过程。每一级的每个关键过程域(KPA)进一步包含若干关键实践无论哪个关键过程,他们的实践都统一按5个公共特性进行组织,即每一个关键过程都包含5类KPCMM的体系结构——内部结构(2/2)每一个成熟度级别中,包41CMM的内容(1/5)级别1:初始级软件开发机构一般不能提供开发和维护软件的稳定环境。成功依赖于机构中的具有较高能力的个人和少数精英分子。能力是个人特征而非机构特征。CMM的内容(1/5)级别1:初始级42CMM的内容(2/5)级别2:可重复级软件开发机构已建立软件项目的策略和实施这些策略的规程。项目执行经过定义的、文档化、曾经实施过、人员培训、可测量、强制及可改进的有效过程。CMM的内容(2/5)级别2:可重复级43CMM的内容(3/5)级别3:已定义级机构用于开发和维护软件的标准过程文档化,包括所有的软件工程和管理过程,综合成有机整体,称为机构标准软件过程。严格定义的软件过程有准备就绪准则、输入、实施工作的标准和规程、验证机制、输出和完成准则的过程。CMM的内容(3/5)级别3:已定义级44CMM的内容(4/5)级别4:已管理级机构为软件产品和过程设定许多定量的质量目标。开发机构的软件过程能力可概括为定量的和可预测的。CMM的内容(4/5)级别4:已管理级45CMM的内容(5/5)级别5:优化级整个机构强调渐进的过程改进。以预防缺陷为目的的过程中,机构能有效地主动确定软件过程的优势和薄弱环节,预先加强防范。CMM的内容(5/5)级别5:优化级46CMM的关键过程域(1/19)关键过程域(KeyProcessAreas):指一系列相互关联的操作活动,这些活动反映了一个软件组织改进软件过程时必须集中力量改进的几个方面。关键过程域标识了达到某个成熟度级别时所必须满足的条件CMM中一共18个关键过程域分成管理方面、组织方面、工程方面三类CMM的关键过程域(1/19)关键过程域(KeyProce47CMM的关键过程域(2/19)需求管理(RequirementsManagement,RM):在客户和实现客户需求的软件项目之间,建立对客户需求的共同理解。记录并控制客户需求,为软件工程和管理建立基准线。保持软件计划、产品和活动与系统软件的一致性。CMM的关键过程域(2/19)需求管理(Requiremen48CMM的关键过程域(3/19)软件项目计划(SoftwareProjectPlanning,SPP):制定实施软件工程与管理软件项目的合理的计划。估计软件工作产品的大小和所需资源,制定进度计划,确定并评估软件风险以及协商约定。CMM的关键过程域(3/19)软件项目计划(Software49CMM的关键过程域(4/19)软件项目跟踪和监督(SoftwareProjectTrackingandOversight,SPTO):对实际过程中的运作建立的一种透明的机制,以便当软件项目的实际运作偏离计划时,能够有效地采取措施。能够随时掌握软件项目的实际开发过程。根据软件开发计划管理软件项目。管理活动包括按照计划对软件完成情况和结果进行跟踪和评审,根据实际完成情况和结果做一些纠正。CMM的关键过程域(4/19)软件项目跟踪和监督(Softw50CMM的关键过程域(5/19)软件转包合同管理(SoftwareSubcontractManagement,SSM):选择合格的高质量的软件分承制方(Subcontractor)。对转包合同的有效管理。软件分承制方应该完成的工作及对工作的计划要形成文档,主承制方依据这些计划对软件分承制方的工作进行监督。CMM的关键过程域(5/19)软件转包合同管理(Softwa51CMM的关键过程域(6/19)软件质量保证(SoftwareQualityAssurance,SQA):是对软件项目的监督和监控为管理者提供有关软件项目的过程和产品的适度可见性。通过评审和审核软件产品和活动,验证它们是否与应用的标准和规程一致。CMM的关键过程域(6/19)软件质量保证(Software52CMM的关键过程域(7/19)软件配置管理(SoftwareConfigurationAssurance,SCM):是开发和维护各个阶段管理软件演进过程的方法和规程。保证软件项目生成的产品在软件生命周期中的完整性。通过确定给定时间点上的软件配置、系统地控制配置变化以及在整个软件生命周期中维护配置的完整性和可跟踪性,得到具有完整的工作产品。CMM的关键过程域(7/19)软件配置管理(Software53CMM的关键过程域(8/19)组织过程焦点(OrganizationProcessFocus,OPF):帮助软件组织建立在软件过程中组织应承担的责任。持续过程改进包括建立和保持对机构软件过程和项目软件过程的理解,并对评估、开发、维护和改进这些过程的活动进行协调。CMM的关键过程域(8/19)组织过程焦点(Organiza54CMM的关键过程域(9/19)组织过程定义(OrganizationProcessDefinition,OPD):在软件过程开发和维护的一系列操作中,对软件项目进行过程改进,并为软件组织提供一个持续的、长期的和有收益的坚实基础。开发和维护一组可用的能提高项目软件过程整体效能的软件过程资源集合,并为在定量过程管理中确定有意义的数据提供基础。过程定义包括开发和维护机构标准软件过程以及相关的过程资源CMM的关键过程域(9/19)组织过程定义(Organiza55CMM的关键过程域(10/19)培训程序(TrainingProgram,TP):提高个人的技能和知识确定机构、项目和个人的培训需求CMM的关键过程域(10/19)培训程序(Training56CMM的关键过程域(11/19)集成软件管理(IntegratedSoftwareManagement,ISM):将软件工程和管理活动结合成为密切相关、定义完整的软件过程。综合软件管理要按照严格定义的过程来计划和管理一个软件项目。CMM的关键过程域(11/19)集成软件管理(Integra57CMM的关键过程域(12/19)软件产品工程(SoftwareProductEngineering,SPE):始终执行经过严格定义,并综合了所有软件工程活动的工程过程,从而高效生产出稳定的软件产品。工程过程包括将软件工作产品记入文档,并保持它们的可跟踪性和一致性。CMM的关键过程域(12/19)软件产品工程(Softwar58CMM的关键过程域(13/19)组间协调(IntergroupCoordination,IC):使软件工程组与其他小组能积极协作。软件工程组必须针对系统的需求、目标和问题积极主动地与其他项目的工程组合作。CMM的关键过程域(13/19)组间协调(Intergrou59CMM的关键过程域(14/19)同级评审(PeerReviews,PR):尽早地、有效地排除软件产品中的缺陷。检查、结构式走查、其他集体评审方式完成。CMM的关键过程域(14/19)同级评审(PeerRevi60CMM的关键过程域(15/19)定量过程管理(QuantitativeProcessManagement,QPM):定量地控制软件项目的过程效能。稳定过程的效能一般在已知范围(定量过程能力)内。CMM的关键过程域(15/19)定量过程管理(Quantit61CMM的关键过程域(16/19)软件质量管理(SoftwareQualityManagement,SQM):定量地评价软件产品的质量,并实现具体的质量目标。机构要有策略和计划,并且对项目定义的软件过程进行调整。CMM的关键过程域(16/19)软件质量管理(Softwar62CMM的关键过程域(17/19)缺陷预防(DefectPrevention,SQM):明确产生缺陷的原因并预防它们再次发生。缺陷预防是一种以发展方式逐步进行软件过程改进的机制。CMM的关键过程域(17/19)缺陷预防(DefectPr63CMM的关键过程域(18/19)技术改革管理(TechnologyChangeManagement,TCM):确定新技术(如工具、方法和过程),并有序地将这些技术引入机构内。技术转化是确定、选择和评价新技术,并将有效的技术引入机构中,改进软件质量,提高生产率,缩短产品开发周期。CMM的关键过程域(18/19)技术改革管理(Technol64CMM的关键过程域(19/19)过程变更管理(ProcessChangeManagement,PCM):不断改进机构中所使用的软件过程,从而提高软件质量和生产率,缩短产品开发生命周期。过程更改管理有逐步的发展变化,也有创新、革命性的变化。CMM的关键过程域(19/19)过程变更管理(Process65软件监理机制(1/4)什么是软件工程监理?软件工程监理是依据有关工程的开发法律、法规、监理合同,对软件工程实施监督管理。1988年建设部颁布了《关于开展建设监理工作的通知》1996年我国全面开展了建设监理国外的很多信息项目在建设中实施了软件项目监理机制软件监理机制(1/4)什么是软件工程监理?66软件监理机制(2/4)在软件工程监理机制中用户负什么责任?用户是投资者,是全面负责项目筹资开发承担风险的管理班子因投资方错误带来的损失,由投资方承担责任履行经济合同保证监理费如期交付当监理方提出合理化建议并能由此获得资金节约时,投资方应给予奖励软件监理机制(2/4)在软件工程监理机制中用户负什么责任?67软件监理机制(3/4)在软件工程监理机制中监理方负什么责任?监理单位以第三方身份,开展软件工程监理活动公平维护其余两方的合法权益对获悉的商业机密负有保密的责任根据合同编制监理计划并定期向投资方提供项目监理信息及总结报告因监理方失职、错误指挥带来的损失,由监理方承担责任软件监理机制(3/4)在软件工程监理机制中监理方负什么责任?68软件监理机制(4/4)在软件工程监理机制中开发方负什么责任?开发方负责项目的开发建设有义务定期向用户、监理方汇报成本、进度、产品等的情报有义务根据监理方的要求公开各种技术资料以保证开发工作的透明性软件监理机制(4/4)在软件工程监理机制中开发方负什么责任?69丹明链式反应一个企业改进它的生产过程并且坚持不懈地按此方向进行努力;质量改进了;因为减少了返工,减少了错误,减少了延误,设计得更好,以及更有效地使用了资源,成本下降了;一系列的工作使得质量提高了,产品的售价降低了,产品的市场占有率上升了;最后:利润增加了。丹明链式反应一个企业改进它的生产过程并且坚持不懈地按此方向进70企业的软件过程能力指把企业从事软件开发和生产的过程本身透明化、规范化和运行的强制化。企业在执行软件过程中可能会反映出原定过程的某些缺陷,可根据反映的问题来改善这个过程。企业不断重复上述过程,使该过程完善、成熟。企业可清楚地知道项目是按照规定的过程进行。软件开发及生产过程中成功或失败的经验教训也就能够成为今后可以借鉴和吸取的营养,从而大大加快了软件生产的成熟程度的提高企业的软件过程能力指把企业从事软件开发和生产的过程本身透明化71项目管理与质量保证CMM项目管理与质量保证CMM72我国软件产业存在的问题(1/5)观念有待创新观念创新软件企业对软件技术的了解大于对应用的了解技术与市场脱离软件服务将企业运营的重心由产品转向服务技术创新过于追求技术先进性培养软件关键技术加强核心产品在国际上的竞争力我国软件产业存在的问题(1/5)观念有待创新73我国软件产业存在的问题(2/5)观念有待创新管理创新多数企业缺乏软件工程的管理缺乏对软件过程的控制所有行为基本是反应式的软件过程是临时拼凑的对进度、经费的估计无实际根据难于控制质量进度滞后时,多数通过减少质量保证活动来赶工人员安排不合理,忙的太忙、闲的太闲我国软件产业存在的问题(2/5)观念有待创新74我国软件产业存在的问题(3/5)软件人才短缺缺乏软件设计和技术管理人才软件人才总量低软件人才结构不合理人才培训困难办学资格难于申请师资匮乏政府不扶持我国软件产业存在的问题(3/5)软件人才短缺75我国软件产业存在的问题(4/5)没有软件的监理机制软件开发采用自营制用户无法了解项目进度缺乏对开发过程有效的监督和控制我国软件产业存在的问题(4/5)没有软件的监理机制76我国软件产业存在的问题(5/5)应重视网络化、服务化、国际化的发展趋势网络化趋势分布计算、移动计算、智能网络、网络通信等服务化趋势开发周期缩短软件自动升级提供多种服务,由用户定购国际化趋势我国软件产业存在的问题(5/5)应重视网络化、服务化、国际化77如何按时、按预算、按客户需求生产出符合质量要求的软件?请使用软件能力成熟度模型(SoftwareCapabilityMaturityModel,SW-CMM)如何按时、按预算、按客户需求生产出符合质量要求的软件?78CMM产生的理论基础(1/2)20世纪30年代,谢华特(WalterShewart)在贝尔实验室工作时,提出了一套运用统计学进行质量管理的控制原则。统计学家丹明(W.EwardsDeming)和佐兰(JosephJuran)将其理论加以完善并付诸于实践。后来丹明又提出了一种称为丹明链式反应的现象。这些学者的做法,被人们称为全面质量管理(TotalQualityManagement,TQM)CMM产生的理论基础(1/2)20世纪30年代,谢华特(Wa79CMM产生的理论基础(2/2)1979年,一个质量管理学家克罗斯比(PhilipCrosby),成立了一家名为质量管理顾问的公司。专门从事质量问题的研究。IBM公司的拉德斯(RonRadice)和汉弗莱(WattsHumphrey)将全面质量管理思想应用于软件工程。1986年,汉弗莱从IBM退休后,加入了卡耐基.梅隆大学的软件工程研究所CMM产生的理论基础(2/2)1979年,一个质量管理学家克80CMM的发展过程(1/2)1986年11月,卡耐基.梅隆大学的软件工程研究所(CMU/SEI)应美国联邦政府的要求,在Mitre公司的协助下,于1987年9月开发了一套软件能力成熟度框架和一套软件成熟度问卷,用于评估软件供应商的能力1991年,SEI自己总结了成熟度框架和初版成熟度问卷的实践经验,并以此为基础,推出了CMM1.0版CMM的发展过程(1/2)1986年11月,卡耐基.梅隆大学81CMM的发展过程(2/2)1992年4月,SEI举行了一个CMM的研讨会,与会的大约有200名富有经验的软件专家。SEI在广泛听取他们的意见之后,于1993年推出了CMM1.1版。按原计划SEI将于1999年推出CMM2.0版,但美国国防部办公室要求SEI推迟发布……2001年12月,SEI完成了一个替代项目——能力成熟度模型集成(CapabilityMaturityModelIntegration,CMMI)CMM的发展过程(2/2)1992年4月,SEI举行了一个82CMM的概况(1/4)CMM提供了一个软件过程改进的框架该框架与软件生命周期无关,也与所采用的开发技术无关根据该框架开发企业内部具体的软件过程,可以极大程度地提高按计划的时间和成本提交有质量保证的软件产品的能力CMM的概况(1/4)CMM提供了一个软件过程改进的框架83CMM的概况(2/4)CMM重视企业的软件过程能力CMM认为保障软件质量的根本途径就是提升企业的软件生产能力企业的软件生产能力取决于企业的软件过程能力,特别是在软件开发和生产中的成熟度项目的执行不再是一个黑箱CMM的概况(2/4)CMM重视企业的软件过程能力84CMM的概况(3/4)CMM是在软件工程基础上提出来的CMM认识到在开发的过程中,某些关键过程域(KPA)才是软件开发的重点CMM描述了一个有效的软件过程的各个关键元素,指出了一个软件企业如何摆脱杂乱无章的、不成熟的软件过程,形成一个成熟的、有纪律的软件过程所必经的进化、提高的途径——判断企业当前的过程成熟状况,找出在改进过程中急需解决的若干问题,然后依据CMM选择过程改进策略,提升企业的软件过程能力CMM的概况(3/4)CMM是在软件工程基础上提出来的85CMM的概况(4/4)CMM是动态的质量管理系统标准与ISO9000有所不同CMM是一个指南CMM列举的实践几乎覆盖了软件企业计划、软件开发和维护工作管理的所有活动规划出了5个成熟度级别企业按部就班,就可以保证平稳提高自身的软件过程和产品质量CMM的概况(4/4)CMM是动态的质量管理系统标准86什么是CMM的评估?CMM评估包括5个等级,共计18个关键过程域,52个目标,300多个关键实践。每一级的评估由SEI授权的主任评估师领导一个评审小组进行,该小组成员大部分来自企业内部。评估过程包括员工培训、问卷填写和统计、文档审查、数据分析、与企业的高层领导讨论和撰写评估报告。评估结果由主任评估师签字生效。什么是CMM的评估?CMM评估包括5个等级,共计18个关键过87评估周期有多长?12~30个月评估周期有多长?88如何取得主任评估师资格?需要有10年以上的软件开发经验两年以上的软件项目管理经验计算机相关专业硕士以上学位要在SEI接受培训要经过两次以上的CMM评估全程实习这样可以拿到预备评估师资格要得到已有主任评估师资格的人推荐再次经过SEI的培训,并通过SEI认证如何取得主任评估师资格?需要有10年以上的软件开发经验89有关主任评估师……该资格非终身制,要继续保持,每年至少要参加两次CMM评估SEI有权取消你的主任评估师资格主任评估师收入如何?每天1500美元还可以考评估咨询师有关主任评估师……该资格非终身制,要继续保持,每年至少要参加90有关主任评估师……截止至2001年,全世界共有313个主任评估师2002年,上升至400多位我国于2002年5月有了中国的首批主任评估师北京航空航天大学软件所的周伯生和吴超英老师有关主任评估师……截止至2001年,全世界共有313个主任评91世界的CMM评估情况截至2000年6月底,全世界有1269家软件公司和机构通过了不同级别的认证5级38家,4级50家,3级210家澳大利亚和以色列各有1家4级,中国1家5级,其余均为印度和美国企业印度Infosys,从1991到1999通过了5级世界的CMM评估情况截至2000年6月底,全世界有1269家92我国的CMM评估情况截至2003年底,我国有104家软件公司和机构通过了不同级别的认证5级7家,4级4家,3级26家,2级67家5级中只有东软和用友为民族企业截至2003年9月,世界上从4到5的组织最快用了6个月时间国内某家从3到5,用了6个月,同时拿下了CMMI从SW-CMM到CMMI的过渡,某公司花了8000个人时我国的CMM评估情况截至2003年底,我国有104家软件公司93NextCMM的具体介绍NextCMM的具体介绍94CMM的专业术语(1/4)过程(Process):为实现给定目标所执行的一系列操作步骤。软件过程(SoftwareProcess):软件开发人员开发和维护软件及相关产品的一套行为、方法、实践和革新。其中,相关产品是指项目计划、设计文档、编程、测试和用户手册等。软件过程的定义完善与否标志着该企业的成熟程度CMM的专业术语(1/4)过程(Process):95CMM的专业术语(2/4)软件过程能力(SoftwareProcessCapablity):描述了在遵循软件过程后能够达到的预期结果的界限范围。该指标是对能力的一种衡量,用它可以预测一个组织(企业)在承接下一个软件项目时,所能期望得到的最可能的结果。CMM的专业术语(2/4)软件过程能力(SoftwareP96CMM的专业术语(3/4)软件过程性能(SoftwareProcessPerformance):表示遵循一个软件过程后所得到的实际结果。软件过程性能关注的是实际得到的结果。软件过程能力关注的是期望得到的结果。软件过程能力受限于它的环境,软件过程性能也不可能充分反映软件过程的整体能力。CMM的专业术语(3/4)软件过程性能(SoftwareP97CMM的专业术语(4/4)软件过程成熟度(SoftwareProcessMaturity):指一个具体的软件过程被明确地定义、管理、评价、控制及产生实效的程度。软件过程成熟度包含着能力的一种增长潜力,同时也表明了组织(企业)实施软件过程的实际水平。CMM的专业术语(4/4)软件过程成熟度(Software98不成熟的软件组织特征(1/3)在不成熟的软件组织中,软件过程实施前一般没有计划,往往是在项目开发的过程中由实际工作人员和管理员临时计划。甚至有的时候,即时建立了一个软件过程计划,在开发的过程中也不按计划进行。不成熟的软件组织特征(1/3)在不成熟的软件组织中,软件过程99不成熟的软件组织特征(2/3)不成熟的软件组织没有一个客观的基准来判断产品质量、及解决产品和过程中的问题,因此产品质量很难得到保证。一些为提高质量的环节经常会因为赶项目进度而减少或取消。在产品交付前,对用户来说,一切都是不可见的。不成熟的软件组织特征(2/3)不成熟的软件组织没有一个客观的100不成熟的软件组织特征(3/3)不成熟的软件组织工作性质是反应式的,通常项目管理者要集中精力去解决各种临时出现的各种疑难问题。不成熟的软件组织由于没有一套实事求是的估算进度、预算的方法,导致经常发生经费超支和项目超时等危机。当最后期限即将来临时,为了按照原定时间完成任务,往往在产品的功能和质量上大打折扣。不成熟的软件组织特征(3/3)不成熟的软件组织工作性质是反应101成熟的软件组织特征(1/3)成熟的软件组织自身应该具备组织和管理软件开发维护的过程能力。成熟的软件组织能够及时准确地向工作人员通报实际软件过程,有条不紊地按计划好的软件过程开展工作。必要时,及时地对软件过程定义加以更新,使其与实际工作方法相吻合。通过测试和成本、收益分析等方式来改进过程,使软件过程不断提高。成熟的软件组织特征(1/3)成熟的软件组织自身应该具备组织和102成熟的软件组织特征(2/3)成熟的软件组织对各项目的软件过程,有非常明确的规则。它要求每个人的职责清晰和明确(各负其责、协同工作和最大限度发挥个人潜力),它要求全体人员能普遍地、积极地参与改进软件过程的活动。成熟的软件组织中管理者可以方便地监督软件产品的质量以及生产这些产品的开发维护过程。成熟的软件组织特征(2/3)成熟的软件组织对各项目的软件过程103成熟的软件组织特征(3/3)成熟的软件组织具有一个评价产品质量,分析软件产品和过程问题的客观的、量化的基础。对进度和预算的制定是基于以往积累的经验,结果是合理和可行的。对产品的成本、进度、功能、性能和质量的期望值通常是能够实现的。成熟的软件过程中所有参与者都明白按要求工作的意义,并自觉遵循软件过程的有关规则,在一种有序的状态下开展软件工程活动。成熟的软件组织特征(3/3)成熟的软件组织具有一个评价产品质104CMM的体系结构——分级标准(1/2)初始级(Initiallevel)软件过程的特点是无秩序的,甚至是混乱的。可重复级(Repeatablelevel)建立了基本的项目管理过程来跟踪成本、进度和功能特性。已定义级(Definedlevel)已将管理和工程活动的软件过程文档化、标准化,并形成了整个软件组织的标准软件过程。CMM的体系结构——分级标准(1/2)初始级(Initial105CMM的体系结构——分级标准(2/2)已管理级(Managedlevel)收集对软件过程和产品质量的详细度量值,对软件过程和产品都有定量的理解和控制。优化级(Optimizinglevel)通过对来自过程方面、来自新概念方面和来自新技术方面的各种有用信息进行定量分析,能够不断地、持续性促使过程不断改进。CMM的体系结构——分级标准(2/2)已管理级(Manage106初始级可重复级已定义级已管理级优化级纪律化的过程标准、一致的过程可预测的过程不断改进的过程初始级可重复级已定义级已管理级优化级纪律化的过程标准、107某项目管理与质量保证培训课件108CMM的体系结构——可视性(1/1)级别1:软件过程是一个不定形的实体(一个黑盒),项目过程的可视性有局限性。级别2,生成软件的过程看成是一系列黑盒相连,在传输节点上具有管理可视性。级别3,盒子的内部结构,项目定义的软件过程中的任务,具有可视性。级别4,定义的软件过程得到定量使用和控制。管理人员可以测量项目的进度和存在的问题。级别5,不断尝试新的和改进的软件开发方法,以受控方式提高生产率和软件质量。CMM的体系结构——可视性(1/1)级别1:软件过程是一个不109成熟度级别过程能力CMM结构关键过程域公共特性关键实践目标实施及规范基础设施及活动成熟度级别过程能力CMM结构关键过程域公共特性关键实践目标实110CMM的体系结构——内部结构(1/2)CMM由5个成熟度等级组成,每个成熟度等级有着各自的功能。除第1级外,CMM的每一级都是按照完全相同的内部结构构成的。成熟度等级为顶层,不同的成熟度等级反映了软件组织的软件过程能力和该组织可能实现预期结果的程度。CMM的体系结构——内部结构(1/2)CMM由5个成熟度等级111CMM的体系结构——内部结构(2/2)每一个成熟度级别中,包含了实现这一级目标的若干关键过程。每一级的每个关键过程域(KPA)进一步包含若干关键实践无论哪个关键过程,他们的实践都统一按5个公共特性进行组织,即每一个关键过程都包含5类KPCMM的体系结构——内部结构(2/2)每一个成熟度级别中,包112CMM的内容(1/5)级别1:初始级软件开发机构一般不能提供开发和维护软件的稳定环境。成功依赖于机构中的具有较高能力的个人和少数精英分子。能力是个人特征而非机构特征。CMM的内容(1/5)级别1:初始级113CMM的内容(2/5)级别2:可重复级软件开发机构已建立软件项目的策略和实施这些策略的规程。项目执行经过定义的、文档化、曾经实施过、人员培训、可测量、强制及可改进的有效过程。CMM的内容(2/5)级别2:可重复级114CMM的内容(3/5)级别3:已定义级机构用于开发和维护软件的标准过程文档化,包括所有的软件工程和管理过程,综合成有机整体,称为机构标准软件过程。严格定义的软件过程有准备就绪准则、输入、实施工作的标准和规程、验证机制、输出和完成准则的过程。CMM的内容(3/5)级别3:已定义级115CMM的内容(4/5)级别4:已管理级机构为软件产品和过程设定许多定量的质量目标。开发机构的软件过程能力可概括为定量的和可预测的。CMM的内容(4/5)级别4:已管理级116CMM的内容(5/5)级别5:优化级整个机构强调渐进的过程改进。以预防缺陷为目的的过程中,机构能有效地主动确定软件过程的优势和薄弱环节,预先加强防范。CMM的内容(5/5)级别5:优化级117CMM的关键过程域(1/19)关键过程域(KeyProcessAreas):指一系列相互关联的操作活动,这些活动反映了一个软件组织改进软件过程时必须集中力量改进的几个方面。关键过程域标识了达到某个成熟度级别时所必须满足的条件CMM中一共18个关键过程域分成管理方面、组织方面、工程方面三类CMM的关键过程域(1/19)关键过程域(KeyProce118CMM的关键过程域(2/19)需求管理(RequirementsManagement,RM):在客户和实现客户需求的软件项目之间,建立对客户需求的共同理解。记录并控制客户需求,为软件工程和管理建立基准线。保持软件计划、产品和活动与系统软件的一致性。CMM的关键过程域(2/19)需求管理(Requiremen119CMM的关键过程域(3/19)软件项目计划(SoftwareProjectPlanning,SPP):制定实施软件工程与管理软件项目的合理的计划。估计软件工作产品的大小和所需资源,制定进度计划,确定并评估软件风险以及协商约定。CMM的关键过程域(3/19)软件项目计划(Software120CMM的关键过程域(4/19)软件项目跟踪和监督(SoftwareProjectTrackingandOversight,SPTO):对实际过程中的运作建立的一种透明的机制,以便当软件项目的实际运作偏离计划时,能够有效地采取措施。能够随时掌握软件项目的实际开发过程。根据软件开发计划管理软件项目。管理活动包括按照计划对软件完成情况和结果进行跟踪和评审,根据实际完成情况和结果做一些纠正。CMM的关键过程域(4/19)软件项目跟踪和监督(Softw121CMM的关键过程域(5/19)软件转包合同管理(SoftwareSubcontractManagement,SSM):选择合格的高质量的软件分承制方(Subcontractor)。对转包合同的有效管理。软件分承制方应该完成的工作及对工作的计划要形成文档,主承制方依据这些计划对软件分承制方的工作进行监督。CMM的关键过程域(5/19)软件转包合同管理(Softwa122CMM的关键过程域(6/19)软件质量保证(SoftwareQualityAssurance,SQA):是对软件项目的监督和监控为管理者提供有关软件项目的过程和产品的适度可见性。通过评审和审核软件产品和活动,验证它们是否与应用的标准和规程一致。CMM的关键过程域(6/19)软件质量保证(Software123CMM的关键过程域(7/19)软件配置管理(SoftwareConfigurationAssurance,SCM):是开发和维护各个阶段管理软件演进过程的方法和规程。保证软件项目生成的产品在软件生命周期中的完整性。通过确定给定时间点上的软件配置、系统地控制配置变化以及在整个软件生命周期中维护配置的完整性和可跟踪性,得到具有完整的工作产品。CMM的关键过程域(7/19)软件配置管理(Software124CMM的关键过程域(8/19)组织过程焦点(OrganizationProcessFocus,OPF):帮助软件组织建立在软件过程中组织应承担的责任。持续过程改进包括建立和保持对机构软件过程和项目软件过程的理解,并对评估、开发、维护和改进这些过程的活动进行协调。CMM的关键过程域(8/19)组织过程焦点(Organiza125CMM的关键过程域(9/19)组织过程定义(OrganizationProcessDefinition,OPD):在软件过程开发和维护的一系列操作中,对软件项目进行过程改进,并为软件组织提供一个持续的、长期的和有收益的坚实基础。开发和维护一组可用的能提高项目软件过程整体效能的软件过程资源集合,并为在定量过程管理中确定有意义的数据提供基础。过程定义包括开发和维护机构标准软件过程以及相关的过程资源CMM的关键过程域(9/19)组织过程定义(Organiza126CMM的关键过程域(10/19)培训程序(TrainingProgram,TP):提高个人的技能和知识确定机构、项目和个人的培训需求CMM的关键过程域(10/19)培训程序(Training127CMM的关键过程域(11/19)集成软件管理(IntegratedSoftwareManagement,ISM):将软件工程和管理活动结合成为密切相关、定义完整的软件过程。综合软件管理要按照严格定义的过程来计划和管理
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030年中国锑掺杂二氧化锡氧化锡行业运行动态及发展前景分析报告
- 2025-2030年中国酸奶冰淇淋市场运行状况与投资战略研究报告
- 2025-2030年中国造船板市场运行动态规划分析报告
- 2025-2030年中国软体家具制造行业发展现状及前景趋势分析报告
- 2025-2030年中国超高分子量聚乙烯纤维行业竞争策略规划研究报告
- 2025-2030年中国负载均衡器行业运行态势及发展趋势分析报告
- 2025-2030年中国航空飞行培训行业十三五规划与投资战略研究报告
- 2025-2030年中国糖醇市场运营状况及发展前景分析报告
- 2025-2030年中国米香型酒市场发展现状及前景趋势分析报告
- 2025-2030年中国磷石膏行业发展潜力及未来趋势预测报告
- 【中考真题】2024年河南省普通高中招生考试历史试卷(含答案)
- 2024版年度经济法基础完整全套课件
- JT-T-445-2021汽车底盘测功机
- 体育科学:田径考试考试题(三)
- 2024年4月自考03200预防医学(二)试题
- 《研学旅行市场营销》课件-模块八 研学旅行促销策略
- 糖尿病孕妇护理:案例分析
- 《过华清宫绝句(其一)》-【中职专用】高一语文(高教版2023基础模块下册)
- (2024年)新版药品管理法培训课件
- 2022年4月自考00808商法试题及答案含解析
- JGJT280-2012 中小学校体育设施技术规程
评论
0/150
提交评论