第八部分(章)测试组管理及测试工作量的估计课件.ppt

上传人:小飞机 文档编号:3834864 上传时间:2023-03-24 格式:PPT 页数:103 大小:432KB
返回 下载 相关 举报
第八部分(章)测试组管理及测试工作量的估计课件.ppt_第1页
第1页 / 共103页
第八部分(章)测试组管理及测试工作量的估计课件.ppt_第2页
第2页 / 共103页
第八部分(章)测试组管理及测试工作量的估计课件.ppt_第3页
第3页 / 共103页
第八部分(章)测试组管理及测试工作量的估计课件.ppt_第4页
第4页 / 共103页
第八部分(章)测试组管理及测试工作量的估计课件.ppt_第5页
第5页 / 共103页
点击查看更多>>
资源描述

《第八部分(章)测试组管理及测试工作量的估计课件.ppt》由会员分享,可在线阅读,更多相关《第八部分(章)测试组管理及测试工作量的估计课件.ppt(103页珍藏版)》请在三一办公上搜索。

1、第八部分(章)测试组管理及测试工作量的估计,1.测试组的组织结构2.测试任务3.测试工作规模4.招聘测试工程师5.任务与职责6.企业的测试策略7.测试组的业绩考核,1,谢谢观赏,2019-5-27,1 测试组的组织结构,测试组的结构根据软件企业的不同而不同;测试组的结构同样依赖于被测产品的类型及测试组的使命。,烟囱测试组集中测试组IV&V测试组SMT测试组,测试组的类型,除了基于短期及集中型组织概念的测试组构成策略之外,测试组结构也可能由于测试任务的不同而有所不同。,2,谢谢观赏,2019-5-27,1测试组的组织结构一、概述,1、烟囱测试组:企业按照项目的开始及结束来雇佣并安排测试工程师,项

2、目结束,项目结束测试工程师就离开;2:集中测试组:企业有专职测试人员和测试专家专门的测试团队,企业将软件测试能力作为长期投资战略;3:独立验证与确认(IV&V)小组 IV&V测试组:IV&V测试组中的测试工程师完成软件应用的验收测试,并评审软件文档,以验证产品质量。,3,谢谢观赏,2019-5-27,1测试组的组织结构一、概述,4:“系统方法与测试(SMT)小组”:在企业中传授测试技术的独立小组,通常是企业的内部顾问组。SMT测试工程师日常的工作是:研究新的测试方法及工具、参加测试工具研讨会、维护企业的软件及测试程序资产、维护软件项目的“经验教训”数据库、维护测试工具评估结果及自动测试代码库。

3、,注:他们的职责并不是在项目中执行测试,而是磋商、培训及指导真正进行测试开发并具体执行的项目组人员。,4,谢谢观赏,2019-5-27,1测试组的组织结构一、概述,表51 测试组概况 烟囱测试组 烟囱测试组 集中测试组&V测试组 SMT测试组(小型)(大型)测试组长 测试经理 测试主任 IV&V经理 SMT经理 测试工程师 测试组长 测试经理 IV&V组长 过程组长(14)(12)测试工程师 测试组长 IV&V专家测试 测试组长(48)(35)组长(14)测试工程师 测试工程师(1020)(1-4)工程师(13),5,谢谢观赏,2019-5-27,1测试组的组织结构二、烟囱测试组,1、管理特殊

4、项目的经理应当对测试组的候选人进行面试,以便决定是否录用测试组人员的组织。2、项目的测试计划文档是在分配测试工程师之前由项目经理来制定的测试计划的制订。3、一个典型的烟囱测试组由2个到5个测试工程师组成。这些测试组成员并不隶属于单独的测试组织实体,而是向项目的任务经理或真正的项目经理进行报告。4、测试人员中的一人作为测试组长,其他测试工程师进行测试程序的开发和执行。5 测试组长为测试程序的开发进行设计,然后分配开发任务,开展测试工作。,6,谢谢观赏,2019-5-27,1测试组的组织结构二、烟囱测试组,测试工作结束后,测试工程师可能会发现自己处于一种不知何去何从的状态;一旦项目结束,就没有什么

5、正规的办法能够保留测试工作中所学到的东西;同样,企业也没有正规的办法将测试程序、方法、或者自动测试工具的知识及经验传递下去。,问题,项目结束后测试组将解散,7,谢谢观赏,2019-5-27,1测试组的组织结构三、集中测试组,企业中建有专门的测试组织,拥有专门的测试工程师。注:企业将软件测试能力作为一种投资策略,他们看到了软件测试专家是多面手,是企业中的财富。,8,谢谢观赏,2019-5-27,1测试组的组织结构三、集中测试组,(一)集中测试组的优点(1)不同的测试工程师可能在给定的时间内承担一个或多个项目多个项目同时进行,企业会发现集中测试组为同时测试不同的项目提供了极大的便利,例如,测试工程

