软件测试技术-第七章-软件测试管理课件.pptx

上传人(卖家):晟晟文业 文档编号:4848573 上传时间:2023-01-17 格式:PPTX 页数:100 大小:423.60KB
下载 相关 举报
软件测试技术-第七章-软件测试管理课件.pptx_第1页
第1页 / 共100页
软件测试技术-第七章-软件测试管理课件.pptx_第2页
第2页 / 共100页
软件测试技术-第七章-软件测试管理课件.pptx_第3页
第3页 / 共100页
软件测试技术-第七章-软件测试管理课件.pptx_第4页
第4页 / 共100页
软件测试技术-第七章-软件测试管理课件.pptx_第5页
第5页 / 共100页
点击查看更多>>
资源描述

1、第七章 软件测试管理第1页/共100页目录 7.1 软件质量管理 7.2 软件评审 7.3 软件测试计划 7.4 测试文档管理 7.5 软件配置管理 7.6 测试结束的原则第2页/共100页7.1 软件质量管理7.1.1 软件质量特性软件质量的定义:不同的标准化组织在不同的时期都给出过多种对软件质量的定义,能够被普遍接受的观点是:软软件质量件质量是与软件系统或软件产品满足明确或隐含需是与软件系统或软件产品满足明确或隐含需求的能力有关的特征和特性的求的能力有关的特征和特性的集合。集合。第3页/共100页软件质量的特征 软件需求是度量软件质量的基础。软件质量既要保证明确的用户需求,也要保证隐含的用

2、户需求。软件质量反映的是软件的综合特征与用户期望。第4页/共100页软件测试管理质量模型 McCall质量模型 McCall模型是提出最早的一种质量模型,由McCall等人于1979年在改进更为早期的Boehm质量模型的基础上提出。McCall模型的价值在于对影响软件质量的众多因素进行了归纳与分类,便于使用者从全局角度理解和控制软件质量。第5页/共100页McCallMcCall质量质量模型示意图模型示意图图图7-1 McCall7-1 McCall质量模型质量模型第6页/共100页 ISO/IEC 9126质量模型 ISO/IEC 9126质量模型是一种评价软件质量的通用模型。最初于1991

3、年发布,主要面向软件质量特性和产品评价,1997年之后经过修订提出了新的面向产品质量度量和质量模型的ISO 9126系列标准,ISO 9126系列标准描述了软件评估过程的模型,定义了6种主要质量特性。第7页/共100页 ISO/IEC 9126从以下3个方面来评价软件产品的质量:内部质量。指软件产品在规定条件下使用时满足指软件产品在规定条件下使用时满足明确的和隐含的需求的能力明确的和隐含的需求的能力 外部质量。是从软件产品外部角度出发所观察到是从软件产品外部角度出发所观察到的软件总体的软件总体特性特性(并不涉及软件内部并不涉及软件内部)使用质量。是从用户的角度出发所观察到的软件是从用户的角度出

4、发所观察到的软件在特定使用环境下满足需求的在特定使用环境下满足需求的程度程度第8页/共100页ISO 9126标准:ISO 9126-1:质量模型图7-2 ISO/IEC 9126软件质量模型第9页/共100页ISO 9126-2:外部质量度量。ISO 9126-3:内部质量度量。ISO 9126的主要部分是外部和内部质量模型,如图7-3所示。由6个质量特性和27个质量子特性构成。第10页/共100页图7-3 ISO 9126内部和外部质量的质量模型第11页/共100页 ISO 9126-4:使用质量度量。软件使用质量包含以下4个质量特征:有效性:软件在特定环境下达到准确性和完备性目标的能力。

5、生产性:用户为达到有效性而消耗适当数量的资源的能力,例如完成任务的时间、工作量、材料、财务费用等。安全性:软件可能造成损害的可接受的风险级别。满意度:用户对软件产品的满意程度,包括对软件产品的意见。第12页/共100页7.1.2 软件质量标准与管理体系1、软件质量标准的层次 软件质量标准一般分为如下5个层次:l国际标准:由国际机构制定和公布的标准。典型的软件质量国际标准包括ISO/IEC 12119,ISO/IEC 9126,ISO/IEC 14598,ISO/IEC SQuaRE系列标准。第13页/共100页 国家标准:由国家机构制定或批准,只适用于本国范围的标准。如我国标准简称为“国标GB

