第07章-软件测试项目管理.ppt
《第07章-软件测试项目管理.ppt》由会员分享,可在线阅读,更多相关《第07章-软件测试项目管理.ppt(55页珍藏版)》请在冰豆网上搜索。
![第07章-软件测试项目管理.ppt](https://file1.bdocx.com/fileroot1/2022-10/11/118d4486-ff91-4a91-b831-0588d47a844c/118d4486-ff91-4a91-b831-0588d47a844c1.gif)
软件测试软件测试第第7章章-软件测试项目管理软件测试项目管理第七章第七章软件测试项目管理软件测试项目管理7.1软件测试项目管理的概述软件测试项目管理的概述7.2软件测试项目的组织软件测试项目的组织7.3软件测试项目的过程管理软件测试项目的过程管理7.4软件测试项目的资源管理软件测试项目的资源管理7.5测试项目的进度管理测试项目的进度管理7.6测试项目的风险管理测试项目的风险管理7.7测试项目的质量管理和配置管理测试项目的质量管理和配置管理7.8软件测试文档的管理软件测试文档的管理7.9软件测试成本管理软件测试成本管理7.1软件测试项目管理的概述软件测试项目管理的概述7.1.1软件项目管理的共性软件项目管理的共性7.1.2软件测试项目管理的特点软件测试项目管理的特点软件项目管理的共性软件项目管理的共性人员人员(People)问题问题(Problem)过程过程(Process)项目项目软件测试项目管理的特点软件测试项目管理的特点p软件质量标准定义不准确、任务边界模糊,如何确定什么时候软件软件质量标准定义不准确、任务边界模糊,如何确定什么时候软件测试可以结束,找不到严重的缺陷并不代表软件不存在严重的缺陷。
测试可以结束,找不到严重的缺陷并不代表软件不存在严重的缺陷。
p软件测试项目具有智力密集、劳动密集的特点,受人力资源影响最软件测试项目具有智力密集、劳动密集的特点,受人力资源影响最大,项目成员的结构、责任心、能力和稳定性对测试执行、产品质大,项目成员的结构、责任心、能力和稳定性对测试执行、产品质量有很大的影响。
量有很大的影响。
p测试任务的分配难测试任务的分配难p测试要求人力资源十分稳定。
由于软件测试项目不仅是一个技术工测试要求人力资源十分稳定。
由于软件测试项目不仅是一个技术工作,而且要求对产品的功能、特性需要非常了解。
作,而且要求对产品的功能、特性需要非常了解。
p软件测试人员在待遇、地位可能受到一些不公正的待遇,软件测试人员在待遇、地位可能受到一些不公正的待遇,7.2软件测试项目的组织软件测试项目的组织p软件测试项目的人员组织模式软件测试项目的人员组织模式p测试项目的管理原则测试项目的管理原则p测试计划先行测试计划先行p建立优先级建立优先级p建立客观的评价标准建立客观的评价标准测试的管理和组织机构开发经理开发经理开发经理开发经理开发经理开发经理测试员测试员开发经理开发经理开发经理开发经理程序员程序员测试的管理和组织机构项目经理项目经理开发经理开发经理开发经理开发经理测试员测试员开发经理开发经理开发经理开发经理程序员程序员测试经理测试经理开发经理开发经理测试的管理和组织机构执行经理执行经理开发经理开发经理开发经理开发经理开发经理开发经理开发经理开发经理开发经理开发经理项目经理项目经理开发经理开发经理开发经理开发经理测试经理测试经理7.3软件测试项目的过程管理软件测试项目的过程管理p测试项目启动测试项目启动p测试计划阶段测试计划阶段p测试设计阶段测试设计阶段p测试执行阶段测试执行阶段p测试结果的审查和分析测试结果的审查和分析测试计划阶段测试计划阶段测试项目计划的整体目标是为了确定测试的任务、所需的各种资源和投入、预见可能出现的问题和风险,以指导测试的执行,最终实现测试的目标,保证软件产品的质量。
制定测试计划,要达到的目标有:
p制定一个现实可行的、综合的计划,包括每项测试活动的对象、范制定一个现实可行的、综合的计划,包括每项测试活动的对象、范围、方法、进度和预期结果;围、方法、进度和预期结果;p为项目实施建立一个组织模型,并定义每个角色的责任和任务;为项目实施建立一个组织模型,并定义每个角色的责任和任务;p确定测试所需要的时间和资源,以保证其可获得性、有效性;确定测试所需要的时间和资源,以保证其可获得性、有效性;p确立每个测试阶段测试完成以及测试成功的标准、要实现的目标;确立每个测试阶段测试完成以及测试成功的标准、要实现的目标;p识别出测试活动中各种风险,并消除可能存在的风险,降低那些不识别出测试活动中各种风险,并消除可能存在的风险,降低那些不可能消除的风险所带来的损失可能消除的风险所带来的损失测试计划阶段测试计划阶段
(2)测试的输入标准测试的输入标准p整体项目计划框架;p需求规格说明书;p技术知识或业务知识p标准环境p设计文档;p足够的资源p人员组织结构测试的输出标准测试的输出标准p测试执行标准pBug描述和处理标准p文档标准和模板p测试分析、质量评估标准等软件测试设计和开发软件测试设计和开发p制定测试的技术方案制定测试的技术方案,确认各个测试阶段要采用的测试技术、测试环境和平台,以及选择什么样的测试工具。
p设计测试用例设计测试用例,根据产品需求分析、系统技术设计等规格说明书,在测试的技术方案基础上,设计具体的测试用例。
p测试开发测试开发:
根据所选择的测试工具,将所有可以进行自动化测试的测试用例转化为测试脚本的过程;p测试环境的设计测试环境的设计。
测试执行阶段测试执行阶段p如何确保测试环境满足测试用例所描述的要求?
如何确保测试环境满足测试用例所描述的要求?
p如何保证每个测试人员清楚自己的测试任务?
如何保证每个测试人员清楚自己的测试任务?
p如何保证每个测试用例得到百分之百的执行?
如何保证每个测试用例得到百分之百的执行?
p如何保证所报告的如何保证所报告的Bug正确、描述清楚?
正确、描述清楚?
p如何跟踪如何跟踪Bug处理的进度使严重的处理的进度使严重的Bug及时得到解决?
及时得到解决?
测试执行阶段测试执行阶段
(2)p测试阶段目标的检查测试阶段目标的检查p测试用例执行的跟踪测试用例执行的跟踪pBug的跟踪和管理的跟踪和管理p和项目组外部人员的沟通和项目组外部人员的沟通p测试执行结束评判测试执行结束评判7.4软件测试项目的资源管理软件测试项目的资源管理p人力资源管理人力资源管理p测试环境资源测试环境资源p工作量的估计工作量的估计7.5测试项目的进度管理测试项目的进度管理7.5.1测试项目的里程碑和关键路径测试项目的里程碑和关键路径7.5.2测试项目进度的特性及外在关系测试项目进度的特性及外在关系7.5.3测试项目进度的管理方法和工具测试项目进度的管理方法和工具测试项目的里程碑测试项目的里程碑任务天任务天任务天任务天M21:
测试计划制划制定定11M23:
测试设计12开发测试过程5验证测试结果2确定项目1测试用例的设计7测试和调试测试过程2调查突发结果1定义测试策略2测试用例的审查2修改测试过程2生成缺陷日记1分析测试需求3测试工具的选择1建立外部数据集1M62:
测试评估估3估算测试工作量1测试环境的设计2重新测试并调试测试过程2评估测试需求的覆盖率1确定测试资源1M26:
测试开开发15M42:
功能功能测试9评估缺陷0.5建立测试结构组织1建立测试开发环境1设置测试系统1决定是否达到测试完成的标准0.5生成测试计划文档2录制和回放原型过程2执行测试4测试报告1测试项目进度的特性及外在关系测试项目进度的特性及外在关系p进度与质量关系进度与质量关系p进度与成本的关系进度与成本的关系测试进度的测试进度的S曲线法曲线法进度进度S曲线法通过对计划中的进度、尝试的进度与实际的进度三者对曲线法通过对计划中的进度、尝试的进度与实际的进度三者对比来实现的,其采用的基本数据主要是测试用例或测试点的数量比来实现的,其采用的基本数据主要是测试用例或测试点的数量测试进度的测试进度的NOB曲线法曲线法NOB,NumberofOpenBug7.6测试项目的风险管理测试项目的风险管理7.7测试项目的配置管理测试项目的配置管理SCMSCM(SoftwareConfigurationManagementSoftwareConfigurationManagement的缩写)的缩写),是在团队开发中,标识、控制和管理,是在团队开发中,标识、控制和管理软件变更软件变更的一种的一种管理,包括更改管理、版本管理、问题跟踪管理等。
管理,包括更改管理、版本管理、问题跟踪管理等。
配置管理对软件测试和质量保证影响比较大,其影配置管理对软件测试和质量保证影响比较大,其影响程度取决于项目规模和复杂性、人员素质、流程、管响程度取决于项目规模和复杂性、人员素质、流程、管理水平等。
理水平等。
软件项目中可能遇到如下的问题:
n找不到某个文件的历史版本;找不到某个文件的历史版本;n开发人员使用错误的程序版本;开发人员使用错误的程序版本;n开发人员未经授权修改代码或文档;开发人员未经授权修改代码或文档;n人员流动,交接工作不彻底;人员流动,交接工作不彻底;n因协同开发,或者异地开发,版本变更混乱导因协同开发,或者异地开发,版本变更混乱导致整个项目失败;致整个项目失败;n不同程序员对程序的更改会产生冲突不同程序员对程序的更改会产生冲突程序员程序员A程序员程序员Bcommon-function.javacommon-function.java修改修改添加了函数checkStringlength()添加了函数checkDate()服务器服务器提交提交提交提交程序完整性受到破坏软件项目进行中面临的一个主要问题是持续不断的变软件项目进行中面临的一个主要问题是持续不断的变化,变化可能导致混乱,而软件配置管理就是用于控制化,变化可能导致混乱,而软件配置管理就是用于控制变化。
变化。
软件配置管理软件配置管理(SoftwareConfiguration(SoftwareConfigurationManagement,SCM)Management,SCM)是指一套管理软件开发和维护过程中是指一套管理软件开发和维护过程中所产生的各种中间软件产品的方法和规则。
它是控制软所产生的各种中间软件产品的方法和规则。
它是控制软件系统演变的学科。
件系统演变的学科。
测试活动的配置管理属于整个软件项目配置管理的一测试活动的配置管理属于整个软件项目配置管理的一部分。
部分。
软件配置管理的作用服务器服务器存储所有文档和源程序,由存储所有文档和源程序,由版本控制系统管理版本控制系统管理程序员程序员1程序员程序员n下载下载提交提交下载下载提交提交团队开发的一般模式安装有版本控制安装有版本控制系统客户端系统客户端n记录软件产品的演化过程。
n确保软件开发者在软件生命周期中的各个阶段都能得到精确的产品配置。
n最终保证软件产品的完整性、一致性、可追溯性。
n常见的软件测试配置项:
测试样品、测试标准、测试计划、测试用例、缺陷报告、测试报告、测试工具、用户手册。
软件配置管理的效果软件配置管理的工作是要解决下列问题:
(11)采用什么方式去标识和管理数量众多的程序、文档等)采用什么方式去标识和管理数量众多的程序、文档等的各种版本?
的各种版本?
(22)在软件产品交付用户之前和交付之后如何控制变更?
)在软件产品交付用户之前和交付之后如何控制变更?
实现有效的变更?
实现有效的变更?
(33)谁有权批准变更以及安排变更的优先级?
)谁有权批准变更以及安排变更的优先级?
(44)用什么方法估计变更可能引起的其他问题?
)用什么方法估计变更可能引起的其他问题?
这些问题的解决正是软件配置管理应完成的任务:
这些问题的解决正是软件配置管理应完成的任务:
配置配置标识、版本管理、变更管理、配置审核及配置报告。
标识、版本管理、变更管理、配置审核及配置报告。
软件配置管理软件配置管理n配置标识主要是配置标识主要是标识配置项的名称和类型标识配置项的名称和类型。
n配置标识是配置管理的基础。
配置标识是配置管理的基础。
n所所有有配配置置项项的的操操作作权权限限都都应应当当严严格格管管理理,其其基基本本原原则则是是:
所所有有基基线线配配置置项项向向测测试试人人员员开开放放读读取取权权限限;而而非非基线配置项向测试组长、项目经理及相关人员开放。
基线配置项向测试组长、项目经理及相关人员开放。
配