6、师可以作为一个新项目的兼职,评审软件需求,以保证需求的可测试性。另外一种情况是,集中测试组可能在项目的高峰活动阶段提供额外的测试工程师。还有一种情况,项目可能在一个限定时间内需要具有特殊专长的测试工程师提供服务。,9,谢谢观赏,2019-5-27,1测试组的组织结构三、集中测试组,(2)集中测试组也可以从一开始就为项目设置一个或几个全职测试工程师项目早期支持。,在新项目的启动阶段,集中测试组可以通过提供兼职人员的方式完成一系列活动,否则,这些活动都由项目经理来完成。这些活动包括确定测试工作规模、编写测试工程师工作说明、测试工程师的面试、自动测试决策、测试工具的评估及选择以及测试工具的引入,这些

7、工程师可以对启动活动提供帮助并对整个生存周期提供支持,10,谢谢观赏,2019-5-27,1测试组的组织结构三、集中测试组,(3)建立集中测试组所带来的其他益处包括培训的高效性,项目中技术及工具的多样性、测试工程师之间的信息共享及技术交流、工作安全性的提高。,11,谢谢观赏,2019-5-27,1测试组的组织结构三、集中测试组,(二)测试主任 测试组如果包含10名到30名测试工程师,那么集中测试组可能需要推举一名测试主任。测试主任专门负责保持小组的专业水准以及专业知识。他或她必须保证测试活动在各个项目的进度之内正确完成。为了完成该任务,测试主任需要保证集中测试组中的测试专家保持各种技术能力以及

8、各种技术的并用能力。,12,谢谢观赏,2019-5-27,1测试组的组织结构三、集中测试组,(三)系统工程支持(SES)中心或部门 在一些企业中,集中测试组可能是负责执行项目中关键软件管理及制定性能规范的部门的一部分。该部门通常指系统工程支持(SES)中心(部门)。SES中心通常负责实现软件工程研究所(SEI)能力成熟度模型(CMM)第2级和第3级的关键过程领域。SES主要由执行测试工程规范之外任务的人员组成,例如与需求管理、风险管理、质量保证以及配置管理有关的人员,13,谢谢观赏,2019-5-27,1测试组的组织结构三、集中测试组,项目一旦完成,执行该项目的测试工程师将报告返回到集中测试组

9、,等待分配下一个任务。在该项目中获得的经验将保留在集中测试组维护的数据库中。同样,测试组还要维护一个有关测试程序、方法、程序、测试工具评估结果以及包含测试自动化代码库在内的知识库。,拥有集中测试组的企业实际上是将有才干的软件测试专家纳入到了企业当中。,14,谢谢观赏,2019-5-27,1测试组的组织结构四、独立验证与确认(IV&V)测试组,IV&V测试组的人员包括:软件开发组织中的独立小组成员或软件开发组织之外的小组成员,例如转包商。IV&V小组有权决定新开发的软件版本是否具备发布条件。其的责任是参与走查,验证是否遵循标准、进行软件文档的质量保证检测、并完成其他测试任务。,15,谢谢观赏,2

10、019-5-27,1测试组的组织结构四、独立验证与确认(IV&V)测试组,IVV小组通常将重点放在系统测试方面,IV&V不负责项目测试计划的开发,但要保证测试计划的完整、彻底、遵循标准以及对相应系统需求及导出的测试需求的支持。IV&V小组成员必须同时具备业务知识及技术知识。,16,谢谢观赏,2019-5-27,1测试组的组织结构四、独立验证与确认(IV&V)测试组,IV&V测试组的组织结构很适合于从事大量测试工作的特殊行业,例如金融、后勤管理或空间卫星控制系统。IV&V小组结构同样适用于大型商业软件的开发组织或维护并有可能开发大型的金融服务软件程序的公司。在这样的环境中,企业将保留IV&V人员

11、的专业知识作为一种投资是有好处的。,17,谢谢观赏,2019-5-27,1测试组的组织结构四、独立验证与确认(IV&V)测试组,项目结束后,IV&V专家向IV&V小组经理或企业的其他经理进行报告,等待分配下一项工作。而该项目从IV&V测试工作中获得的经验将被保留,企业将维护一个有关IV&V过程和程序的知识库。,18,谢谢观赏,2019-5-27,1测试组的组织结构五、系统方法及测试组(SMT),在一些企业中,传授测试技术的责任分配给同一企业中一个独立的小组,称为系统法及测试组(SMT)。该小组的报告链与直接的项目组织分离,测试组通常负责完成企业并行开发的多个应用的测试程序的启动活动。,19,谢