6、”。行业标准:由行业协会、学术团体或国防机构制定的适用于某个业务领域的标准,例如电子和电气工程师协会IEEE等。企业规范:一些大型企业或公司单独或联合制定的规范。项目规范:专门为特定软件项目制定的操作规范。第14页/共100页 2、主要的软件质量管理体系 国内软件企业所采用的软件质量管理体系主要是ISO9000和CMM/CMMI两种。常见的质量管理体系如表7-1所示。第15页/共100页名称名称制定者制定者适用领域适用领域简要说明简要说明ISO 9000ISO 9000国际标准,国际标准,ISO/TC所有行业所有行业其中其中ISO9000-3是针对软件开发行业的标准实施指南是针对软件开发行业的

7、标准实施指南CMMCMM软件行业标准,卡软件行业标准,卡耐基耐基-梅隆大学制定梅隆大学制定并管理并管理软件行业软件行业分为分为5个等级,个等级,CMMI是是CMM的新版本,选择的新版本,选择CMM/CMMI认证的美国软件企业较多认证的美国软件企业较多ISO 15504ISO 15504(SPICE)国际标准,国际标准,ISO/TC所有行业所有行业软件过程评估标准,起源于软件过程改进和能力测定软件过程评估标准,起源于软件过程改进和能力测定(SPICE,Software Process Improvement and Capability Determination)项目项目六西格玛六西格玛(Si

8、x Sigma)行业标准,行业标准,最早由最早由摩托罗拉公司提出摩托罗拉公司提出所有行业所有行业不只关注质量,还关注成本、进度等,面向全面管理。不只关注质量,还关注成本、进度等,面向全面管理。以质量为主线,以客户需求为中心,利用对事实和数以质量为主线,以客户需求为中心,利用对事实和数据的分析改进业务流程据的分析改进业务流程TickITTickIT软件行业标准,由软件行业标准,由英国工贸部英国工贸部DTI发起发起软件行业软件行业目的目的是是推动推动IT企业通过企业通过ISO 9000质量认证质量认证,TickITTickIT 基基于于ISO9001,选择,选择ISO9001/TickIT认证认证

9、的欧洲软件企业的欧洲软件企业较多较多表7-1 常见的质量管理体系第16页/共100页 ISO 9000 ISO 9000是一个质量管理系列标准,为了应用于软件开发行业,ISO专门制定出ISO 9000-3标准,也就是将ISO 9000-3作为软件企业实施ISO 9001的指南。ISO的核心内容主要包括合同评审、需求规格说明、开发计划、质量计划、设计和实现、测试和确认、验收、复制、交付与安装以及维护的相关标准。第17页/共100页 CMM(Capability Maturity Mode)能力成熟度模型 CMM的实用性在于将软件过程改进步骤划分为逐步成熟的、阶梯式的5个等级(如图7-4所示),以

10、便于软件企业根据阶段目标不断对软件开发和维护进行过程监控和研究,使其更加科学化、标准化。图7-4 CMM过程成熟度级别第18页/共100页 CMM的5个等级的基本特征 初始级(Initial):只有少量过程经过了严格定义。可重复级(Repeatable):初步实现了标准化。第19页/共100页 已定义级(Defined):已实现标准化、文档化。已管理级(Managed):产品和过程已经建立了定量的质量目标。优化级(Optimizing):已具备持续不断地改进软件开发过程的能力。第20页/共100页 CMM的五个等级与软件产品潜在缺陷密度和缺陷清除率的关系如表7-2.CMM等级潜在缺陷密度 缺陷

