Ch软件测试组织.ppt
- 文档编号:1387093
- 上传时间:2022-10-21
- 格式:PPT
- 页数:60
- 大小:1.09MB
Ch软件测试组织.ppt
《Ch软件测试组织.ppt》由会员分享,可在线阅读,更多相关《Ch软件测试组织.ppt(60页珍藏版)》请在冰豆网上搜索。
1,软件测试方法和技术-Ch.12软件测试组织与度量,CH12CH16,2,第十二章软件测试的组织与度量,1测试队伍的地位和责任2测试团队的构成3测试团队的组建4软件产品的质量度量5评估系统测试的覆盖程度6软件缺陷分析方法7基于缺陷分析的产品质量评估,3,Question,软件测试团队的任务是什么?
测试团队在开发中所占的比重有多大?
测试团队由哪些角色构成?
如何组建一支新的测试团队?
优秀软件测试工程师应具备什么样的素质?
测试人员的职业发展方向在哪里?
4,1测试队伍的地位和责任,软件测试团队的任务软件测试和质量保证(SQA)的联合测试团队的地位和其他团队的关系测试团队的规模,5,1)软件测试团队的任务,基本任务:
建立测试计划、设计测试用例、执行测试、评估测试结果和递交测试报告其他任务:
阅读和审查软件功能说明书、设计文档,审查程序,和开发人员、项目经理等进行充分交流,6,软件测试团队的责任,发现软件程序、系统或产品中所有的问题;尽早地发现问题;督促开发人员尽快地解决程序中的缺陷;帮助项目管理人员制定合理的开发计划;并对问题进行分析、分类总结和跟踪帮助改善开发流程、提高产品开发效率;提高程序编写的规范性、易读性、可维护性等。
7,2)软件测试和质量保证(SQA)的联合,软件测试和质量保证两项职能合并起来做,工作更有效。
两者之间的关系:
软件测试为质量保证提供数据和质量评判的依据,质量保证可以指导软件测试的进行,质量保证和软件测试相辅相成;质量保证主要审查开发过程、流程,强调质量以预防为主。
而测试主要审查产品,包括需求文档、设计文档等,以事后检查为主,保证每个阶段的产品输出是正确的,符合产品质量要求。
QA部门两个基本职能:
软件测试和质量保证。
8,3)测试团队的地位和其他团队的关系,以开发为核心的组织模型,9,以项目经理为核心的组织模型,10,以三国鼎立的组织模型,测试团队具有独立的、权威性的地位。
11,测试小组的管理,测试小组管理具有三个方向:
向内、向上和向外。
向内管理:
就是确定测试团队和测试不同岗位的工作职责,招聘团队成员,组织团队结构,监督和激励员工;向上管理:
就是总结测试过程的近况,向上级提交紧急问题以引起项目管理团队的注意。
设定预期目标,快速而谨慎地应对方向性变化,参加公司级的管理会议,介绍测试团队的业绩和计划;向外管理:
就是分析测试结果,对问题报告进行分类,与同级管理人员讨论测试需求和服务。
12,树立良好的测试团队意识,目标意识、团队意识、服务意识、竞争意识和危机意识,13,测试团队的激励方法,支持合理的工作方式,表扬和奖励,站在测试小组一边,提高士气,14,微软开发团队的构成,DEV,QA,PM,15,微软开发团队举例,Windows2000Team程序经理450开发人员900测试人员1800技术支持人员600技术传播人员1120本地化人员110培训人员115文档人员100市场人员100内部IT50合计5345,WebMatrixTeam程序经理2开发组长/架构师:
1开发人员:
7测试组长1测试人员13合计24,16,4)测试团队的规模,操作系统类产品:
测试要求高,测试人员与开发人员的比例为2:
1。
应用平台、支撑系统一类的产品:
测试要求比较高,测试人员与开发人员的比例为1:
1。
对于特定的应用系统一类产品:
测试人员与开发人员的比例为1:
2。
17,2测试团队的构成,测试团队的基本构成测试人员的责任测试团队的组织模型,18,1)测试团队的基本构成,QA/测试经理:
人员管理,资源调配、测试方法改进等;实验室管理人员:
设置、配置和维护实验室的测试环境内审员:
审查流程,建立测试模板,跟踪缺陷测试报告的质量等;测试组长:
负责项目的管理、测试计划、测试用例、任务安排等;测试设计人员/资深测试工程师,产品设计规格说明书的审查、测试用例的设计、技术难题的解决、培训和指导、实际测试任务的执行;一般(初级)测试工程师,执行测试用例和相关的测试任务。
19,2)测试人员的责任,初级测试工程师测试工程师资深测试工程师测试实验室管理员软件包构建或发布工程师测试组长测试或QA经理,20,3)测试团队的组织模型,按技术领域来组建团队,21,按产品线来组建团队,22,3测试团队的组建,建立测试团队的正确观念测试人员的招聘测试新人的培训,23,1)建立测试团队的正确观念,测试人员的要求对软件测试人员的要求和对程序员的要求是不一样的,测试人员的技术要求总体上说会低些,但测试人员在沟通能力、理解能力、分析问题能力等方面要求会高些。
对不同层次的测试人员的要求也不相同,对数据库测试工程师要数据库设计、数据库管理方面的经验,对自动化测试工程师需要良好的编程经验,对测试组长除了需要良好的编程经验、测试经验之外,还需要良好的项目管理能力和组织能力等。
24,测试职业的地位测试职业的发展空间测试职业的教育和培训,25,2)测试人员的招聘,软件测试人才市场:
总体缺乏明确各类测试人员的要求面试对应聘者可以进行量化的评估,26,优秀软件测试工程师的必备素质,1、沟通能力2.技术能力3、信心4外交能力和幽默感5耐心6、很强的记忆力7怀疑精神8.洞察力9适度的好奇心10反向思维和发散思维能力,27,3)测试新人的培训,培训目标培训的方式培训的内容培训的考核,28,培训考核,29,知识共享和在岗培训,初级测试工程师,中级测试工程师,高级测试工程师,测试经理,评估、考试、认证体系,30,4软件产品的质量度量,软件度量的内容和分类软件度量的分工和过程软件质量模型软件质量的度量质量度量的统计方法,31,软件度量,概念:
软件度量就是对软件所包含的各种属性的量化表示。
作用:
软件度量可以提供对软件过程和软件产品的深入了解的衡量指标,使组织能够更好地做出决策以达成目标,软件度量具有如下作用:
用数据指标表明验收标准;监控项目进度和预见风险;分配资源时进行量化均衡;预计和控制产品的过程、成本和质量。
32,1)软件度量的分类,度量的根本目的:
通过量化分析和总结提高软件开发效率,降低软件缺陷和开发成本,提高软件产品质量。
包括四个方面:
收集信息、预测、评估和改进。
相关概念:
测量(Measurement):
对产品过程的某个属性的范围、数量、维度、容量或大小提供一个定量的指示;度量(Metric):
是对软件产品进行范围广泛的测度;指标(Indicator):
是一个度量或一组度量的组合。
33,软件度量分类,软件度量一般可分为三类:
软件过程度量:
用于过程的优化和改进。
对于软件开发过程本身的度量,目的是形成组织的各种模型。
典型的过程度量如CMM中KPA的度量。
软件项目度量:
用于生产率评估和项目控制。
产品质量度量:
用于产品评估和决策,主要针对项目开发结果-最终产品的度量。
相互间关系:
过程度量是战略性的,针对组织范围内进行,是对大量项目实践的总结和模型化,对于项目度量具有指导意义;项目度量是战术性的,针对具体的项目预测、评估、改进项目工作产品度量是对产品质量的度量,用于对产品质量的评估和预测。
34,软件度量的内容,规模度量:
代码行数,功能点和对象点等复杂度度量:
软件结构复杂度指标。
缺陷度量:
帮助确定产品缺陷变化的状态,并指示修复缺陷活动所需的工作量,分析产品缺陷分布的情况工作量度量进度度量生产率度量:
代码行数人月,测试用例数/人日;风险度量:
“风险发生的概率”和“风险发生后所带来的损失”其他的项目动态度量(如需求更改、代码动态增长等),35,2)软件度量的分工,度量工作小组由专职的度量研究人员和项目协调人员组成,度量研究人员的主要职责是定义度量过程和指导进行度量活动,并对数据进行分析、反馈;项目协调人员的职责是为定义度量过程提供详细的需求信息,并负责度量过程在项目组的推行。
数据提供者一般是项目中的研发人员,有时还会包括用户服务人员和最终用户。
IT支持者确定数据提供的格式与数据存储方式,提供数据收集工具与数据存储设备,36,软件度量的过程,识别目标。
分析出度量的工作目标和列表,并由管理者审核确认定义度量过程。
定义其收集要素、收集过程、分析、反馈过程、IT支持体系,为具体的收集活动、分析、反馈活动和IT设备、工具开发提供指导。
搜集数据。
应用IT支持工具进行数据收集工作,并按指定的方式审查和存储。
数据分析与反馈。
根据数据收集结果,按照已定义的分析方法进行数据分析,完成规定格式的图表,进行反馈。
过程改进。
根据度量的分析报告,管理者基于度量数据做出决策。
37,3)软件质量模型,Boehm软件质量度量模型McCall三层次的度量模型ISO9126软件质量模型,38,Boehm软件质量度量模型,39,ISO9126软件质量模型,40,4)软件质量的度量,软件需求是度量软件质量的基础,不符合需求的软件就不具备质量。
定量的软件评估就是基于这样的原则来通过数学模型来实现,也就是尺度度量方法。
包括:
软件可靠性度量、复杂度度量、缺陷度量和规模度量Mic1f1c2f2cnfnMi是一个软件质量因素(如SQRC层各项待计算值),fn是影响质量因素的度量值(如SQDC层各项估计值),cn是加权因子。
41,5)质量度量的统计方法,说明不完整或说明错误(IES)与客户交流不够所产生的误解(MCC)故意与说明偏离(IDS)违反编程标准(VPS)数据表示有错(EDR)模块接口不一致(IMI)设计逻辑有错(EDL)不完整或错误的测试(IET)不准确或不完整的文档(IID)将设计翻译成程序设计语言中的错误(PLT)不清晰或不一致的人机界面(HCI)杂项(MIS),42,质量度量的统计方法
(2),43,5评估系统测试的覆盖程度,测试的评估概念对软件需求的估算基于需求的测试覆盖评估基于代码的测试覆盖评估,44,1)测试的评估概念,软件测试评估主要有两个的目的量化测试进程,判断测试进行的状态和进度,决定什么时候测试可以结束;为测试或质量分析报告生成所需的量化数据,如缺陷清除率、测试覆盖率等。
例子:
45,2)对软件需求的估算,假设有R个需求,功能需求的数目为F,非功能需求数为N,则:
R=F+N.(一致性的度量)Q1M/R其中Q1表示需求的确定性,M是所有复审者都有相同解释的需求数目。
功能需求的完整性Q2:
Q2Fu/(NiNs)其中Fu是唯一功能需求的数目,Ni是由规格设计说明书定义的输入个数,Ns是被表示的状态的个数。
考虑非功能需求:
Q3Fc/(FcFnv)其中Fc是已经确认为正确的需求的个数,Fnv是尚未被确认的需求的个数,46,3)基于需求的测试覆盖评估,两类估算:
(1)确定已经执行的测试用例覆盖率假定Tx已执行的测试过程数或测试用例数,Rft是测试需求的总数:
已执行的测试覆盖TxRft
(2)确定成功的测试覆盖假定Ts是已执行的完全成功、没有缺陷的测试过程数或测试用例数。
成功的测试覆盖TsRftRft可以根据需求点、以往经验来估算,47,4)基于代码的测试覆盖评估,基于代码的测试覆盖评测是对被测试的程序代码语句、路径或条件的覆盖率分析。
这种测试覆盖策略对于安全至上的系统来说非常重要。
基于代码的测试覆盖通过以下公式计算:
已执行的测试覆盖TcTnc其中Tc是用代码语句、条件分支、代码路径、数据状态判定点或数据元素名表示的已执行项目数,Tnc(Totalnumberofitemsinthecode)是代码中的项目总数。
48,6软件缺陷分析方法,缺陷报告缺陷分布报告缺陷趋势报告,49,1)缺陷报告,缺陷分布报告,允许将缺陷计数作为一个或多个缺陷参数的函数来显示,生成缺陷数量与缺陷属性的函数。
如测试需求和缺陷状态、严重性的分布情况等。
缺陷趋势报告,按各种状态将缺陷计数作为时间的函数显示。
趋势报告可以是累计的,也可以是非累计的;缺陷年龄报告,显示缺陷处于活动状态的时间,展示一个缺陷处于某种状态的时间长短,从而了解处理这些缺陷的进度情况。
测试结果进度报告,展示测试过程在被测应用的几个版本中的执行结果以及测试周期,50,2)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Ch 软件 测试 组织