12、谢观赏,2019-5-27,1测试组的组织结构五、系统方法及测试组,SMT小组通常是企业的内部顾问组 SMT的全体人员负责有关方法及标准的知识交流、公布开发及测试指南、开发并精练测试方法、进行自动测试工具的评估及培训、在项目中引入测试工具。小组成员一个接一个地与不同的项目开发组组长协作,开展技术交流,和其他活动。,20,谢谢观赏,2019-5-27,1测试组的组织结构五、系统方法及测试组,SMT小组应该包括软件专家,他们的测试能力久经考验,他们在构思、组织以及制定计划方面才能卓著。SMT小组成员必备的能力包括对于整个测试生存周期的了解以及进行测试设计、开发、自动化和执行活动的必要技术。,21,

13、谢谢观赏,2019-5-27,1测试组的组织结构五、系统方法及测试组,SMT人员常常会深深地卷入项目的启动操作以及测试计划的制定和设计操作中,但在测试的开发和执行阶段投入较少。,22,谢谢观赏,2019-5-27,1测试组的组织结构五、系统方法及测试组,一旦项目测试开发工作完成,SMT测试工程师通常回到日常的SMT操作中,即研究新的测试方法及工具、参加测试工具研讨会、维护企业的软件及测试程序资产、维护软件项目的“经验教训”数据库、维护测试工具评估结果及自动测试代码库。,23,谢谢观赏,2019-5-27,1测试组的组织结构六、测试组小结,(一)测试组的比较测试组的结构依赖于几个条件,其中包括企

14、业的文化氛围。测试组组织最重要的结果是过程成熟度及软件测试能力持续改进的可能性。项目结束后,测试组织结构的意义在于能否将测试过程、程序、工具知识等保留在企业,并可将这些知识带入到新项目中。,24,谢谢观赏,2019-5-27,1测试组的组织结构六、测试组小结,(二)成功测试组的10大因素1业务知识 测试工程师需要具备业务知识并与系统的用户及客户紧密接触。2技木知识 应用是非常复杂的,而且为了更好地理解应用中的复杂技术,还必须掌握自动测试工具及技术背景。3任务划分 将业务任务与技术任务相互独立。,25,谢谢观赏,2019-5-27,1测试组的组织结构六、测试组小结,4资源管理 业务资源及技术资源

15、可以相互结合。5与开发组的关系 测试工程师与开发人员协同工作。6生存周期早期介入 测试组在开发生存周期的早期介入。7确定测试方法 方法、标准及过程必须按照需要就位、执行、修改。,26,谢谢观赏,2019-5-27,1测试组的组织结构五、测试组小结,8灵活性适应性 每个应用都是不相同的。在一个项目中成功的测试策略在另一个项目中可能失败。9度量 测试组需要掌握收集哪些度量,并利用这些度量改进测试程序。度量需要在整个开发生存周期中收集。10过程改进 测试组致力于所确定的测试方法的不断改进。,27,谢谢观赏,2019-5-27,1测试组的组织结构七、企业如何组织测试人员,企业如何组织测试人员应当视企业

16、的人力资源而定(我国目前企业)条件特别好的公司,可以按照集中测试组及更高的要求组织测试团队。甚至可以为每1-2个开发人员分配一名独立的测试人员。这样的测试人员职业化程度很高,可以完成单元测试、集成测试和系统测试工作,能够实现开发与测试同步进行。条件比较好的公司,可以设置一个独立的测试小组,该测试小组轮流参加各个项目的系统测试。而单元测试、集成测试工作由项目的开发小组承担。,28,谢谢观赏,2019-5-27,1测试组的组织结构七、企业如何组织测试人员,条件一般的公司,养不起独立的测试小组。单元测试、集成测试工作由项目开发小组承担。当项目进展到系统测试阶段,可以从项目外抽调一些人员,加上开发人员

17、,临时组织系统测试小组。条件比较差的公司,也许只有一个项目和为数不多的一些开发人员。那么就让开发人员一直兼任测试人员的角色,相互测试对方的程序。如果人员实在太少了,只好让开发者测试自己的程序,有测试总比没有测试好吧!,29,谢谢观赏,2019-5-27,2 测试任务,测试工作分解结构表描述了可被执行的测试任务的不同类型。测试工作结构分解表分成11个大类,95个子类。11个大类为:项目启动、早期项目支持、自动测试决策、测试工具的选择及评估、测试工具引入、测试计划、测试设计、测试开发、测试执行、测试管理及支持、测试过程改进。,30,谢谢观赏,2019-5-27,1 项目启动 11 过程改进。评审从

18、以往的相似项目中获取的经验教训,以便建议的改进活动。确定需要执行的改进活动 12 过程。掌握自动测试生存周期方法学(ATLM)的所有内容 13 范围。概述初步的测试目标和目的 14 规模。测试工作的规模 15 测试组组成。承担测试组的组成分析和撰写测试工程师任务描述 16 招聘。编写测试工程师招聘广告和执行面试,31,谢谢观赏,2019-5-27,2 早期项目支持 21 目标目的。进一步确定测试目标和目的,并同项目管理、开发组和测试工程师一起评审目标目的,以建立便于理解的、可以接受的测试目标和目的 22 约束评审。评审项目的约束条件,例如短期内投放市场及资源限制等 23 可测试性评审。确保应用