11、清除率(%)被交付的缺陷15.00850.7524.00890.4433.00910.2742.00930.1451.00950.05表7-2 CMM级别、潜在缺陷密度与缺陷清除率第21页/共100页 除了CMM1之外,CMM的每一个等级都给出了若干关键过程域KPA,用以达到相应的过程改进目标。CMM2的KPA:软件质量保证(SQA,Software Quality Assurance)方法。CMM3的KPA:同行评审(PR,Peer Reviews)方法。CMM4的KPA:软件质量管理(SQM,Software Quality Management)方法。CMM5的KPA:缺陷预防(DP,D

12、efect Prevention)方法。第22页/共100页3、主要软件质量管理体系的区别与联系 ISO 9001与CMM的联系:都以全面质量管理为理论基础,以提高软件质量管理水平为目标,强调管理过程的规范化和文档化。都强调“该说的要说到,说到就要做到”,即对每个重要过程都要形成文件,并检查交付物的质量水平。第23页/共100页 ISO 9001和CMM的不同之处 基础不同:ISO 9001确定了一个合格质量管理体系的最低可接受水平,而CMM更为强调持续过程改进。范围有所区别:ISO 9001的范围包括软硬件、流程性材料和服务,CMM严格聚焦于软件。第24页/共100页 不能简单替代:一些IS

13、O 9001质量要求在CMM中不存在,反之亦然,另外一些要求是分散对应的。层次不同:ISO 9000认证的结果只有“通过”和“不通过”两种,而CMM的评价分为5级第25页/共100页 CMM和CMMI的主要不同之处:CMMI更为适用于硬件开发、系统集成的大型软件企业。对于规模不大,业务集中于软件开发的企业来讲CMM比较适用。CMMI有阶段式和连续式的表现方法,而CMM只有阶段式的表现方法。第26页/共100页 CMMI对原有CMM的关键过程区域KPA进行了更为详细的拆分和扩充,并结合常见的软件生命周期模型进行了映射。CMM在软件方面的要求比CMMI略低,实施难度和过程改进的费用也要小一些。第2

14、7页/共100页7.2软件评审1、软件评审的重要性软件评审的作用 软件评审是为了验证软件开发和软件测试各个阶段的工作是否已经阶段性地达到了规定的技术和质量要求,然后决定能否转入下一阶段的工作。因此,通过软件评审可以建立软件项目管理过程中的重要里程碑,是软件质量控制和保障的重要手段之一。第28页/共100页软件评审的阶段划分 根据软件开发和测试阶段划分 评审阶段可以分为软件需求评审、设计评审、测试计划评审、编码和单元测试评审、集成测试评审、系统测试评审、验收测试评审等。根据评审的对象划分 根据评审的对象划分为管理评审、技术评审、文档评审和流程评审。第29页/共100页软件评审对缺陷分布的影响图7

15、-5 软件评审对缺陷分布的影响 据统计软件评审可以找出4/5的软件缺陷,软件评审能够尽早发现软件缺陷,避免将大量软件缺陷遗留到测试执行阶段才去发现与修复。第30页/共100页尽早发现软件缺陷的作用(1)减少软件缺陷的数量 软件缺陷具有“弥漫和放大”效应。软件研发由一系列阶段组成,前期阶段的某一软件缺陷会造成后期阶段更多数量的缺陷,尽早发现软件缺陷将缺陷的数量尽可能控制在最小范围之内,避免后期阶段缺陷数量的膨胀。第31页/共100页(2)降低修复软件缺陷的成本 如图7-6所示,不同软件研发阶段修复软件缺陷的成本差异很大。图7-6 研发各个阶段软件缺陷修复成本对比第32页/共100页2、软件评审的

16、方法软件评审在各个软件企业的形式不同,不同的形式之间并没有本质的区别,只存在以下正式和非正式的差别。正式的软件评审:以评审会议的形式进行,由评审组长和相关开发与测试人员组成,通过会议准备、设定评审原则、召开会议、评审分析、给出过程改进意见、形成正式的问题总结与记录等环节完成软件评审。第33页/共100页 非正式软件评审:相关的评审人员通过邮件接收评审内容,分散阅读并提出书面意见,或者是以非正式会议的形式对评审对象进行检查。非正式评审仍然需要形成评审记录,由评审人员签字以体现各自责任。第34页/共100页软件评审的评审技术(1)缺陷检查表 缺陷检查表是最为常用的评审工具,根据经验列出了最有可能发

