软件质量PPT课件_第1页
软件质量PPT课件_第2页
软件质量PPT课件_第3页
软件质量PPT课件_第4页
软件质量PPT课件_第5页
已阅读5页,还剩65页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件质量,1,.,本章内容,软件质量管理体系,软件质量的定义,软件质量模型,软件质量活动,什么是质量,什么汽车质量好?宝马还是通用?什么笔记本电脑质量好?联想还是苹果?什么手机质量好?诺基亚还是三星?,质量的定义,ISO关于质量的定义表示如下:一个实体的所有特性,基于这些特性可以满足明显的或隐含的需求。而质量就是实体基于这些实体特性满足需求的程度。实体:产品:手机、MP3、汽车、ERP软件、桌子.服务:酒店、出租车、快递、培训、美容.,实体特性举例,榨汁机:功能:能够榨豆浆、水果汁(苹果、梨、西瓜.)性能:榨一公斤黄豆需要多长时间?耗能:榨一公斤黄豆耗电量多少?安全性:榨汁过程中有无人体安全防护措施?有无漏电保护?可靠性:榨汁机能持续稳定运转多长时间?易用性:榨汁机的操作是否简单方便?.酒店:建筑:客房、西餐厅、宴会厅、酒吧、健身房.设施:配套设施的品牌、档次环境:交通、风景.服务:服务品种、服务态度、响应客户要求的及时性.,软件质量的三个层次,从质量的定义,我们可以引申出不同层次的软件质量:符合需求规格:符合开发者明确定义的目标,即产品是不是在做让它做的事情。目标是开发者定义的,并且是可以验证的;符合用户显式需求:符合用户所明确说明的目标。目标是客户所定义的,符合目标即判断我们是不是在做我们需要做的事情;符合用户实际需求:实际的需求包括用户明确说明的和隐含的需求。,影响软件质量的因素,流程技术组织上面三个方面是影响软件质量的铁三角,软件质量的提高应该是一个综合的因素,需要从每个方面进行改进,同时还需要兼顾成本和进度,产品质量,流程,技术,组织,质量管理发展阶段,第一阶段检验质量管理(19世纪末-20世纪年代初)专门的质量检验部门和人员以事后检验为主第二阶段统计质量控制(20世纪40年代-20世纪60年代)强调统计方法通过历史数据得出规律,指导将来的项目第三阶段将质量控制扩展到产品生命周期全过程,强调全体员工参与TQM代表人物:Deming、Juran、Crosby,本章内容,软件质量管理体系,软件质量的定义,软件质量模型,软件质量活动,软件质量管理体系,流行的软件质量管理体系,ISO9000,CMM,六西格玛,ISO9000:2000版标准,ISO9000族2000版标准主要由ISO9000、ISO9001和ISO9004三个核心标准组成ISO9000阐明了ISO9000:2000版标准据以制定的管理理念和原则,确定了新版标准的指导思想和理论基础,规范和确定了新版ISO9004族标准所使用的概念和术语。ISO9001标准对组织质量管理体系必须履行的要求做了明确的规定,是对产品要求的进一步补充。ISO9004是组织进行持续改进的指南标准。,2000版的八项质量管理原则(1),2000版的八项质量管理原则(2),八项质量管理原则的意义,是质量管理的理论基础;用高度概括、易于理解的语言所表述的质量管理的最基本、最通用的一般性规律;为组织建立质量管理体系提供了理论依据;是组织的领导者有效地实施质量管理工作必须遵循的原则。,CMM历史和起源(1),CMM历史和起源(2),美国软件工程研究所(SEI)受美国防部委托立项,要求提出一个模型,以评估软件承包商能力协助软件组织改进过程,提高过程能力项目负责人:WattsHumphrey1987年发表“承包商软件工程能力的评估方法”,提出初始框架1991年推出CMM1.0版,1993年提出CMM1.1版现正式开发CMMI(CMMIntegration),软件能力成熟度模型CMM,CMM模型的各级管理可视度,CMM模型概要,CMM1级特点,初始级一般不能提供开发和维护软件的稳定环境。缺乏健全的管理实践,不适当的规划和反应式的驱动体系会降低良好的软件工程实践所带来的效益。在危机时刻,项目一般抛弃预定的规程,回复到仅作编码和测试。项目的成功完全依赖于有一个杰出的经理及一个有经验的、战斗力强的软件队伍。但当他们离开项目后,他们能使过程稳定的影响也随之消失。等级1组织的过程能力是不可预测的,过程是无序的。进度、预算、功能性和产品质量一般是不可预测的。实施情况依赖于个人的技能、知识和动机。,CMM2级特点,可重复级已建立管理软件项目的方针和实施这些方针的规程。基于在类似项目上的经验对新项目进行策划和管理。达到等级2的目的是使软件项目的有效管理过程制度化,这使得组织能重复在以前类似项目上的成功实践。项目已设置基本的软件管理和控制。过程能力可概括为有纪律的,因为软件项目的策划和跟踪是稳定的,能重复以前的成功。由于遵循切实可行的计划,项目过程处于项目管理系统的有效控制之下。,CMM3级特点,已定义级全组织的开发和维护软件的标准过程已文档化,包括软件工程过程和软件管理过程,而且这些过程被集成为一个有机的整体,称为组织的标准软件过程。组织中有一个专门负责组织的软件过程活动的组,例如软件工程过程组(SEPG)。这样的组织制定并实施全组织的培训计划。项目根据其特征剪裁组织的标准软件过程,建立项目定义软件过程。过程能力可概括为标准的和一致的。在所建立的产品线内,成本、进度和功能性均受控制、对软件质量进行跟踪。整个组织范围内对已定义过程中的活动、角色和职责有共同理解。,CMM4级特点,已管理级组织对软件产品和过程都设置定量的质量目标。对所有项目都测量其重要软件过程活动的生产率和质量。利用全组织的软件过程数据库收集和分析从项目定义软件过程中得到的数据。软件过程均已配备有妥善定义的和一致的度量。项目通过将其过程实施的变化限制在定量的可接受的范围之内,从而实现对其产品和过程的控制。开发新应用领域的软件所带来的风险是已知的,并得到精心的管理。过程能力可概括为可预测的,因为过程是已测量的并在可测的范围内运行。组织能定量地预测过程和产品质量方面的趋势。软件产品具有可预测的高质量。,CMM5级特点,优化级整个组织集中精力进行不断的过程改进。为了预防缺陷出现,组织有办法识别出过程的弱点并预先予以加强。利用有关软件过程有效性的数据,识别出最佳技术创新,推广到整个组织。所有软件项目组都分析缺陷,确定其原因,并且认真评价软件过程,以防止已知类型的缺陷再次出现,同时将经验教训告知其它项目。过程能力的基本特征是不断改进,不断改善其项目的过程性能。为此,既采用在现有过程中增量式前进的办法,也采用借助新技术、新方法进行革新的办法。,CMM级别与质量关系,软件过程成熟度等级,软件准时提交的百分比,每人每月生产的程序行数,软件需要返工的百分比,平均软件失效时间近似),大于10,初始级,=45,2到60分钟,小于10,可重复级,90,1.5Z,20,1-160小时,小于1,已定义级,99,2.5Z,10,不确定,小于0.1,管理级,降低开发时间到1/2,5Z,5,不确定,小于0.01,优化级,降低开发时间到1/4,10Z,=2,近似完全可靠,CMM的用途,评估组用来识别组织中的强处和弱点;评价组用来识别选择不同的业务承包商的风险和监督合同;管理者用来了解其组织的能力,并了解为了提高其能力成熟度而进行软件过程改进所需要进行的活动;技术人员和过程改进组用来作为指南,指导他们在组织中定义和改进软件过程。,CMMI/CMM区别(1),降低了复杂度和规模(Reducecomplexityandsize)扩大了模型覆盖度(Expandmodelcoverage)表达方式CMM:阶段式表示CMMI:阶段式、连续式,CMMI/CMM区别(2),CMMI强调对需求的管理,REQM、RDCMMI加强了对工程过程的重视,强调度量,MACMMI加强了对风险的管理,RSKMCMM中的“组间协调”在CMMI中作为“集成化项目管理”中的一个目标CMM中的KPA”同行评审”在CMMI中抽象为KPA“验证”CMM是作为评估标准出现的,是“必要”的才能保证评估的标准CMMI是作为改进模型出现的,罗列了较多的最佳实践,利于过程改进,CMMI/CMM区别(3),ISO9001与CMM的关系,最大的相似点强调管理、过程、规范化和文档化不同点CMM把焦点严格对准软件ISO9001的范围包括:硬件、软件、流程性材料和服务两者之间的联系CMM2级与ISO9001强相关;CMM的每个关键过程域至少按某种解释与ISO9001弱相关,六西格玛管理法,六西格码管理法是以质量作为主线,以客户需求为中心,利用对事实和数据的分析,改进提升一个组织的业务流程能力,从而增强企业竞争力,是一套灵活的,综合性的管理方法体系六西格码要求企业完全从外部客户角度,而不是从自己的角度,来看待企业内部的各种流程(Processes)利用客户的要求来建立标准,设立产品与服务的标准与规格。并以此来评估企业流程的有效性与合理性它通过提高企业流程的绩效来提高产品服务的质量和提升企业的整体竞争力通过贯彻实施来整合塑造一流的企业文化,六西格码模式的本质是一个全面管理概念,而不仅仅是质量提高手段,何为六西格码(6Sigma),6个西格码流程能力等于百万个样本中3.4个缺陷,图示六西格玛水平(6),不同西格码水平的绩效影响,每年有9宗做错手术事件,每年有6770封信邮寄错误,西格码,手术事故,婴儿出生,信件邮递,DPMO,产出率,3,每年有200,000宗做错手术事件,每年120000婴儿出生时会因医护人员过失死亡,每年有130,000,000封信邮寄错误,68,800,93.32000%,3.875,每年有25000宗做错手术事件,每年15,000婴儿出生时会因医护人员过失死亡,每年有17520000封信邮寄错误,8800,99.1200%,5,每年有650宗做错手术事件,每年392婴儿出生时会因医护人员过失死亡,每年有457,909封信邮寄错误,230,99.97700%,6,3.4,99.99966%,每年5.8婴儿出生时会因医护人员过失死亡,六西格玛管理原则和改进区域,六西格玛管理法原则注重客户注重流程全员参与预防为主事实依据的决定持续和突破性改进,周期时间(流程速度,回应能力)输出物的变差(产品或服务的直通率,缺陷成本降低,客户满意升高)营运效率(更低成本),六西格码的实施方式,DMAIC过程,5.控制,4.改进,3.分析,2.测量,4.优化解决,确定原因,5.推行控制,2.收集资料,1.定义,1.提出问题,确定目标,寻找原因,3.研究资料,系统,方案,六西格码管理组织结构,强力有效的组织结构是成功实施六西格码的最重要的保证,主,6Sigma领导委员会(总裁,副总),主黑带(MBB),6Sigma倡导者(副总),绿带(GB),黑带(BB),黑带(BB),黑带(BB),主黑带(MBB),主黑带(MBB),绿带(GB),绿带(GB),领导,推动,管理,执行,配合,本章内容,软件质量管理体系,软件质量的定义,软件质量模型,软件质量活动,软件质量模型,质量模型:一组特性及特性之间的关系,它提供规定质量需求和评价质量的基础,外部和内部质量,功能性,可靠性,易用性,效率,维护性,可移植性,适合性准确性互操作性保密安全性功能性的依从性,成熟性容错性易恢复性可靠性的依从性,易理解性易学性易操作性吸引性易用性的依从性,时间特性资源利用性效率依从性,易分析性易改变性稳定性易测试性维护性的依从性,适应性易安装性共存性易替换性可移植性的依从性,软件功能性,功能性:当软件在指定条件下使用时,软件产品提供满足明确和隐含需求的功能的能力适合性准确性互操作性保密安全性功能性的依从性,软件功能性,适合性suitability-软件产品为指定的任务和用户目标提供一组合适的功能的能力。准确性accuracy-软件产品提供具有所需精确度的正确或相符的结果或效果的能力。互操作性interoperability-软件产品与一个或更多的规定系统进行交互的能力。保密安全性security-软件产品保护信息和数据的能力,以使未授权的人员或系统不能阅读或修改这些信息和数据,而不拒绝授权人员或系统对它们的访问。功能性的依从性functionalitycompliance-软件产品遵循与功能性相关的标准、约定或法规以及类似规定的能力。这些标准要考虑国际标准、国家标准、行业标准、企业内部规范等。,软件可靠性,可靠性:在指定条件下使用时,软件产品维持规定的性能级别的能力成熟性容错性易恢复性可靠性的依从性,软件可靠性,成熟性maturity-软件产品为避免由软件中错误而导致失效的能力容错性faulttolerance-在软件出现故障或者违反指定接口的情况下,软件产品维持规定的性能级别的能力。易恢复性recoverability-在失效发生的情况下,软件产品重建规定的性能级别并恢复受直接影响的数据的能力。可靠性的依从性reliabilitycompliance-软件产品遵循与可靠性相关的标准、约定或法规的能力。,软件易用性,易用性:在指定条件下使用时,软件产品被理解、学习、使用和吸引用户的能力易理解性易学性易操作性吸引性易用性的依从性,软件易用性,易理解性understandability-软件产品使用户能理解软件是否合适以及如何能将软件用于特定的任务和使用环境的能力。易学性learnability-软件产品使用户能学习其应用的能力。易操作性operability-软件产品使用户能操作和控制它的能力。吸引性attractiveness-软件产品吸引用户的能力。易用性的依从性usabilitycompliance-软件产品遵循与易用性相关的标准、约定、风格指南或法规的能力。这些标准要考虑国际标准、国家标准、行业标准、企业内部规范等,例如企业内部的界面规范。,软件效率,效率:在规定条件下,相对于所用资源的数量,软件产品可提供适当性能的能力时间特性资源利用性效率依从性,软件效率,时间特性timebehavior-在规定条件下,软件产品执行其功能时,提供适当的响应和处理时间以及吞吐率的能力。即完成用户的某个功能需要的响应时间资源利用性resourceutilization-在规定条件下,软件产品执行其功能时,使用合适的资源数量和类别的能力。效率依从性efficiencycompliance-软件产品遵循与效率相关的标准或约定的能力。,软件维护性,维护性:软件产品可被修改的能力。修改可能包括修正、改进或软件对环境、需求和功能规格说明变化的适应易分析性易改变性稳定性易测试性维护性的依从性,软件维护性,易分析性analyzability-软件产品诊断软件中的缺陷或失效原因或识别待修改部分的能力易改变性changeability-软件产品使指定的修改可以被实现的能力稳定性stability-软件产品避免由于软件修改而造成意外结果的能力易测试性testability-软件产品使已修改软件能被确认的能力维护性的依从性maintainabilitycompliance-软件产品遵循与维护性相关的标准或约定的能力,软件可移植性,可移植性:软件产品从一种环境迁移到另外一种环境的能力适应性易安装性共存性易替换性可移植性的依从性,软件可移植性,适应性adaptability-软件产品无需采用有别于为考虑该软件的目的而准备的活动或手段就可能适应不同的指定环境的能力易安装性installability-软件产品在指定环境中被安装的能力共存性co-existence-软件产品在公共环境中同与其分享公共资源的其它独立软件共存的能力易替换性replaceability-软件产品在同样环境下,替代另一个相同用途的指定软件产品的能力可移植性的依从性portabilitycompliance-软件产品遵循与可移植性相关的标准或约定的能力,本章内容,软件质量管理体系,软件质量的定义,软件质量模型,软件质量活动,软件质量活动,软件组织主要软件质量活动软件质量保证(SQA)测试,SQA和测试的关系,软件质量由组织、流程和技术三方面决定SQA从流程方面保证软件的质量测试从技术方面保证软件的质量只进行SQA活动或只进行测试活动不一定能产生好的软件质量,SQA的主要工作范围,指导并监督项目按照过程实施;对项目进行度量、分析,增加项目的可视性;审核工作产品,评价工作产品和过程质量目标的符合度;进行缺陷分析,缺陷预防活动,发现过程的缺陷,提供决策参考,促进过程改进,质量管理PDCA循环,纠正措施,实施执行,计划设计,检查检测,Act改进,Check检查,Plan计划,Do执行,软件度量的概念和目的,概念度量:对事物属性的量化表示软件度量:是指计算机软件中范围广泛的测度,包括对软件系统、构件或生命周期过程具有的某个给定属性的度的一个定量测量目的提高软件生产率,缩短产品研发周期,降低研发成本、维护成本提高软件产品质量,提高用户满意度为组织持续改进提供量化的指标和反馈,软件度量的作用,理解:就是通过度量,获得对过程、产品、资源等的理解,确定以后预测的基线和模型。对于不同的软件组织和软件类型,过程模型都不一样。这是评估、预测、改进活动的基础预测:根据所理解确定的模型,由已知的要素推算、估计其它要素,以便合理分配资源、合理制定计划评估:分析活动与计划的符合度,确定是否有偏差,以便控制其执行开发活动与计划的符合程度。如工作量估计偏差、进度偏差等;产品的质量。如软件复杂度、缺陷密度、平均失效时间间隔等;新技术的影响改进:根据得到的量化信息,可以帮助我们识别要因、查找问题的根源,以及能提高产品质量和过程效率的其它方法;与以前的量化信息比较,可以验证这些方法是否有效,软件度量的过程,软件度量的5个步骤(五步法),PDCA循环,软件度量分类,四个基本度量项规模(size):软件工作产品的大小工作量(effort):完成各软件工作产品和活动所用人时(或人天等)进度(schedule):各软件工作产品和活动开始和结束的时间质量(quality)-缺陷(defect):在各软件工作产品和活动中产生的缺陷数,软件度量分类-规模度量,规模度量:SRS文档页数HLD文档页数LLD文档页数代码量(KLOC)U

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论