19、中考虑了可测试性 24 需求评审。确保需求是按可测试性的术语规定的 25 标准评审。确定并熟悉可应用的标准。确定标准是否需要根据以往的经验进行调整对缺少的标准进行定义 26 测试过程分析。分析企业当前的测试过程 27 客户参与。保证客户在测试生存周期中自始至终参与,32,谢谢观赏,2019-5-27,3 自动测试决策 31 测试目的策略。细化测试目的的定义并制定测试策略 32 测试工具价值。概述使用自动测试工具所带来的价值利益 33 测试工具使用建议。就测试工具的使用提出建议,获得管理人员的支持,33,谢谢观赏,2019-5-27,4 测试工具的选择及评估 41 系统工程环境。评审企业的系统工

20、程环境 42 可得到的测试工具。评审可得到的测试工具的类型43 候选测试工具。研究、评估候选测试工具并打分 44 定义评估范围 45 亲自评估工具 46 测试工具评估报告。报告工具选择及评估结果,并形成文档 47 测试工具采购。与采购部门一起制定采购订单,34,谢谢观赏,2019-5-27,2 测试任务,测试组可能希望将表中的元素87和93进行细分,以便按照不同的测试子类型描述测试程序/脚本的开发及执行情况。可能的测试子类型包括功能需求测试、服务器性能测试、用户界面测试、性能测试、程序模块复杂性分析、程序代码覆盖测试、系统装载性能测试、边界测试、安全性测试、内存泄漏测试以及响应时间性能测试等等

21、。,35,谢谢观赏,2019-5-27,2 测试任务,表中描述的工作分解结构(WBS)可与可与完成该项工作实际用时对应起来,以开发一个记录完成项目不同活动所需工作量的历史记录。维护这个历史记录对于测试规模的计算是很有价值的,它可用于评估新项目的测试工作量。,36,谢谢观赏,2019-5-27,3 测试工作规模,影响一个给定项目测试工作的因素有很多,例如企业的文化氛围或成熟程度、项目所定义的测试需求的范围、测试人员的测试技术水平以及测试组的组织类型。测试成熟度模型(TMM)根据企业的测试成熟程度来确定一个项目的测试工作等级。人力资源的耗费也会由于企业测试成熟程度的不同而不同。,37,谢谢观赏,2

22、019-5-27,3 测试工作规模一、测试成熟度模型(TMM)简介,测试成熟度级别1。在测试成熟度级别l中,测试工作仅限于调试。程序员对书写的软件进行调试,直到能够正常工作为止。因为只有程序员参与该工作,因而费用往往隐藏在开发费用中。同样,良好测试所带来的潜在好处也隐藏在现场支持及产品升级的费用中。测试成熟度级别l的真实测试费用是很难计算的。,38,谢谢观赏,2019-5-27,3 测试工作规模一、测试成熟度模型(TMM)简介,测试成熟度级别2。处于测试成熟度级别2的软件测试是一项独立的工作。测试计划及脚本通常是由有经验的产品用户或支持人员来开发的。这些人员也许具备,也许不具备自动(编程)测试

23、经验。不论属于何种情况,测试人员都必须彻底了解软件需求和设计说明,以便制定便于理解的测试计划,并开发与之关联的脚本。如果测试脚本存在,就应该提交给运行脚本并记录结果的测试工程师。,39,谢谢观赏,2019-5-27,3 测试工作规模一、测试成熟度模型(TMM)简介,在级别2中,测试组可能包括一些新手,他们是缺乏相关经验的最终用户或者具备相关功能知识的人员。这些人员的工作是就是设法使系统中断,实际上也是为了保证系统能够正常工作。在级别2中,测试工作可能需要一个或多个高级支持人员的服务,他协调测试文档的编写、对测试工程师进行管理并对结果进行编辑。虽然,一次性的启动费用便可实现捕获回放工具,但如果测

24、试周期数量增多,就会需要投入更多的资金。在后面的测试周期中,测试脚本可以重用,还可以自动回放,这样在脚本的开发及执行方面节省了大量的劳动力。,40,谢谢观赏,2019-5-27,3 测试工作规模一、测试成熟度模型(TMM)简介,测试成熟度级别35。在高级别的测试成熟度中,负责制定测试计划的测试工程师应当参与设计工程师的产品开发会议,帮助在产品中建立可测试性。测试工程师的编程背景与他或她对产品的熟悉程度将有助于提高后续建立的测试的有效性,以便找出产品最薄弱的环节。如果测试工具具有白盒测试能力,那么测试工程师可以利用他或她在系统内部工作的有关知识确定不能手工进行测试的功能。测试计划有助于将测试设计