17、生的软件缺陷。通过缺陷检查表驱动评审过程可以更为准确地确定评审范围,提高评审的质量和效率。第35页/共100页(2)场景分析 场景分析法多在需求评审时应用,在评审过程中采用分层评审、分类评审和分阶段评审的方法。分层评审。从评审对象的高层内容向低层细节内容逐步推进进行评审。分类评审。对评审对象的各类主要内容分别进行评审,适用于对大多数软件开发阶段的评审。分阶段评审。即进行多次评审,以降低评审的难度,提高评审的质量。第36页/共100页7.3 软件测试计划7.3.1 对于测试计划的基本认识1、测试计划的目的与作用 测试计划是为了确定各个测试阶段的目标和策略,明确需要完成的测试活动,合理安排测试所需

18、要的时间和资源,说明完成测试的组织结构和岗位职责,确定对测试过程及其结果进行控制和测量所需要的方法和活动,识别测试风险。第37页/共100页制定测试计划的主要作用:体现软件测试管理的主要目标。便于进行测试管理。建立对测试结果的客观评价标准。有利于及早发现软件需求方面的问题。便于软件项目人员的沟通与理解。第38页/共100页2、编写测试计划的注意事项(1)根据软件项目的规模与特点确定单独编写测试计划还是为每个测试阶段分别编写测试计划(2)做好测试需求分析(3)增强测试计划的实用性(4)在测试计划中体现What、Why、When、Where、Who、How的“5W1H”规则。第39页/共100页7

19、.3.2 测试计划的主要内容 完整测试计划的主要内容应该包括界定测试范围、确定具体的测试策略、分析测试风险、规划测试资源、制定测试进度等。表7-3所示IEEE 829-2008标准规定的测试计划大纲来制定测试计划。第40页/共100页表7-3 IEEE 829-2008软件测试计划大纲第41页/共100页续表7-3 IEEE 829-2008软件测试计划大纲第42页/共100页 测试计划的概要说明(1 1)测试计划概要测试计划概要:概况性地描述被测软件的基本情况。(2 2)测试目标测试目标:对整体测试目标、各阶段的测试目标、测试对象以及约束进行简要说明。(3 3)测试范围测试范围:说明软件的哪

20、些功能和性能需要被测试到,重点列出需要测试的主要功能和软件关键特性,与测试用例的设计相对应并互相检查。第43页/共100页(4 4)测试策略测试策略:测试策略是测试计划中最为核心的内容,规定了对测试对象进行测试的推荐方法。测试策略的作用:确保测试根据测试任务的特点选择合适的测试方法和手段。在保证软件质量的前提下考虑测试约束条件,用最少的测试工作量去发现尽可能多的软件缺陷。确定测试的重点任务和优先顺序,满足软件的主要质量需求。第44页/共100页 测试策略规定了判定测试有效性的准则。测试策略考虑了何时采用手工测试、何时采用自动化测试以及采用什么测试工具,因此可以提高测试的效率。通过制定测试策略可

21、以使项目组成员对如何完成测试达成一致意见。第45页/共100页测试策略制定的主要步骤:分析测试输入。确定测试需求。确定测试优先级。制定具体策略。常见的测试策略有基于测试技术的测试策略、基于测试方案的测试策略和基于缺陷分析的测试策略等。第46页/共100页(5 5)测试阶段测试阶段定义与完成定义与完成标准标准:描述测试的各个阶段,例如单元测试、集成测试和系统测试,并说明计划中所针对的测试类型,例如功能测试或性能测试,描述测试通过或失败的标准,确定中断测试或恢复测试的判断准则。(6 6)测试测试完成所提交的完成所提交的材料材料:包括测试过程中所涉及到的所有测试文档以及自定义测试工具。第47页/共1

22、00页(7 7)测试测试配置配置:在测试之前,制定出完成测试目标所必需的软硬件资源、必备的测试工具以及相关的技术资源和培训需求。(8 8)人员人员组织与职责组织与职责:说明测试项目中的人力资源安排情况,确定测试人员的工作职责划分及其管理权限。第48页/共100页(9 9)测试测试进度进度:进度控制是测试计划的主要内容之一,需要分析主要测试阶段和测试任务所需要的时间,给出相应的时间进度表。制定测试进度计划时一般需要考虑以下一些问题:软件项目的整体研发周期限制。已有的软件开发阶段进度计划第49页/共100页 测试内容和测试任务的特点。例如,对具有复杂业务流程或高技术复杂性的关键模块进行测试,以及稳

