这是鼎叔的第四十六篇原创文章。
行业大牛和刚毕业的小白,都可以进来聊聊。
欢迎关注本人专栏和微信公众号《敏捷测试转型》,大量原创思考文章陆续推出。
外包团队的建设和管理虽然看着比较简单,但是实际运作时还是会感觉效率不高,经常出现一些意外问题,甚至让投资外包的公司管理层不甚满意。
而内部员工和外包,各自做哪些测试类型的分工是最合适的,有利于各自长期发展?
相关文章:聊聊技术外包的价值和团队组建 https://mp.weixin.qq.com/s?__biz=MzkzMzI3NDYzNw==&mid=2247484105&idx=1&sn=e9935a978c4f14e60bf59546fd4ed3c6&scene=21#wechat_redirect
业务快速发展时,不采用外包会阻碍发展速度,但是当内部团队对大量外包投入习以为常时,很容易成为甩手掌柜,加上质量需求的各方本着 “有人力不用白不用” 的心态,很容易必带来人员加班多且效率低下的后果。
随着外包规模合同的扩大,相关预算金额越来越大,关键角色承担的风险控制责任也会很大。
关键角色
首先我们明确外包交付项目中的几个常见核心角色,这是外包效能保证的关键:
内部(甲方)- 外包管理负责人,从甲方角度确认预算,也是合同交付的最终验收责任人,对外包团队的升级、扩大招聘、组建方案、定级和激励方案等也都有决策权。
内部(甲方)- 测试接口人,负责任务发包和效果的监督,对外部交付效能进行评价,并干预外包管理不善的情况,也可以对外包人员的绩效进行确认。为了实现敏捷外包管理的目标,测试接口人应该具备敏捷测试管理的知识,基于敏捷价值观推动外包团队的改进,而不是制造反敏捷的障碍。
外部(乙方)- 测试项目经理,负责外包内部各种管理机制的落地,提供省心服务,按甲方要求进行优化改进,及时处理资源冲突,或向上升级风险。
外部(乙方)- 测试组长,负责具体测试执行团队的内部管理,理解任务,合理分工,汇总报告,新人培养和业务培训,一线员工评价等。
外包乙方的这两个关键角色的选择非常重要,内部外包负责人/接口人要对其人选进行面试面评,确保双方在管理目标和风格上能充分协同,尤其主动性和责任心能满足交付要求,人选不合适则需要尽快更换。采用外包模式的核心目标之一就是降低内部管理成本,如果外包方关键角色不够给力,有可能出现管理成本不降反升的情况。
优秀的外包项目经理和组长,有这样一些特征:
1)理解基本的敏捷知识,能够配合甲方敏捷迭代的机制,支持一线员工获得特性团队的关键信息,采用低成本方式消除和甲方的沟通障碍。
2)管理制度完善,执行干练,主动把运营产出数据呈现给甲方。
3)遇到项目运作的麻烦,在合同约定或力所能及的范围内直接搞定,尽量让员工不因为制度僵化导致无法顺利完成任务,如手机采购不到,加班和出差批准太慢,等等。但是出现较大风险时,能主动拉甲方负责人确认解决方式。
4)未雨绸缪,储备了足够的后备人才并安排培训,甚至针对业务类型精准匹配了相关经验人员。一旦发生离职就可以迅速补上。
5)和一线执行人员以及接口人有及时沟通机制,能够及时发现对项目运作或团队管理的吐槽,能更快进行处理。
风险控制
整个外包项目运营中的风险有如下几大类,我们分别看看如何把控风险。
一、财务风险 - 预算超支。
这类风险是指尤其当业务任务需求繁重时,人员招聘猛增;或者市场合适人才有限,需要提高工资水准,导致超支。
这类风险需要梳理好业务测试的需求和工作数据,让业务方配合提出外包资源的追加需求。相对于业务高速发展的价值,增加外包预算通常是值得的(当然,前提是历史运作效率是合格的)。
另外,外包招聘是找最合适的供应商和人才,并不是越便宜越好,外包负责人可以根据面试定级、市场价格调研,高级别外包角色的必要性等,进行追加预算申请。尤其对于敏捷研发而言,一个优秀的专业测试人员大于多个只管执行的平庸测试人员。
外包项目的管理责任人,定期要回顾效能数据,结合财务花费,判断预算这些钱花得值不值,外包项目的干系人任务需求方真的关注这些产出么?不要等着管理层来做 “无情” 的裁减决策。
二、信息安全风险。
信息安全和工作便利性总是发生矛盾的,工作不便利也会导致外包效率大幅下降。从我的角度来看,只需要把控好合同红线,外包的信息权限还是应该尽量放开。基于 “信任” 来管理团队。
合同上约定的红线和公司内部信息安全红线一致即可,项目无关或工作不强相关的资源按需申请。不建议内外部采用不一样的信息安全标准。外包公司自身都有完善的客户信息安全培训,也会承担泄漏风险的追责。
应该把外包的信息安全管控精力做在外包管理 OA 系统上,比如访问权限是否有审批,下载内容是否违规,敏感报告是否按要求加密,等等。
三、人员流失风险。
外包行业的流失率通常比较高,有些项目的流失甚至达到很夸张的地步。本专题分享的效率提升经验,就是为了间接提高外包人员的稳定性。将心比心,要让外包人员工作意愿更持久,核心要素就是这几点:工作有意思,做的事有价值,能学到东西,工资有竞争力,被信任,被尊重。
反之,流失严重的典型原因就是上述要素的反模式:不被信任,不被合作方尊重,加班压榨明显,不懂的没人教,不知道做的事有啥意义,工资和能力不匹配,等等。
四、项目交付风险。
所有的严重问题最终都会导向这个风险。因为外包方的工作来自于甲方的约定,项目交付风险在很多情况下是甲方也没有想清楚的突发状况,这块需要甲方来更新项目对策,外包方积极配合执行。对于已约定好的项目进度,只要关键角色及时预警处理,并把迭代中看到的评估不足教训反馈给内部核心团队,通常不会累积更大的问题。
五、知识转移风险。
外包团队会承接他们之前没有相关经验的项目,为了确保知识转移的落地,通常的模式是甲方安排精通需求的专家来外包团队进行赋能,也有可能外包团队安排骨干去甲方或客户公司进行需求理解和测试设计。需要警惕的是,这个专家或骨干 “中间人” 不应该成为项目运作的瓶颈,他应该努力为两边建立直接沟通的联系网,让外包方的工程师和甲方协作工程师或者客户直接沟通。
内部团队和外包各自适合的测试类型
内外部测试团队协同工作,要进入一个稳定的状态。那么团队负责人需要思考清楚一个问题:内部和外包,各自做哪些测试类型的分工,是最合适的,有利于各自长期发展。
正如以前介绍测试能力时(聊聊测试工程师的核心能力模型)有提到,只有内部工程师掌握的测试技能足够丰富多彩,才能让外包测试团队逐步发展,进入价值贡献的正循环。
从过往的实际经验来看,结合核心能力的培养周期和关键职责,我们可以这样划分测试类型,仅供读者参考。
内部工程师主要负责:
业务需求和架构分析,测试方案制定和用例设计,评审把关
自动化工具选型,完善和核心的自动化覆盖
白盒/精准测试
安全/服务端性能等专项测试
测试技术预研项目
质量改进方案
外包工程师主要负责:
测试执行,测试用例完善,基础测试报告
方案成熟的自动化测试覆盖,性能测试任务
探索式测试,组织众包测试
线上反馈问题分析,缺陷初步分析等
当然,这个让内部工程师聚焦核心工作的分工指南不是一层不变的,永远不要约束个人的专业贡献意愿,有些外包成员在专项领域的沉淀是远超内部人员的。这里更要强调的是,如果不是彻底的项目外包,内部工程师一定要把控好核心交付方案,并持续聚焦深度能力或者新能力。一旦这个能力实操过程的成熟度适合普及,那么外包团队就可以迅速承接。
另外,上面的所有分工都需要是独立输出交付结果的,执行过程不要让内外部一线员工之间形成彼此的交付依赖,不便于各自考核和感知低效。
鼓励外包的专业提升
在以往的真实实践中,外包团队承接更丰富的任务,在自我提升的同时也经常会带来惊喜,管理人员也会公开鼓励这些成果。以下这些值得表彰的例子可供大家参考:
外包人员参加需求澄清会,把测试设计思维导图转化为完整用例,并通过实践完善用例集,提交大量用例优化建议。
通过对灰度和线上缺陷的初步分析,给出缺陷类型和主要的漏测原因。
独立承接固化场景和稳定方法的性能测试和,基础的接口测试。
补充和维护基础的 UI 自动化用例集,并积极试用最新的低代码 UI 自动化或智能 UI 自动化平台,降低编写成本的同时推动了新平台在的公司的普及。
参与内部测试探索项目,外包人员分为两组做效果循证尝试,对比采用和不采用新方案的量化收益,量化分析后得出结论。鼎叔曾借此模式在业务部门落地了缺陷大扫除、探索式测试、代码覆盖率测试、AB 体验测试等多种新技术方案。