笔者从自己负责测试的项目出发,讲述下自己做测试管理的一些故事,从流程管理和团队管理两方面,分享下自己做管理过程中的一些心得和思考,供各位参考。
流程管理
流程简述
我们测试的项目是一个APP端类的产品,迭代周期时一个月一个迭代。每个月月初启动迭代,经过两周的开发设计周期,各需求开发实现后,即提交给测试,以需求为单位进入测试周期。整个迭代有约两周的测试时间完成全部需求的测试,进入发布环节,并在当月完成发布。到下一个月,进入下一个迭代。
任务拆分
我们项目的版本周期是一个月一次迭代,迭代周期较长,每次迭代的任务量也相对比较多。因此,任务就需要进行合理的拆解,分配给不同的小伙伴。
在团队管理上,我将团队打散成多个小组,每个小组会有2-3人负责专门的几个模块,2-3个人有1个能力较强的主负责,对模块的逻辑、功能等进行深入的掌握。基于这个分工模式,在任务拆分时,我们将测试需求划拨到各个模块,由对应的小组进行承接。小组承接后,组内小伙伴可主动认领,或结合项目提交测试的时间点进行协调分配。当小组间任务出现不均衡时,再做临时协调。
不同的小组虽然主要负责的模块不同,但会要求全体成员对项目都有基本的了解,版本后期的交叉测试都会要求小组间互相交叉测试,以确保对新增特性有一定的了解。每次版本结束后的分享总结会上,也会有分享当期版本的重点需求,以确保全体成员都能对每个版本新增的重点需求有较好的掌握。
任务跟进
进入迭代周期后,项目负责人确定当期迭代需要完成的需求列表,并梳理需求的优先级,开发负责人确定各需求的开发时长后,测试负责人与开发负责人沟通确定各需求开发计划(开发启动时间、开发结束时间),确定本次迭代的提测批次和各个批次的提测时间点,进而确定测试排期,评估各个需求的预计测试时间后,完成测试计划的制定,发送测试计划。
测试计划一旦确定,开发、设计、测试均按照此时间点执行,在预定的提测时间点完成相关需求的开发、自测后,由开发负责人负责当前批次所有需求的提测,此部分需求转入测试周期。我们会有一套完整的标准,来衡量已提测的需求是否符合提测标准,对不符合提测标准的需求进行打回,并对此情况做以审计备案。
测试周期,我们会按照计划完成测试的执行。在此过程中,我们会每日早上输出当前迭代的状态,包括各需求的提测状态,是否存在延期,已经提交的需求的测试进度,当前版本的缺陷状态和缺陷分布,以及版本流程中存在的风险等。
风险控制
这里所说的风险,主要包括因开发提交测试延期造成的风险,因开发质量不好给测试进度可能带来的风险,因产品体验、需求变更等造成的风险,因与第三方相配合(接口支持、页面支持等)存在进度不可控可能存在的风险,因人力不稳定(偶尔存在人力临时借调)可能存在的风险等。
对于这些风险,我们归纳为两大类,一类是团队内部可以控制的风险,对于此类风险,我们可以通过团队内部的沟通协调实现较好的控制;另一类是与外部团队相关不太可控的风险,针对此类风险,我们就需要通过一些制度约束、风险预警等来实现风险等提前预知和把控。
针对风险预警,我们建立了一套风险预警体系,像天气预报中的预警体系一样有不同的等级,而不同的等级对应的处理方案也不尽相同,知会到的相关人员也不同。随着等级的提升,相关处理方式也随之提升,有效保证风险的可控性。
过程改进
每个迭代周期结束后,我们会对本次迭代周期的各个环节进行复盘,对当次迭代过程中的过程数据进行分析,对每日进度邮件中暴露出的问题或风险进行审计,然后提出相应的改进措施。我们将提出的改进措施先进行内部讨论,确定可执行后,与项目、产品、开发负责人等对应负责人进行沟通,各方都确认无误后,在下一迭代周期进行落地执行。落地执行过程中,对其中可能考虑不周的地方进行记录,待后续进行进一步的改进,直至最终形成规范。
我们会充分发挥团队成员的主动性,给他们创造发现问题、提出改进意见的机会,并让他们参与到改进过程中,从而让每一个人都有责任和流程改进意识。
团队管理
招聘培养
有一段时间,项目的重要性做了提升,整个状态都进入高速扩张期,开发团队持续进人,测试压力开始增大。针对这个情况,测试团队一边需要应付不断加大的测试压力,一边亟需补进新鲜血液。面对此情况,我一方面意识到需要对过往经验、积累进行提炼和有效沉淀,另一方面需要确认招聘计划。
关于招聘,我的态度是一定要在招聘环节做到严格把关,越是项目压力大,越要避免降低门槛导致后续工作出现扛不住的情况。并不能因为项目压力大,就想着先招聘一个能力一般的凑合,然后再培养。这样的做法,短期看似乎是有效的,但能力不足可能带来的测试质量的风险是不可控的,一旦出现问题,就会有更多问题暴露出来。
在能力达标的基础上,着重考察候选人的工作态度和抗压能力,以确保其在入职后能扛起项目测试带来的压力。关于工作态度,可以通过对他过往经历的考察来了解,看候选人对自己过往做的事情能否有效阐述,阐述的深度如何。
新鲜血液加入团队后,首先就是要熟悉团队工作模式,掌握团队工作方法,只有这样,才能尽快融入团队,跟上团队节奏。针对此,我们对新加入成员制定了为期一个月的培养计划。从项目流程、业务背景介绍、所在项目与其他兄弟团队的关系、项目本身的详细介绍、工作流程规范和所需掌握的工具等多方面进行传递,每个内容都有相应的配套工作需要落地,方便新成员与团队的逐步融合。另外,我们会给新人安排一个导师,协助他在这一个月融入过程,对他融入过程中的问题进行答疑解惑。这样一方面加快了新人的融入速度,另一方面也锻炼了扮演导师这个角色的小伙伴的能力。
团队提升
团队在日常工作中,除了常规的测试外,也会有包括测试方法的积累、新工具的学习、测试经验的总结等。针对这些这个需求,我们会有定期的版本总结会,以及不定期的学习分享会,使得交流学习随时可以开展。我会时常鼓励大家思考自己工作中遇到的问题和自己的解决方法,通过主动探索解决,提高自身能力。
每半年我会和团队宣讲接下来半年团队的工作重心和相关目标,对目标进行拆解,分成小的feature供团队成员可以主动认领。与此同时,我也会收集团队成员对工作和自己的诉求,我会结合成员能力阶段、自身特点与团队需要,和每个人制定自己半年的工作计划。在目标难度的选择上,既不让他们觉得难度过大,没有信心完成,也会让他们觉得完成这个目标会有能力的提升,即所谓的“跳一跳就可以够得着的目标”。
在这个目标的指引下,大家有针对性的学习和工作,进行自我能力的提升。每1-2个月,我会与每个人check计划的执行情况和遇到的困难,在确认执行进度正常的同时,帮助他们解决过程中遇到的问题。
总之,团队管理中还是有很多值得我们去思考和改进的地方。我们要善于发现问题,发现团队成员身上的闪光点和不足,去和他们一起修正,一起成长。
版权声明:本文出自51Testing会员投稿,51Testing软件测试网及相关内容提供者拥有内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。