23、定性、可靠性、安全性和性能等方面的测试需要更多的时间。测试风险的严重程度、数量、原因及其应对难度。测试人员状况。可供调配的测试人员数量及其个人测试能力。搭建测试平台所需要的软硬件资源状况。被测软件部分的测试用例数量第50页/共100页(1010)风险分析风险分析:列出所有可能会影响测试设计、开发或实施的风险或意外事件,并且给出避免和应对的措施。常见的测试风险及其预防和处理措施:缺乏详细的需求与设计文档,软件质量标准不清晰,项目计划频繁变更等等测试风险。除了上述列出的测试风险之外,实际测试工作中还会遇到很多其它的风险因素。因此,风险分析是一项十分艰巨的工作。第51页/共100页 7.4 测试文档

24、管理测试文档管理的内容。测试文档的编写与管理是整个测试管理工作的一个重要组成部分。测试文档管理包括了对文档的分类管理、文档的格式和模板管理、文档的一致性管理和文档的存储管理等内容。第52页/共100页测试文档的类型 测试文档主要分为前置测试文档和后置测试文档两种类型,以执行测试前后进行划分。IEEE 829-2008“IEEE Standard for Software and System Test Documentation”给出了一个测试项目所应当编写的测试文档及其相互关系,如图7-7和图7-8所示。第53页/共100页图7-7 IEEE 829-2008中规定的前置测试文档第54页/共

25、100页图7-8 IEEE 829-2008中规定的后置测试文档第55页/共100页 IEEE 829-2008中规定了如下测试文档:主测试计划主测试计划(MTP,Master Test Plan):总体测试计划和测试管理文档,是针对软件需求和项目质量保障的计划。阶段测试计划阶段测试计划(LTP,Level Test Plan):说明特定测试阶段的测试范围、方法、资源和测试活动进度安排,识别和说明测试项、测试特性、所需执行的测试任务、针对每项任务的人员职责和相关风险。第56页/共100页 阶段测试设计阶段测试设计(LTD,Level Test Design):说明需要测试的软件特性及其测试通过

26、或失败的度量指标,进一步详细说明计划中给出的测试方法。阶段测试用例阶段测试用例(LTC,Level Test Case):给出本阶段的所有测试用例。阶段测试过程阶段测试过程(LTPr,Level Test Procedure):说明测试用例的执行步骤,或者是为了评估软件产品或基于软件的系统的一系列特性所需执行的操作步骤。第57页/共100页 阶段测试日志阶段测试日志(LTL,Level Test Log):有关测试执行情况的细节记录。异常报告异常报告(AR,Anomaly Report):说明在测试过程中发生的任何需要调查研究的异常或错误事件。阶段期中测试状态报告阶段期中测试状态报告(LITS

27、R,Level Interim Test Status Report):这一报告的目的是为了总结特定测试活动的结果,根据结果有选择性地给出测试评价和建议,说明测试计划的变化情况。第58页/共100页 阶段测试报告阶段测试报告(LTR,Level Test Report)。每一个测试阶段都有一个相应的阶段测试报告,用于对阶段测试活动进行总结,根据测试结果给出评价与建议。主测试报告主测试报告(MTR,Master Test Report)。主测试报告与主测试计划相对应,只要制定和实施了一个主测试计划,就必须编写一个对应的主测试报告来描述计划的实施结果,对整个测试活动的结果进行总结和评价。第59页/

28、共100页测试完整性等级 测试完整性等级用于区别测试的重要程度,决定了测试的广度和深度。可以基于功能、性能、安全性或者其它软件特性,对需求、单个功能、一组功能、软件单元和子系统的完整性等级进行设置。第60页/共100页完整性等级计划表7-4 测试完整性等级计划完整性等级说明4、极端重要必须能够正确执行,否则会造成系统崩溃、系统无法正常使用、重要数据遭到破坏并且无法修复等严重问题3、重要必须能够正确执行,否则会造成系统部分主要功能无法使用、部分系统功能缺失,可能会引起系统崩溃,引发严重的安全性问题2、一般测试结果的正确与否影响到用户能否有效地使用软件系统,该测试部分出现缺陷会造成系统功能不正确、

