虽然随着敏捷的推广和测试左移的实行,很多测试人员已经更多和开发人员融合到一个团队,但大部分的软件企业,通常还是会独立设立一个专门的测试部门或软件质量部门。
那么管理这样一个独立的软件测试团队,我们通常要从哪些方面着手?当然团队管理,各种类型团队其实有很大共性,但针对测试这个职能,也会反映出一些自身的特点。本文将从以下几个方面进行探讨。
建立规范
任何团队,要形成战斗力,必要的规章制度和流程是必不可少的。
这其中既包含一些管理规范和制度,如:
- 奖惩规范
- 考勤规范
- 培训规范
- 工作汇报制度 等等…
也包括制定一些和测试职能本身相关的技术规范和模板要求,如:
- 测试计划
- 测试方案
- 测试用例
- 测试执行
- 测试报告
- 故障管理
- 环境管理
- 对外测试
- 资产管理
- 质量分析 等等…
当然也包括和测试相关的流程梳理,如:
- 缺陷处理流程
- 测试准入准出(提测、发布流程)
- 质量分析流程 等等…
规范和流程的梳理、制定,是部门工作的基础。但规范的形成和完善不是一朝一夕达成的,而是在日常管理和团队协作中逐渐沉淀形成的团队共识,是有形的行为指导。
打造能力
一个团队是否成功,战斗力如何,是由团队能力决定的。
而针对测试团队,如何建设这种能力呢?
测试行业参照 CMMI 模型,提出过 TMMI 模型:
初始级 默认起始级别,组织还没有相关的测试能力,测试工作粗放随意,没有单独的测试环节。
已管理 测试工作是专门职能,有了基本的测试规范如方针、策略、计划、方案、设计、执行等等 还有像测试环境,会有单独的测试环境完成测试工作而不是在开发环境中进行相关的验证。
已定义 到这个级别一般才代表组织在测试工作中达到了基本的成熟度。 它典型的特点就是有了专门的测试组织、通过测试团队来负责测试工作的组织和实施。 除了基本的功能测试外,这个级别下会针对各种非功能测试建立相关能力,包括性能测试、兼容性测试、易用性测试、可靠性测试、无障碍测试等等丰富的测试类型。还有会重点进行面向质量的同行评审
已度量 可以对测试工作的成效从多个维度通过相关的度量指标和数据进行量化,能比较准确反映测试工作做得如何。
已优化 可以做到不断地自我更新和持续优化。通过全流程的质量控制和前期分析手段,做到缺陷预防。
除了这种业界标准,针对测试团队的能力建设,我总结下来,还可以从以下四方面重点打造:
- 业务测试能力: 团队立身之本,发现问题的能力
- 快速测试能力: 提升效率,建立成本优势,及时建立质量信心
- 质量评估能力: 对质量的准确度量和监控
- 快速响应能力: 对质量问题和风险的快速反应
做好团队的能力建设,是建立团队护城河的根本。
绩效度量
人在职场,努力工作说到底还是为了个人的更好发展,获取当下或长期的长远利益。趋利避害,人之常情。
而团队管理,针对绩效的度量,其实本质就是以绩效为锚,管理好利益的分配,驱动团队整体目标的达成。
现在企业中比较常用的绩效管理框架,主要有两种:
- KPI: 关键绩效指标
- OKR:目标与关键结果
KPI 属于结果导向,重点关注一些可量化的关键定量指标 OKR 则是目标驱动,围绕目标展开,虽然它的关键结果通常也是定量的,但关注的更多还是达成目标的路径。
而不管是 KPI 还是 OKR,团队针对绩效的管理,离不开各种绩效量化指标的制定。
以一个测试团队来说,相关的指标主要又可以从三个不同维度来看:
质量维度
测试团队面向质量,所以衡量绩效离不开对质量的评估。常用的一些关键指标比如:
- 需求覆盖率
- 故障泄露率
- 提测打回率
- 发布成功率…. 等等
效率维度
测试部门作为成本部门,完成质量评估的效率直接影响发布节奏,也是产品成本中的重要构成。 因此测试部门的管理,必然会包含对工作效率的相关指标,常用指标如:
- 测试周期
- 自动化覆盖率
- CI 成功率
- 发布效率
- 响应效率 … 等等
成长维度
除了上面反映部门本身目标的维度之外,任何团队离不开团队成员的逐渐成长和成熟,因此面向个人和团队成长的指标也是团队管理的重要维度,常用指标如:
- 知识分享、培训
- 技术创新、流程改进、工具开发
- 学习总结、活动组织 … 等等
从以上不同维度,我们在团队管理时,可以结合团队现状,细分出多种更详细的细分指标,并结合绩效数据的采集和分析技术,完成科学的度量。并进而和如加薪、奖金、职级等直接利益挂钩。
团队协作
测试团队作为一个以测试职能为主的集体,同时也是和软件产品研发其他职能如开发、运维等需要充分合作的团队,测试团队管理中另一个重要的部分就是面向团队协作的管理。
协作离不开沟通,这里可以充分利用我前面文章如【】中介绍的乔哈里窗沟通模型,或者【】中的冲突模型作为沟通协作的辅助工具。
而站在测试团队这个视角,其实团队协作我们也可以从四个维度来考虑:
内部协作
这里主要是要根据不同成员的能力和性格特质,合理地做好工作安排,人尽其才,互利互赢。
平级部门协作
平级部门间的协作,包括和开发团队、运维团队、产品团队等的合作。重在以双赢互利思想处理和平级团队的合作,尽可能做到求同存异,完善流程,安排好接口,并在产生争议冲突时维护好团队利益。
向上协作
和上级领导或上级部门的沟通协作,是任何中层必须做好的功课。同样,不同性格特质的领导会有不同的沟通技巧和沟通方式。做好向上管理,为团队良性发展赢得空间。
总之,在企业中,一个优秀的中层,应该是一个 “上能承压、下能服众、平级能协(si)作(bi)”的Leader。
对外协作
除了企业内部的这些协作,测试团队其实也是一个比较会经常面向外部关系的部门,比如外包、售后支持、对外测试等等场景。
这类协作中,团队管理要明确职权和责任范围,作为企业的代表还应维护好企业形象和利益,并维系好和外部组织的关系和建立信任。
团队文化
最后,任何团队,如果要长期稳定和良性发展,离不开团队文化的加持。
流程、规范、制度是有形的,重在告诉大家如何正确地做事,行为是被动的。
而团队文化形成后,大家会自觉地按共同的价值观去做事,行为是主动的。
文化的形成是长期的,团队管理者是文化形成的关键,一以贯之,“念念不忘,必有回响”。
以上,就是本人关于测试团队管理五个重点维度的总体说明。 对于相关细节感兴趣的朋友,也可以关注我的测试技能系统提升课程中的管理部分,有关于这五个维度和实施的详细分析。回复 大纲
可查看课程详细目录。