25、的结果形成文档。测试设计为测试工程师开发测试脚本程序提供指南。,41,谢谢观赏,2019-5-27,3 测试工作规模一、测试成熟度模型(TMM)简介,测试脚本的开发工作是由测试工程师或应用程序员完成的。编程所需的经验级别依赖于所使用的工具以及测试的复杂程度。一般情况下,最具通用性的工具,它使用通用的脚本编程语言,例如C。而其他工具则可能使用简单的编程语言。不论是何种情况,测试组中至少要有一名成员必须在编写结构化程序方面有经验。自动工具用于自动生成测试日志、缺陷文档以及生成测试状念输出。这些工具在测试的执行及管理方面节省了大量的劳动力。,42,谢谢观赏,2019-5-27,3 测试工作规模二、测

26、试组规模确定方法,1、概述 根据测试工作量确定测试组规模的方法有好几种。(传统方法、商业评估工具法)(1)传统的方法是,软件开发程序已重点对开发工作量及整个项目的工作量做了估计。产品质量保证所需的工作量,例如软件测试,可根据预期的开发工作量和全部的项目工作量确定。,43,谢谢观赏,2019-5-27,3 测试工作规模二、测试组规模确定方法,(2)商业评估工具,例如COCOMO、Prices和SLIM,他们需要输入与开发规模、生产能力和项目管理活动范围相关的不同参数来确定测试工作量。这些工具所产生输出的精确性反映了输入数据的质量。只有极少数工具能够解决与产品质量保证规范(例如,软件测试)有关的日

27、益增长的重要性及复杂性问题,这些问题是通过将它们与用来生成资源与费用估算的一组输入因素结合起来而解决的。,44,谢谢观赏,2019-5-27,3 测试工作规模二、测试组规模确定方法,特定项目的测试工作量级别依赖于一些不确定因素,而这些因素是测试组进行资源估算所使用的复杂估算模型的输入条件。如果缺乏一些有价值的参数,那么可以考虑使用其他简单模型。确定估算软件开发工作量范围的重点之后,测试程序的大小依赖于软件开发估算的结果。这一点与开发比例方法所反映的结果是一致的。,45,谢谢观赏,2019-5-27,3 测试工作规模二、测试组规模确定方法,2、开发比例法 度量测试活动所需工作量级别的一个快速、简

28、单的方法是根据分配给项目的软件开发人员的数量来确定测试工程师的数量。测试组的规模是通过确定项目开发人员和测试工程师合理的比例来计算的。在这里“开发人员”包括致力于设计、开发、编译及进行单元级测试的人员。虽然一些开发人员的任务可能超出传统开发活动的范围,但使用这种比例法时,开发人员的分类只限于这些特定的范围。这样的分类将从事功能分析、需求管理、配置管理、质量保证、过程改进、项目管理、软件测试、培训材料编写以及用户手册编写的人员(专职人员)排除在外。,46,谢谢观赏,2019-5-27,3 测试工作规模二、测试组规模确定方法,开发人员与测试工程师的比例根据软件开发工作类型的不同而有所区别,见表8.

29、3.1。表中的比例(来自作者的经验)同样假设测试工作的范围包括组装及系统测试阶段的功能和性能测试。表列“计划的开发人员数目”以及“测试组规模”中的数值均为人员数目。一些任务关键的软件项目需要的测试工程师数量可能比开发人员数量多。总之,应用开发人员与测试工程师两者之间的比例反映了开发人员及测试工程师的任务,47,谢谢观赏,2019-5-27,3 测试工作规模二、测试组规模确定方法,表8.3.1 开发比例法 开发类型 计划的开发人员数目 比例 测试组规模 商业产品(大型市场)30 3:2 20 商业产品(小型市场)30 3:1 10 单个客户端的应用开发 30 6:l 5 单个客户端中的开发及与C

30、oTS集成 30 4:l 7 政府部门应用开发(国内)30 5:l 6 公司应用开发(国内)30 4:1 7注:表中假设测试工程师只参与测试生存周期活动的执行,而不直接参与任何开发工作。,48,谢谢观赏,2019-5-27,3 测试工作规模二、测试组规模确定方法,3、百分比法 估算测试程序工作量级的另一个快速的方法是百分比法,参见表8.3.2。这种方法在计算测试组规模时考虑计划用来支持项目的人员数目。影响测试组规模的各个因子参见下表,该表假设测试工作的范围包括组装及系统测试阶段的功能和性能测试。,49,谢谢观赏,2019-5-27,3 测试工作规模二、测试组规模确定方法,表8.3.2 百分比法