29、性能低下、系统不稳定等问题1、可以忽略软件中可能存在一些微小的造成用户使用不便的问题,但并不影响用户的最终使用第61页/共100页每一个等级所需要的测试文档如表7-5所示。表7-5 完整性等级所对应的测试文档完整性等级选择的测试文档4MTP,LTP,LTD,LTC,LTPr,LTL,AR,LITSR,LTR,MTR3MTP,LTP,LTD,LTC,LTPr,LTL,AR,LITSR,LTR,MTR2LTP,LTD,LTC,LTPr,LTR,LTL,AR,LITSR,LTR1LTP,LTD,LTC,LTPr,LTL,AR,LTR第62页/共100页 针对一个测试项目中会产生很多测试文档,需要采用

30、专门的文档管理工具对其进行分类管理,以便于进行查阅、修改和权限控制。测试文档是前后依赖的,因此对编制好的测试文档一定要进行必要的审核,做好文档的一致性检查,避免测试对象、测试度量指标等内容在多个文档中不一致的情况发生。第63页/共100页7.5 软件配置管理7.5.1 软件配置管理的作用 软件配置管理(Software Configuration Management,SCM)是一种标识、组织和控制软件变更的技术。目的:为了建立和维护软件产品的完整性和一致性。第64页/共100页缺乏配置管理会产生的问题:缺陷只在测试环境出现,但是在开发环境中无法重现。已经修复的缺陷在进行新版本软件测试时又再次

31、出现。程序发布前已经通过了内部测试,但是发布时却出现软件运行失效的问题。第65页/共100页软件配置管理的作用主要体现 支持并行开发。能够实现开发人员同时对同一个程序进行开发和修改,解决多个用户对同一程序进行开发和修改所引起的版本不一致问题。资源共享。提供良好的软件资源存储和访问机制,开发人员可以共享开发资源,解决了多个用户对同一文件同时修改所引起的资源冲突问题。第66页/共100页 变更请求管理。跟踪和管理开发过程中出现的缺陷、功能变更请求或者任务,加强软件研发人员之间的沟通和协作,使他们能够及时了解变更的状态。版本控制。跟踪每一个软件版本变更的创造者、时间和原因,从而提高发现软件缺陷的效率

32、。能够重现软件的任何一个历史版本。第67页/共100页 软件发布管理。软件项目经理能够及时和清晰地了解项目的当前状态,管理和计划软件的变更,与软件的发布计划和质量保证计划保持一致。软件Build管理。通过配置管理系统实现自动化的软件Build过程。软件过程控制。贯彻实施正规化的开发规范,避免过程混乱。第68页/共100页7.5.2 软件配置管理的重点工作 软件配置管理包括以下5项最为重要的活动:配置项识别 变更控制 版本管理 配置状态报告 配置审计第69页/共100页(1)配置项识别 重要性:配置标识是配置管理的基础,所有配置项的操作权限都应当严格管理。基本原则:所有基线配置项向测试人员开放读

33、取权限;而非基线配置项向测试组长、项目经理及相关人员开放。第70页/共100页 配置项识别就是将软件配置项按规定统一编号,将配置项划分为基线配置项和非基线配置项,并且将其存储在配置库中以便于所有人员了解每个配置项的内容和状态,为不同人员设定配置项使用权限。所有基线配置项只向开发和测试人员开放读取权限,不能随意改变;而非基线配置项向项目管理人员和相关人员开放。第71页/共100页配置管理中的配置项 软件配置项就是配置管理的对象。软件开发过程所产生的所有程序、数据、文档等都是软件的组成部分,都需要作为配置项进行管理。此外,配置项还包括操作系统、开发工具、数据库等软件环境和工具。软件特定版本的配置项

