阅读本文你将收获
1、构建效能度量体系的根本方法:GQM方法论
2、GQM 方法的核心概念与实操要点
研发降本增效,迫在眉睫
几年前,随着粗放式增长的红利见顶,降本增效成为企业内的高频词汇;近两年在疫情冲击和经济下行的背景下,更是成为不得不重视的议题。美团亦将系统性的降本增效作为 2022 年度的三个关键命题之一。
软件研发团队作为许多科技企业的成本中心,同样需要更精细化的管理来降本增效。过去高速成长期用不着关注、来不及关注的低效点,如今都已是不能承受之重。
研发团队如何在精打细算的同时,依然高效率、高质量、可靠且可持续地交付价值,支持业务侧去应对快速变化的市场?研发效能这一概念由此开始进入许多先进组织的视野。
而效能度量,是获取认知、明确提效方向的第一步。
从 2019 年推出研发效能分析平台以来,思码逸帮助众多研发团队构建起效能度量体系,服务于科学的研发管理与工程改进,也与客户、行业专家们一同沉淀了许多效能实践经验和思考。(👉点击查看往期 DevData Talks)
每个组织的效能改进,都是由其自身的特质和目的所决定,他人的实践固然有参考和学习意义,但也很难原封不动照搬。
俗话说,授人以鱼,不如授人以渔。在汇集了如此多经验之后,我们希望从中抽象出可复用的底层逻辑:什么是构建效能度量体系的根本方法?
我们接下来介绍的这套方法来自学术界,后来在学术界、产业界都得到广泛应用,被称为研发效能度量方法的『事实标准』。
构建效能度量体系的根本方法:GQM方法论
GQM(目标-问题-指标 )方法最早由 Basili 提出,发表在软件工程领域权威期刊 IEEE Transactions on Software Engineering 上。GQM 当初是为软件工程研究中的数据收集和分析而设计,其基本思想是:
- 自上而下定义,每个目标划归为一组可量化回答的问题,每个问题通过若干特定的指标来回答
- 通过提出问题,建立和表达隐式模型,解决研发难以定义数学模型的困难
- 自下而上分析解读,数据的收集和分析都服务于清晰明确的问题,进而达成定义的目标
接下来我们分别介绍目标 Goal、问题 Question、指标 Metric 这三个核心概念。
目标
目标阐述了组织对研发效能的信息需要,包含四个要素:
- 对象:研发的过程(Process)、产物(Product)和资源(Resource)中的一种;每种对象都可能存在层级结构
- 维度:目标聚焦的角度或对象的属性。参考《软件研发效能度量规范》对认知域的划分,速度、质量、价值、成本、能力都是维度
- 目的:了解(Understanding)、评价(Evaluation)、改进(Improvement)、控制(Control)和预测(Prediction)中的一种或多种
- 角色:组织中关注该目标的角色
接下来我们以一个真实案例来示意如何定义目标。
某大型组织当前面对的痛点是规模大、部门多、业务杂,无法准确评估各部门的人力负载情况,无法判断部门人力增补需求的合理性,也无法实现部门间人力调配及合理流动。
该组织当前的目标是控制项目人力成本,那么这个目标的四个要素如下:
梳理四个要素,能帮助我们用一系列标准标签来对阐述目标、拉齐共识。
问题
根据目标提出的一系列问题,主要用于刻画目标;通过提问,建立起一个在目标维度上刻画目标对象的模型。
提问环节需要注意以下两点:
- 先做加法:尽可能多地提出问题,使模型尽量全面、充分、有效,避免数据收集后才发现遗漏或者无效;完备的问题列表一方面可根据实际需要做裁剪,另一方面可提供多种模型可支持度量结果的交叉验证
- 结合实际情况:在提问环节,需要结合研发团队的实际情况与特征,补充问题的所需信息
例如,在项目人力成本的目标下,我们可以提出以下(但不限于)几个问题:
接下来就需要结合研发团队实际情况,补足模型的一些信息,使问题具备可操作性,例如:
- 如何定义人力负载的合理区间?
- 如何定义关键事务?
- 项目划分为哪几个阶段?这些阶段人力投入的典型特征是?
- 项目划分为哪几个类型?
指标
一个问题可能需要多个指标共同回答,这里可以采用技巧:先将问题转化为一个假设,然后思考要充分可靠地证实或证伪这个假设,最关键的是哪些指标,还需要哪些指标做支撑,哪些指标作为制衡。
接着前面项目人力成本的问题,我们可以提出以下(但不限于)几个指标:
在这些指标的基础上,可以根据目标中的具体目的,使用多种分析方法:
- 分类分布:将对象的组成部分分类后,进行统计分析;该方法在了解对象组成部分的场景下应用广泛
- 帕累托分析:将组成部分或影响因素的指标排序,定位影响最大或最主要的部分,常用于改进或控制
- 相关分析:运用各类统计方法找到指标间的正负相关性,常用于改进或控制
- 拟合建模:运用各类统计方法找到有效预测指标的数学模型
总结
GQM 从目标梳理,到提问建模,再到指标体系的做法,能够避免构建度量时盲目求大求全、堆砌指标、成本过高等问题,使每一个指标都是为了服务具体场景而存在,也能真正产生有价值的信息。
限于篇幅,本文仅简介了 GQM 实操要点。问题和目标的系统定义方法和范式等更深入的内容,请参考《GQM 从入门到精通》。
GQM 方法解决了从需求到度量体系的问题,然后呢?得到了数据和分析结论,研发效能就能自动提升吗?当然不是。
接下来,我们会推出另一篇内容,介绍影响图在研发效能中的应用。影响图是用于支持决策的概率模型(扩展的贝叶斯网络),可连接指标与决策,解决度量后如何分析根因、如何做出最优的改进决策的问题。