31、 开发类型 项目人 测试组 测试组规 产品保证 产品保证 员级别 规模因子 模(人数)组规模因子 小组规模 商业产品(大型市场)50 27 1 3 37 1 8 商业产品(小型市场)50 16 8 28 14 单个客户端的应用开发 50 10 5 20 10 单个端的开发与 50 14 7 23 11 COTS集成 政府部门应用开发(国内)50 11 5 20 10 公司应用开发(国内)50 14 7 23 11,50,谢谢观赏,2019-5-27,3 测试工作规模二、测试组规模确定方法,表中表示的规模因子也适用于产品保证(PA)小组。按照CMM提出的成熟度指南进行软件开发的企业需要CMM公布

32、的支持不同关键处理区域的人员为其提供服务。表中表明PA小组的组成包括测试组人员及从事需求管理、配置管理、质量保证以及过程改进的人员。“过程改进”的意思是监督工作的人员,这些人员将本企业的过程进行裁减,以适合特殊的项目。对项目人员进行相应的培训、收集并分析项目性能度量。,51,谢谢观赏,2019-5-27,3 测试工作规模二、测试组规模确定方法,4、测试程序法 估算测试工作量级别的另一种方法是使用计划的项目测试程序数量。企业需要形成一个历史记录,记录开发项目及其相关的开发规模大小、所需的测试程序数量以及按照人小时计算的最终测试工作量。开发规模的大小以代码行(LOC)、与代码等价的行、功能点或者所

33、生成对象的数目来计算,并形成文档。,52,谢谢观赏,2019-5-27,3 测试工作规模二、测试组规模确定方法,如果有这样的历史记录存在,那么测试组可以判断规模数值与所开发的测试程序数目之间以往的关系,然后估算新项目所需的测试程序数目。测试程序的数目估算确定后,测试组可以确定测试程序数目与测试组花费的人小时工作量之间的历史关系。之后,这个数目可用于估算新项目测试工作量的人小时数或与之等值的全职工作人员数。历史数据反映了企业的文化氛围或测试的成熟度,以及项目使用的测试程序数与测试需求范围之间的相互关系。,53,谢谢观赏,2019-5-27,3 测试工作规模二、测试组规模确定方法,表8.3.3 表

34、示了使用测试程序法的例子,在该表中,测试组估算一个新项目需要1120个测试程序。测试组经过检查历史记录,发现前一个包含860个测试程序的测试工作总共需要5300个小时。在前一项工作中,所需的小时数与测试程序数之间的比例为6.16。5300个小时的项目需要3.4个工程师9个月的全职工作(每月按174个工作量计)。确定了小时数测试程序数之间的历史记录为6.16之后,那么测试组可以算出完成1120个测试程序需要6,900个小时。由于新项目制定的进度为l 2个月,因而测试组可以计算出需要3.3个测试工程师。这个数字是用总的小时数(6900)去除在给定的时间内(1 2个月)每个人所需的小时数(2080)

35、而得到的。,54,谢谢观赏,2019-5-27,3 测试工作规模二、测试组规模确定方法,表8.3.3 测试程序法 测试过程数目 计算因子 人小时 完成周期 测试组规模(人数)历史记录 860 6.16 5300 9个月 3.4(相似项目)(1560小时)新项目评估 1120 6.16 6900 1 2个月 3.3(2080小时),每人每月按174小时计,12个月的工作量=174*12=2080,55,谢谢观赏,2019-5-27,3 测试工作规模二、测试组规模确定方法,5、任务计划法 估算测试工作量级别的另一种方法是检查历史记录中相似类型的测试工作所花费的人小时数。测试组需要如测试工作结构分解

36、表那样按照工作的分类结构进行时间记录。历史记录突出不同测试任务所需的工作量。之后,将新项目测试程序(1120)的评估数与历史记录中的规模基线进行比较,如表8.3.4所示。历史记录中的基线表明一个有860个测试程序的项目的全部人小时数为5300小时,它表示计算因子为6.16。该因子可用于评估包含1120个测试程序的测试工作量。这个相似的比较参见表8.3.3测试程序法。,56,谢谢观赏,2019-5-27,3 测试工作规模二、测试组规模确定方法,然后测试组对历史记录进行评审,查看测试工作结构分解表中所描述的包含在工作分解结构中的不同测试任务所花费的时间。表8.3.5将每个WBS元素需要的时间进行累

37、计。表8.3.4新项目需要的人小时估算测试程序数目 比例因子 人小时数历史记录(相似项目)860 6.16 5300新项目评估 1120 6.16 6900,57,谢谢观赏,2019-5-27,3 测试工作规模二、测试组规模确定方法,表8.3.5 任务计划法序号 WBS元素 历史数值 百分比 初步评估 评估调整 1 项目启动 140 2.6 179 179 2 早期项目支持 120 2.2 152 152 3 自动测试决策 90 1.7 117 4 测试工具选择及评估 1 60 3 207 5 测试工具引入 260 5 345 345 6 测试计划 530 1 0 690 690 7 测试设计