34、之间需要相互匹配以保持软件整体的一致性。第72页/共100页配置管理中的基线 基线是已经正式通过审核批准的一个配置项或一组配置项的集合,因此可以作为进一步开发的基础,并且只能通过正式的变化控制过程来改变。基线通常与项目开发过程中的里程碑相对应,经过评审批准的阶段性成果的统一标识就标志着项目的不同基线。常见的基线有需求规格说明、设计说明、特定版本的源程序、测试计划等。第73页/共100页(2)变更控制 目的:变更控制的目的并不是控制和限制变更的发生,而是对变更进行有效的管理,确保变更有序地进行。第74页/共100页变更控制的主要内容 规定测试基线,对每个基线必须描述下列内容:每个基线的项(包括文

35、档、样品和工具等);与每个基线有关的评审、批准事项以及验收标准。第75页/共100页 规定何时何人创立新的基线,如何创立;确定变更请求的处理程序和终止条件;确定变更请求的处理过程中各测试人员执行变更的职能;确定变更请求和所产生结果的对应机制;确定配置项提取和存入的控制机制与方式。第76页/共100页变更控制的典型流程图7-9 软件变更控制的典型流程第77页/共100页(3)版本管理 版本管理包括对文档、程序等配置项的各种版本进行存储、登记、索引、权限分配等一系列管理活动,目的是按照一定的命名规则保存配置项的所有版本,避免发生版本丢失或混乱,并且确保能快速和准确地查找到特定版本下的配置项。第78

36、页/共100页(4)配置状态报告 根据配置库中的记录,通过CASE工具可以生成不同的配置状态报告,例如配置项的状态、基线之间的差别描述、变更日志、变更结果记录等。配置状态报告着重反映了当前基线配置项的状态,同时也反映了变更对软件项目进展的影响,可以作为项目进度管理的参考依据。第79页/共100页(5)配置审计 评估基线的完整性,确认所有配置项已入库保存。检查配置记录是否正确反映了配置项的配置情况。审核配置项的结构完整性。对配置项进行技术评审,防止不完善的软件实现。验证配置项的正确性、完备性和一致性。验证软件是否符合配置管理标准和规范。确认记录和文档保持可追溯性。第80页/共100页7.5.3

37、配置管理的流程图7-10 软件配置管理的流程第81页/共100页(1)制定配置管理计划 及时制定配置管理计划是整个软件项目成功的重要保证。配置管理计划的主要内容是制定配置管理策略,确定变更控制策略并对计划内容进行评审。第82页/共100页制定配置管理计划的主要工作流程 配置控制委员会(Configuration Control Board,CCB)根据项目开发计划确定软件各阶段里程碑和开发策略。配置管理员(Configuration Management officer,CMO)根据CCB的规划,制定详细的配置管理计划,递交CCB审核。配置管理计划经CCB审核通过后,交项目经理批准和发布实施。

38、第83页/共100页(2)创建配置管理系统 创建配置管理系统的主要工作包括确定软件和硬件环境,安装配置管理工具,建立一个配置管理库,储存在配置计划中已经定义好的配置项,设定配置项使用权限。第84页/共100页(3)配置管理计划的实施 执行阶段的配置管理活动主要分为以下三个方面:由配置管理员完成配置库的日常管理和维护工作。由开发和测试人员具体执行配置管理策略。软件项目人员按照规定完成变更控制。第85页/共100页配置管理活动的执行流程 配置控制委员会负责设定研发活动的初始基线。配置管理员根据配置计划设立配置库和工作空间,为执行配置管理做好准备。开发和测试人员按照统一的配置管理策略,对授权的软件资

39、源进行开发和测试。配置控制委员会在软件开发过程中审核各种变更请求,并适时地设立新的基线,保证开发、测试和维护工作的有序进行。第86页/共100页4)软件配置管理的误区 误区一误区一:配置管理就是解决软件版本控制的问题 版本控制只是配置管理中最基本的内容,产生这一认识误区的根本原因在于一些软件企业对软件开发流程的管理不重视,另外一个原因是由于开发资源不足,例如缺乏必要的配置管理软硬件环境,缺乏专业的配置管理人员,因此难以实施系统化的配置管理。第87页/共100页 误区二误区二:由开发水平最差的人员担任配置管理员。配置管理的计划、流程和制度只是配置管理实施的基础,而配置管理员是配置管理的具体实施者

