软件测试技术与实践ppt课件_第1页
软件测试技术与实践ppt课件_第2页
软件测试技术与实践ppt课件_第3页
软件测试技术与实践ppt课件_第4页
软件测试技术与实践ppt课件_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

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

文档简介

八软件测试与软件质量保证,l软件质量l软件质量模型l软件质量保证lISO9000-3标准及软件质量认证l软件过程成熟度模型CMM,1,8.1软件质量,什么是软件质量?ANSI/IEEEStd729-1983对软件质量的定义:“与软件产品满足规定的和隐含的需求的能力有关的特征或特征的全体”。,2,8.1软件质量,软件质量的定义反映了以下三方面的问题:(1)软件需求是度量软件质量的基础。(2)在各种标准中定义了一些开发准则,用来指导软件人员用工程化的方法来开发软件。(3)往往会有一些隐含的需求没有明确地提出来。如果软件只满足那些准确定义了的需求,而没有满足这些隐含的需求,软件质量也不能保证。,3,8.2软件质量模型,McCall质量模型:使用三个领域11个软件特性来描述软件质量。McCall模型的三个领域:产品运行(ProductOperation)产品修正(ProductRevision)产品转移(ProductTransition),821McCall质量模型,4,8.2软件质量模型,1.正确性(Correctness)2.可用性(Usability)3.完整性(Integrity)4.可靠性(Reliability)5.效率(Efficiency)6.可维护性(Maintainability),821McCall质量模型,7.可测试性(Testability)8.灵活性(Flexibility)9.互连性(Interoperability)10.可移植性(Portability)11.复用性(Reusability),McCall质量模型的11个软件特性:,5,8.1软件质量模型,McCall质量模型图,821McCall质量模型,6,8.2软件质量模型,McCall等人给出了如下三层模型的框架:,821McCall质量模型,7,8.2软件质量模型,McCall模型的软件质量特性与评价准则之间的关系:,8.2.1McCall质量模型,8,8.2软件质量模型,按照ISO/TC97/SC7/WG3/1985-1-30/N382,软件质量度量模型由三层组成:高层(toplevel):软件质量需求评价准则(SQRC)中层(midlevel):软件质量设计评价准则(SQDC)低层(lowlevel):软件质量度量评价准则(SQMC),8.2.2ISO软件质量评价模型,9,8.2软件质量模型,8.2.2ISO软件质量评价模型,10,8.2软件质量模型,ISO认为,应对高层和中层建立国际标准,在国际范围内推广软件质量管理(SQM)技术,而低层可由各使用单位视实际情况制定。,8.2.2ISO软件质量评价模型,11,8.2软件质量模型,ISO的三层次模型来自McCall的模型,其中高层、中层和低层分别对应于McCall模型中的质量特性、评价准则和度量。在1991年ISO发布的ISO/IEC9126质量特性国际标准中,SQRC有6个特性:功能性、可靠性、可维护性,效率、可使用性和可移植性;SQDC推荐了21个子特性:适合性、准确性、互用性、依从性、安全性、成熟性、容错性、可恢复性、可理解性、易学习性、操作性、时间特性、资源特性、可分析性、可变更性、稳定性、可测试性、适应性、可安装性、一致性、可替换性。,8.2.2ISO软件质量评价模型,12,8.2软件质量模型,在实际进行软件质量度量时,必须考虑利弊,全面权衡,根据质量需求,适当合理地选择/设计质量特性,并进行度量。,8.2.2ISO软件质量评价模型,13,8.3软件质量保证,什么是质量保证?质量保证是为保证产品和服务充分满足消费者要求的质量而进行的有计划、有组织的活动。,8.3.1软件质量保证及其主要任务,14,8.3软件质量保证,什么是软件质量保证?软件质量保证是确保软件产品从诞生到消亡为止的所有阶段的质量的活动,即是为了确定、达到和维护需要的软件质量而进行的所有有计划、有系统的管理活动。,8.3.1软件质量保证及其主要任务,15,8.3软件质量保证,软件质量保证的主要活动:l质量方针的制定和展开。l质量保证方针和质量保证标准的制定。l质量保证体系的建立和管理。l明确各阶段的质量保证工作。l各阶段的质量评审。l确保设计质量。l重要质量问题的提出与分析。l总结实现阶段的质量保证活动。l整理面向用户的文档、说明书等。l产品质量鉴定、质量保证系统鉴定。l质量信息的收集、分析和使用。,8.3.1软件质量保证及其主要任务,16,8.3软件质量保证,软件质量保证的主要任务:(1)用户需求定义。(2)力争不重复劳动。(3)掌握开发新软件的方法。(4)组织外部力量协作。(5)排除无效劳动。(6)发挥每个开发者的能力。(7)提高软件开发的工程能力。(8)提高计划和管理质量。,8.3.1软件质量保证及其主要任务,17,8.3软件质量保证,软件的质量保证活动,涉及下列各个部门间的活动:l软件项目管理部门l软件开发部门l软件测试部门l软件维护部门l用户,8.3.2软件质量保证体系,18,8.3软件质量保证,在软件质量保证体系中,必须制定软件质量保证计划:l确定软件质量总目标l确定在每个阶段为达到总目标所应达到的要求;l对进度做出安排;l确定所需的人力、资源和成本等。,8.3.2软件质量保证体系,19,8.3软件质量保证,在质量保证计划中,应当:(1)指示在何时、何处进行文档检查和程序检查;(2)指示应当采集哪些数据,以及如何进行分析处理,如,在每次评审和测试中发现的错误如何修正;(3)描述希望得到的质量度量;(4)规定在项目的哪个阶段进行评审及如何评审;(5)规定在项目的哪个阶段应当产生哪些报告和计划;(6)规定产品各项测试应达到的水平。,8.3.2软件质量保证体系,20,8.3软件质量保证,软件质量保证的实施可从横向和纵向两个方面展开:横向:要求所有与软件生存周期有关的人员都要参加;纵向:要求对产品形成的全过程进行质量管理。,8.3.2软件质量保证的实施,21,8.3软件质量保证,为了开发高质量的软件,从一开始就要制定质量目标。为了达到这些目标,在开发过程的各个阶段进行检查和评价,质量评价要有对质量进行度量的准则和方法。,8.3.2软件质量保证的实施,22,8.3软件质量保证,为了开发高质量的软件,从一开始就要制定质量目标。为了达到这些目标,在开发过程的各个阶段进行检查和评价,质量评价要有对质量进行度量的准则和方法。,8.3.2软件质量保证的实施,23,8.3软件质量保证,软件质量保证和度量的五个实施阶段:(1)Target:以用户需求和开发策略为依据,对各质量特性设定质量目标。(2)Plan:设定适合于待开发软件的评测检查项目(质量评价准则)。(3)Do:在开发标准和质量评价准则的指导下,编制高质量的规格说明书和程序。(4)Check:以Plan阶段设定的质量评价准则对程序进行评审。算出得分,用质量图的形式表示出来。(5)Action:对评价发现的问题进行改进活动,如果实现并达到了质量目标就转入下一个开发阶段。重复Plan到Action的过程,直到整个开发项目完成。,8.3.2软件质量保证的实施,24,8.4ISO9000软件质量认证,目前,国际上最流行的质量管理标准当属国际标准化组织于1987年公布的ISO9000系列标准。(1)市场经济,特别是国际贸易的驱动;(2)其适用领域广阔。,25,8.4ISO9000软件质量认证,ISO9000系列标准为:lISO9000质量管理和质量保证标准选择和使用的导则;lISO9001质量体系设计/开发、生产、安装和服务中的质量保证模式;lISO9002质量体系生产和安装中的质量保证模式;lISO9003质量体系最终检验和测试中的质量保证模式;lISO9004质量管理和质量体系要素导则,26,8.4ISO9000软件质量认证,制定与实施ISO9000系列标准的主导思想:(1)强调质量并非在产品检验中得到,而是形成于生产的全过程。(2)为了保证产品的质量,ISO9000要求“必须使影响产品质量的全部因素在生产全过程中始终处于受控状态”。(3)ISO9000标准要求证实:“企业具有持续提供符合要求产品的能力”。通过质量认证是取得这一证实的有效方法。(4)ISO9000标准还强调“质量管理必须坚持进行质量改进”。,27,8.4ISO9000软件质量认证,在ISO9000系列标准的基础上,制定出9000-3标准,专门用于“使9001适用于软件开发、供应及维护”的指南。(1)ISO900-3说明了需方和供方应如何进行有组织的质量保证活动,才能得到较为满意的软件;规定了从双方签订开发合同到设计、实现以至维护整个软件生存周期中应当实施的质量保证活动,但并没有规定具体的质量管理和质量检验方法和步骤。软件产品的质量取决于软件生存周期所有阶段的活动。(2)ISO9000-3要求软件开发机构建立质量保证体系。(3)ISO9000-3要求证实:“企业具有持续提供符合要求产品的能力”。质量认证是取得这一证实的有效方法。(4)ISO9000-3标准强调“质量管理必须坚持进行质量改进”。,28,8.4ISO9000软件质量认证,ISO9000-3的要点如下:(1)ISO9000-3标准不适用于面向多数用户销售的程序包软件,仅适用于依照合同进行的单独的订货开发软件。(2)ISO9000-3标准对供需双方的责任都做了明确的规定,并没有单纯地把义务全部加在供方身上。(3)在包括合同在内的全部工序中进行审查,并彻底文档化。(4)在ISO9000-3中,最重要的是质量保证“体系”。ISO9000-3是指南性的标准,说明了需方与供方应如何合作进行有组织的质量保证活动才能制作出完美的软件,规定了从合同到设计、制作以至维护整个生存周期的全过程中应实施的质量保证活动;而没有规定具体的质量管理和测试等的方法和程序。,29,8.4ISO9000软件质量认证,ISO9000-3对软件质量保证提出了一些要求:1.合同审查在ISO9000-3中规定了供方应对每项合同进行审查。2.需方的需求规格说明书-这完全是针对软件特点而加入的内容。3.开发计划管理这是ISO9000-3的核心内容。4.质量计划管理质量计划管理是开发计划管理的组成部分5.设计和实现设计和实现是开发的具体化,是直接把用户需求规格说明转换成软件产品的活动。,30,8.4ISO9000软件质量认证,ISO9000-3对软件质量保证提出了一些要求:6.测试和验证人-测试可能需要在从各个软件单元到完整的软件产品多层次的软件结构中进行,并且可能采取多种不同的测试和集成方法。7.验收当供方已对产品进行认证,准备交付时,供方与需方一起进行验收活动。验收按合同规定的标准和方式进行。8.复制、交付和安装。9.维护。10.配置管理版本变更与升级。11.文档控制工作程序文档、计划文档、产品文档的建立、审批、发布等。,31,8.4ISO9000软件质量认证,ISO9000-3对软件质量保证提出了一些要求:12.质量记录质量记录的认同、收集、索引、文件化、存储和维护等。13.测量对软件产品的开发、生产过程进行测量。14.采购供方应确保购入的产品或服务符合指定的要求并归档。15.培训通过教育、训练、实习等方式,提高对质量发生影响的所有人员的素质和水平。16.其他支持如为了有效地维持质量体系,供方应提供规则、惯例、公约;提供开发与管理的工具、技术等。,32,8.4ISO9000软件质量认证,ISO9000-3规定的是用以建立质量保证体系的“应做事项”的框架,但并未规定具体的实施过程或文件格式等。因此,在执行ISO9000-3时,必须引用其它的有关标准才能展开质量保证活动。,33,8.5软件过程成熟度模型CMM,软件危机是许多软件开发机构遇到的难题:人们力图用新的软件开发技术来解决软件生产率和软件质量存在的问题,但结果并不令人满意。人们发现,关键问题在于软件过程的管理不尽人意。不同的软件项目所遵循的软件过程是不同的。在此,可用软件机构的成熟度加以区别。,34,8.5软件过程成熟度模型CMM,不成熟的软件机构的特征:(1)软件过程一般在项目进行中由参与开发的人员临时确定。有时即使确定,实际上并不严格执行。(2)软件机构是反应型的,管理人员经常要集中精力去应付难以预料的突发事件。(3)项目的进度和经费预算由于估计得不切实际,所以常常突破。在项目进度拖延,交付时间紧迫的情况下,往往不得不削减软件的功能,降低软件的质量。(4)产品质量难以预测。质量保证活动,如质量评审、测试等,常被削弱或被取消。,851软件机构的成熟度,35,8.5软件过程成熟度模型CMM,成熟的软件机构的特征:(1)建立了机构级的软件开发和维护过程。软件人员对其有较好的理解。一切活动均遵循过程的要求进行,做到工作步骤有次序,并且有章可循。(2)软件过程必要时可做改进,但需要经过在小型试验和成本-效益分析基础上进行。(3)软件产品的质量和客户对软件产品的满意程度不是由开发人员,而是由负责质量保证的经理负责监控。(4)项目进度和预算是根据以往项目取得的实践经验确定,因而比较符合实际情况。,851软件机构的成熟度,36,8.5软件过程成熟度模型CMM,为了客观、公正的评价各个软件机构的过程成熟度,需要建立一种衡量的标尺。使用这个标尺可以评价软件承包商的质量保证能力。在软件项目评标活动中,可以选择中标机构。另一方面,这一标尺也必然成为软件机构改进软件质量,加强质量管理,以及提高软件产品质量的依据。,852软件过程成熟度模型,37,8.5软件过程成熟度模型CMM,1987年,美国卡内基-梅隆大学SEI受国防部资助,提出了软件机构的能力成熟度模型CMM。经过去1991年和1993年的两次修改,已成为具有广泛影响的模型。,852软件过程成熟度模型CMM,38,8.5软件过程成熟度模型CMM,CMM根据软件公司的成熟度将他们分为五个等级。CMM标准适用于任意规模的软件公司。,852软件过程成熟度模型CMM,图5-3软件过程成熟度模型,39,8.5软件过程成熟度模型CMM,(1)初始级(Initial)l工作无序:项目进行过程中常放弃当初的规划。l管理无章:缺乏健全的管理制度。l开发项目成效不稳定:优秀管理人员的管理办法可能取得成效,但他一离开,工作秩序面目全非,产品的性能和质量依赖于个人能力和行为。,852软件过程成熟度模型CMM,40,8.5软件过程成熟度模型CMM,(2)可重复级(Repeatable)l管理制度化:建立了基本的管理制度和规程,管理工作有章可循。l初步实现标准化:开发工作较好地实施标准。l变更均依法进行:做到基线化。l稳定可跟踪:新项目的计划和管理基于过去的实践经验,具有重复以前成功项目的环境和条件。,852软件过程成熟度模型CMM,41,8.5软件过程成熟度模型CMM,(3)已定义级(Defined)l开发过程,包括技术工作和管理工作,均已实现标准化、文档化。l建立了完善的培训制度和专家评审制度。l全部技术活动和管理活动均稳定实施。l项目的质量、进度和费用均可控制。l对项目进行中的过程、岗位和职责均有共同的理解。,852软件过程成熟度模型CMM,42,8.5软

温馨提示

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

评论

0/150

提交评论