38、 540 10 690 690 8 测试开发 1980 37 2553 2553 9 测试执行 870 1 7 1 173 1 173 10 测试管理及支持470 9 621 621 11 测试过程改进 140 2.5 173 项目合计 5300 100 6900 6403,根据项目情况进行修正,58,谢谢观赏,2019-5-27,3 测试工作规模二、测试组规模确定方法,接下来,测试组根据调整后的人小时估算数6403小时来计算测试组的规模,参见表8.3.6。表8.3.6 测试组规模 测试程序数量 人小时评估 估算调整 完成周期 测试组规模 新项目评估 1120 5.71 6403 1 2个月

39、3.1(2,080小时/人),59,谢谢观赏,2019-5-27,测试组规模的计算结果为3.1个测试工程师工作12个月。如果测试组在整个测试程序中配备3个全职人员,那么为了在规定的进度内完成测试工作,与前一测试组相比,其工作效率需要略微提高一些。但可以采用不同的人员配备方法,即配备两个全职人员,以及两个兼职测试工程师。两个兼职人员的其中一人占用50的时间,另一人占用60的时间。这种计划对于协调使用两个兼职人员,完成特殊的测试类型或测试特殊功能是非常方便的。,60,谢谢观赏,2019-5-27,3 测试工作规模二、测试组规模确定方法,6、影响测试规模的因素 计算测试工作规模估算时,需要考虑下列因

40、素:,1企业 2测试需求范围 3测试工程师技能等级 4测试工具的熟练程度 5业务知识 6测试组组织 7测试工作的范围 8启动测试工作,9计划的增量软件版本数量 10过程定义 11完成关键任务的应用 12测试开发执行进度,61,谢谢观赏,2019-5-27,4 招聘测试工程师,面对组织测试人员以及执行项目测试的挑战,测试经理需要招聘具备测试工程才干的人员。,什么样的人可以成为好的测试工程师?测试工程师需要具备什么样的技能?怎样确定最适合于工作的测试工程师候选人?,62,谢谢观赏,2019-5-27,4 招聘测试工程师,优秀的软件开发人员经过培训之后,对于工作的开展以及工作中出现的问题在头脑中有一

41、整套解决方案。与此相反,测试工程师需要具备使事情走向失败的能力以及能够找到变通解决方案的开发人员所应有的智力,尤其在测试脚本的构造阶段表现得更加明显。,63,谢谢观赏,2019-5-27,4 招聘测试工程师,测试工程师应当具备分析、关注细节及组织能力,面对测试工作的复杂性,要有开创性并提前制定出计划。因为测试工程师必须与软件开发人员紧密协作,因而与开发人员交流故障报告及问题时要有理有节。,另外,测试工程师需要具备很宽的知识面,以及多个平台、操作系统、支持应用层、与其他产品及用户的接口、数据库、应用语言等方面的经验。熟悉主要自动测试工具的脚本编程语言是非常有益的。,64,谢谢观赏,2019-5-

42、27,4 招聘测试工程师一、测试工程师的品质,招聘测试工程师时需要考虑的品质和技能因素如下所示。将希望测试组成员具备的技能在应用的测试计划中形成文档是很有价值的。1适应性可以在不同的技术环境下开展工作,并熟悉不同的过程、工具以及方法。2学习速度快喜欢完成不同类型的任务,喜欢学习新东西并愿意接触各种不同的产品。,65,谢谢观赏,2019-5-27,4 招聘测试工程师一、测试工程师的品质,3总体技能具有复杂活动总体构思、清楚表达思想和思路的天资。4组织才能能够理解复杂的测试需求,并能够制定测试计划及设计方法,以达到相应的需求;能够并行完成多个任务。,5解决问题的能力能够解决工作中出现的问题以及测试

43、开发及执行过程中碰到的困难。,6创造性能够用多种方法对系统和应用进行操作,这样系统和应用可适应所有的环境;在软件或系统失败时能够确定失败的所有原因。,66,谢谢观赏,2019-5-27,4 招聘测试工程师一、测试工程师的品质,7分析编程技能开发测试脚本所需的培训、经验及技能。8应用的业务领域知识熟悉或了解业务应用的功能需求。9公关协作能力能够紧密有效地与软件开发人员协作,具备很强的口头表达能力。10软件专业人员精通系统的使用,能够确定问题,并能够灵活地与开发人员交流问题的交流。,11技术专家能够安装并评估测试工具,开发并维护测试数据;控制测试配置及环境;了解网络、数据库及中间件。,67,谢谢观

44、赏,2019-5-27,4 招聘测试工程师一、测试工程师的品质,12测试经验测试经验水平。一个有效的测试与自动测试软件的联合使用便构成了自己的开发生存周期。测试工程师应当在测试策略及目标计划、测试需求定义及测试设计、开发、执行方面具备经验。13面向细节关注细节以发现难以找到的小故障,对提高软件产品的质量具有浓厚的兴趣。14面向过程充分了解输入、步骤之间的逻辑顺序以及期望的输出结果的能力。15书写语法技能有效地评估并改进需求说明及软件设计文档的能力。,68,谢谢观赏,2019-5-27,4 招聘测试工程师二、测试组组成,在为测试工作招聘测试工程师时,有必要了解测试组的最终组成结构:测试组作为一个