40、,决定了配置管理能否有效地实施。国外软件企业一般都由具备丰富开发经验的人员担任配置管理人员,部分配置管理工作甚至直接由开发经理担任。第88页/共100页 误区三误区三:采用了先进的配置管理工具就能完成有效的配置管理。不能盲目迷信和依赖工具,认为只要部署了专业的配置管理工具就自然建立了配置管理体系。工具不能代替管理,工具的成功使用依赖于规范的配置管理流程以及合格的配置管理人员。第89页/共100页7.6 测试结束的原则(1)基于“测试阶段”的原则 测试一般都要经过单元测试、集成测试和系统测试这几个阶段,可以分别针对各个测试阶段制定详细的测试结束标准。每个测试阶段符合结束标准后,再进行下一个阶段的

41、测试。第90页/共100页相关的测试都需要设定一些结束标准。例如单元测试则需要设定以下标准:核心代码、测试用例都100%经过了评审。按单元测试计划完成了所有规定的测试任务。功能覆盖率达到100%,代码覆盖率不低于85%。发现的软件缺陷都已修复,各级缺陷修复率达到标准。第91页/共100页(2)基于“验收测试”的原则 对于项目类软件,当内部测试达到或接近测试指定的标准后,就将软件递交给用户做最后的验收测试。如果测试验收通过,就可以停止测试;如果发现了一些缺陷,在有针对性地修复并经过用户认可后就可以结束测试。第92页/共100页(3)基于“测试用例”的原则 测试用例设计完成并且评审通过后,其执行情

42、况可以作为测试结束的一个参考标准。如果测试过程中发现测试用例通过率太低,可以暂停测试,待开发人员全面改进软件后再继续测试。当功能测试用例通过率达到100%、非功能测试用例通过率达到95%以上时,可以结束测试。但是使用该原则作为测试结束标准时,需要严格控制好测试用例的质量。第93页/共100页(4)基于“缺陷收敛趋势”的原则 通过缺陷分析得到缺陷数量变化的趋势图,当趋势曲线逐渐收敛并且趋近于零时代表很难再发现缺陷,可以以此作为判定测试结束的标准。第94页/共100页(5)基于“缺陷修复率”的原则 软件缺陷的严重性等级可以分为致命、严重、重要和较小。在决定测试结束时间时,可以设定致命和严重级别缺陷

43、的修复率必须达到100%;重要缺陷的修复率必须达到95%以上,但不允许存在功能性的错误;较小问题的缺陷可以暂时不做修复。第95页/共100页(6)基于“覆盖率”的原则 当需求覆盖率达到100%,代码覆盖率达到测试计划要求的比例后,基本上就可以结束测试。可以通过“抽样测试”和“随机测试”进行补充性检查。第96页/共100页(7)基于“缺陷度量”的原则 通过缺陷分析技术和缺陷分析工具对缺陷进行度量,将缺陷主要属性的分布情况、缺陷密度、缺陷清除率等作为判断测试结束的依据。第97页/共100页(8)基于“项目计划”的原则 项目计划规定了主要测试活动及其进度安排,如果完成了所有规定的测试内容和回归测试,就可以作为结束测试的一个参考标准。但是,此项原则不能机械使用,因为开发环节的延迟会压缩测试时间,需要结合整体软件质量标准来判断是否可以结束测试。第98页/共100页(9)基于“质量成本”的原则 软件项目都需要对质量、成本和进度这三个因素进行平衡,“太少的测试是犯罪,而太多的测试是浪费”。当发现缺陷的测试费用超过了缺陷给系统造成的损失费用时,可以终止测试。第99页/共100页(10)基于“测试和行业经验”的原则 测试人员的测试能力和对目标用户业务的熟悉程度会影响到测试效率和测试质量,因此测试人员的经验也应当作为判断何时结束测试的一个依据。第100页/共100页

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(软件测试技术-第七章-软件测试管理课件.pptx)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|