子产品 Insight 的发布,标志着 PingCode 正式进入数据化时代。自此,PingCode 在自动化、数据化、智能化的道路上又迈出坚实一步。
在数字化的时代,研发效能已经成为一家科技公司的核心竞争力。
在软件研发领域,效能提升的方法论和实践一直在快速发展。比如,我们熟知的敏捷开发方法已经诞生了二十年,DevOps 也已经发展了十多年,在很多行业、很多企业都对其进行了引入和落地。
但是,我们经常遇到的一种现象是:
当一个组织/团队在消耗了大量的"变革"时间、花费了大量的人力和资金后,却无法有效回答一些看似非常基本的问题。比如:
“我们的研发效能到底怎么样?可否量化?”
“我们比所在行业平均水平如何?我们的研发能力跟同行相比更好还是更差?”
“研发效能的瓶颈点和问题是什么?”
“在采纳了敏捷或 DevOps 实践之后,有没有效果?有没有实质上的提升?”
“我们接下来提升的方向在哪?如何实现持续改进?”
这就是为什么我们希望进行研发效能度量。
研发效能度量的目标是让效能可量化、可分析、可提升,通过数据驱动的方式更加理性地评估和持续改进,而不要总是凭直觉感性地说出“我觉得..."。
研发效能度量的出发点虽然很好,但是如何正确度量却是一个有难度的技术活儿。
研发效能度量要成功落地需要一个相对完善的体系,其中包含数据采集、度量指标设计、度量模型构建等多个方面。而实际情况是,大家都面临着数据的采集过程复杂成本高、缺乏系统性的思考与设计、偏离了效能度量的正确方向等难题。
而今天,PingCode 效能度量子产品 Insight 正式发布。
自此,PingCode 将帮助企业构建自动采集研发全生命周期效能数据的能力、建立起效能度量和改进的 MARI 闭环,降低度量成本,以开箱即用的方式促进研发效能度量的成功落地。
01构建自动采集 研发全生命周期效能数据的能力
团队在软件研发中会使用各种各样的工具,而这些工具之间往往相互割裂,造成原始效能数据分散。
所以团队如果要度量效能,就需要从系统中导出数据到 Excel 表格,然后进行各种筛选、关联、透视和加工,最终形成度量报表。
但这一过程不仅提高了度量成本,同时还可能由于大量的人工干预行为导致数据的失真。
PingCode 产品矩阵覆盖了研发管理全生命周期,子产品中产生的过程数据将会自动收集到 Insight 中,并加以提炼形成企业度量所需的各种实时数据报表。
同时 PingCode 还将提供 Marketplace 和 REST API,帮助研发团队把其他工具中的数据收集到 PingCode,这些数据将和 PingCode 自身产品中产生的数据加以汇总融合,从而提供更多维度的效能度量数据。
02建立效能度量和改进的 MARI 闭环
2.1设计效能度量指标体系
整个研发管理链条中,本质上是两条工作流。
一条是管理侧以需求特性的全生命周期为核心的需求价值流,涵盖需求收集、规划、开发、测试到上线环节;
一条是工程侧以代码提交为线索的研发工作流,涵盖启动开发、开发中、开发完成、持续集成、持续部署到线上发布环节。
这就要求我们在效能度量的指标体系设计中,充分考虑这两条流之间信息的流转与状态的同步,从而设计出一套覆盖端到端交付的效能度量体系。
根据效能度量的目标,为了帮助企业/组织获得高效率、高质量的持续交付有效业务价值的能力,PingCode Insight 设计了如下三个效能度量指标体系:
交付效率:目标是促进端到端及早的交付,用最短的时间顺畅地交付用户价值;
交付质量:目标是促进端到端高质量交付,避免不必要的错误故障和返工;
交付能力:目标是建设卓越的工程能力,实现持续交付;
实现了端到端交付的效能度量体系的覆盖。
Insight 中非常丰富的度量报表:
2.2建立效能度量分析模型
效能度量分析模型是我们效能分析过程中,由于不同的项目类型或者是改进需求而产生的指标数据组合形式。
也就是说,我们可能有非常多的指标数据,但出于不同的分析目的,会选取的数据指标也不一样。比如燃尽图、速率图、标准差吞吐量、累积流程图、控制图、在制品限制图,几个指标组合在一起就是一个常用进度评估模型。
通过这个模型我们可以获取背景信息和上下文,知道任务何时完成,预测问题,对问题复盘与回顾。
用户借助 PingCode Insight 可以非常便捷搭建和使用各种效能度量分析模型。Insight 中的效能度量报表都以效能仪表盘的形式展示,每个团队都可以根据不同的分析需求来搭建分析模型,并将该仪表盘保存以达到开箱即用的效果。
同时在每个效能仪表盘上支持添加不同的指标分析,也可以针对每个效能仪表盘设定不同的可见性权限,以满足团队不同角色所关注的效能度量指标。
2.3回顾与改进
当通过上面建立的不同指标模型,分析诊断出问题后,将进入到MARI 闭环中最核心的一环——改进。
因为度量不能仅仅停留在数字层面,而是需要在层层深入挖掘出根本原因后,使度量带动思考和行动,建立持续改进的闭环。
大部分团队在这一阶段经常遇到的问题是:大家都知道了问题在哪,也制定了改进目标/措施,但并没有人员去负责监督改进的结果,最后只流于形式。
PingCode 的产品矩阵能够有效帮助企业实现效能改进的闭环管理:
Insight 实现效能的度量和分析;
得出的改进措施借助 PingCode Project 中的安排专人负责、跟踪进度,从而让每一个改进措施都有结果。
随着度量体系逐渐成熟,企业/效能委员会可能会把重心放到效能分析和效能提升的实践分享上来,从而在公司内发挥更大价值。在这一阶段 PingCode Wiki 能够帮助他们形成效能度量指导手册、效能提升案例库和专项解决方案知识库,沉淀过程资产,让效能的度量、改进和提升成为日常工作的一部分。
03通过自动化 流程规范化降低度量带来的额外成本
研发效能的度量不是免费的,为了做到准确、有效的度量,各种成本加在一起很高。
比如我们经常会去度量团队的需求交付周期及其在设计、开发、测试、部署等每个阶段的时间消耗和占比。这样一个看似简单的度量需求,其实背后要做很多事情。
度量的准确性依赖流程的规范性,需要明确研发流程、制定相应规范,并确保相关的活动都在系统中进行及时、完整的记录。
为了能在减少研发中各角色时间和精力投入的基础上,提升效能度量的准确性,我们可以借助PingCode 产品矩阵的能力加以实现。比如:
PingCode Flow 自动化的能力减少工程师繁琐的重复性和事务性手动操作,如在多个子产品之间进行状态更新同步等,从而自动完成状态的流转和信息的同步。
PingCode Project 、PingCode Testhub、PingCode Ship 搭建出一套标准化、规范化的研发工作流,并加以固化;
PingCode Wiki 制定和沉淀企业内的技术规范和流程制度;
通过自动化的状态流转以及标准化的工作流搭建,系统中研发过程数据得以更为准确的记录,也在较低成本的情况下给度量提供了有效的研发基础数据。