45、整体,要负责完成项目的所有测试需求,以及所有的测试任务。测试工作有效执行需要该小组成员保留足够的常驻专家来平衡已采用的测试程序及使用的测试工具。测试组要充分了解测试工具,并具备足够的经验,这样,可以准确地制定计划、准备并执行测试。,注:测试组的组成大致与表8.4.1中描述的测试组概况相同。,69,谢谢观赏,2019-5-27,4 招聘测试工程师二、测试组组成,表8.4.1给出的测试组概况描绘了可以负责测试工作的测试组的组成,包括自动测试工具QA Partner的使用。,例如在Windows客户端和UNIX服务器上开发的客户机服务器结构的患者健康护理调度和资源管理应用项目,应用程序开发的前台使用

46、Visual Basic和C+,后台使用SQL服务器。特殊项目的测试范围包括功能需求、服务器性能、用户界面、内存分配及系统加载测试。,70,谢谢观赏,2019-5-27,4 招聘测试工程师二、测试组组成,表8.4.1描述的测试组组成包括测试经理、测试组长、3个测试工程师以及一个初级测试工程师。,1、这样的测试组配置表明测试经理至少具备6年的软件测试经验,其中包括1年到2年担任测试组长的经验。在理想的情况下,测试组长的经验应该包括人员的管理方面。实际上,测试经理可能具备软件开发及软件测试两方面的经验。理想情况下,测试经理对于项目计划使用的主要测试工具及市场上其他一些工具至少有1年的经验。测试经理

47、同时还要熟悉各种测试管理工具,或帮助测试组成员建立测试床环境的工具。,71,谢谢观赏,2019-5-27,4 招聘测试工程师二、测试组组成,2、如果测试经理负责整个工作并将重点放在长期的测试及策略开发上,那么测试组组长需要负责测试执行技术方面的工作。表8.4.1给出的测试组概况建议测试组长至少有4年的测试工作经验,以及至少2年使用QA Partner工具的经验。测试组长最好具备使用Purify测试工具及几种编程语言的能力,同时最好熟悉SQL Server关系数据库。,72,谢谢观赏,2019-5-27,4 招聘测试工程师二、测试组组成,3、试组组成的例子还表明共需要3个测试工程师职位。他们均需

48、要完成普通的测试活动,并要求其中两人具备相关的业务领域的经验,同时要求另外一个精通网络工程及管理。这里所说的精通可以体现在具有网络经验以及获得网络工程师认证(CNE)证书。,73,谢谢观赏,2019-5-27,4 招聘测试工程师二、测试组组成,4、测试组周围可能是最初级的测试工程师他们刚刚走出校门或只有l、2年的软件开发经验。初级测试工程师会慢慢地熟悉测试的生存周期、项目中使用的测试工具以及业务应用本身。对于测试组成员而言,具备不同的软件技能是非常有益的,包括新软件工具及编程语言的培训及理论经验。,74,谢谢观赏,2019-5-27,4 招聘测试工程师三、工作申请表,明确测试工程师候选人的资格

49、要求,并对测试组的组成胸有成竹之后,测试经理就可以开始招聘工作。对于大多数企业,公开职位的招聘需要填写一个表格。这种表格的内容包括工作申请、职位描述、招聘要求。目的是通过标明所要求的技能以及从事该项工作所需的 证书来确定职位的性质。这种表格通常在企业内部、同等机会的职业办公室以及外地或本地的职业中介机构分发。,75,谢谢观赏,2019-5-27,4 招聘测试工程师三、工作申请表,工作申请表的内容相当标准。工作申请表通常包括发布时间、职位名称、工作的地理位置以及职位识别号码。它概述该职位的职责以及希望具备的技能,同时规定受教育的程度以及所要求的工作年限。,注:对于表8.4.1中给出的测试组概况中

50、的各个职位,都需要生成一张工作申请表。测试组组长职位的工作申请表的例子参见表8.4.2。,76,谢谢观赏,2019-5-27,4 招聘测试工程师四、招聘活动,一个企业有效地招聘高质量测试工程师的能力根据该企业中测试组类型的不同有所不同。,1、使用烟囱测试组的企业按项目招聘或雇佣测试专家。,在这种情况下,企业只对项目负责,项目经理也只关注该项目的启动和执行;在项目的启动过程中,经理研究并评估项目的工具,为所需的各种人员制定工作申请表、面试各种职位的候选人、做出最后的雇佣决定。,项目经理可能在专业软件测试方面缺乏经验,不知道怎样定义、招聘或确定测试组所需的技能类型。,77,谢谢观赏,2019-5-

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号