利用云效度量功能进行质量运营和效率驱动提升

简介: 度量功能通过沉淀研发各个环节数据,透明企业研发健康状况,帮助组织团队对效能瓶颈进行诊断,并结合研发实践流程进行改进,用数据驱动企业提效。
作者简介:张冠楠,阿里巴巴技术专家,负责过阿里巴巴集团运维系统、研发中台系统以及阿里云持续发布系统的质量保障工作,致力于如何保障研发团队产品质量,同时提升研发团队的研发效率。在质量保障体系建设、持续集成领域、敏捷实践领域和研发效能领域方面均有研究。

【前言】

先表示感谢和敬意:本文中所有数据都来自云效度量数据功能页面截图(部分数据功能云效暂未开放给所有用户,所以截图会有些许区别)。我会在本文就各种具有关键表征的数据进行介绍,但是详细数据包括您的研发团队的数据,还是需要您亲自访问云效公有云度量功能页面。 我是传送门:https://rdc.aliyun.com/my/metric
这个推导我深信不疑: 团队效率高,质量好 - 》 数据表征好
于是我也是充分的利用了云效公有云度量功能,加之以偷师学来的敏捷部分方法指导,实践于某事业部几十号人的团队,3月有余,所沉淀下来的一些asset,以及取得的成果,希望能有一些借鉴意义给到大家。

29c94a6ff9902dd5be6ca55c85cd50fee5a2fc03
度量功能通过沉淀研发各个环节数据,透明企业研发健康状况,帮助组织团队对效能瓶颈进行诊断,并结合研发实践流程进行改进,用数据驱动企业提效。下面我跟踪张冠楠一起看看她是怎样做利用云效度量功能,帮助研发团队进行质量运营和效率驱动提升?

下图是一个某研发团队近半年的数据,您看到这三张图尤其是框了红色的部分,会得到什么样的信息呢?大家可以先看一下然后再往下面去看我对这些数据的认识。
0f0ace45-42f8-40cb-ae1c-79491f1c03bb.jpg

根据上面这三张图的数据,我们可以得到的关于这个团队的信息是: 
(1)3月份完成的需求数量是最多的,比其它最高的月份也要高40%左右。 
(2)3月份的缺陷数也是各个月份最高的。 
(3)3月份线上发布的成功率是最低的。 结合3月份这个对于我们阿里很特别的日子,我们可以大胆做一些推测:这个月份我们研发人员的负载其实是相当重的,大家可能会去赶工完成更多的工作(需求),赶工干活可能引起的副作用就是质量上的下滑,增多了很多的缺陷数和下降了不少的发布成功率也是印证了这一点。

so数据是会说话的,那我们该怎么去听它说话呢?如果你觉得,哎呦,这个挺有意思,那么,就让我带着你走一遍如何利用云效上的这些研发数据,去了解团队现状、发现团队中可能存在的问题、再结合团队具体实际情况去做调整和改进,从而达到提升团队整体效率和质量的目标。

【数据展现】

先直接给大家数据,我是4月份开始进入这个团队的。大家重点看这个团队3月份的数据:
06102ce6-5c59-45ed-ab10-310e4b7e8565.jpg
ef40e549-72b4-4c65-bc06-25a6fc8ce83e.jpg
【问题分析】

上面几张图比较容易看出来,其实跟引子里面提到的情况差不多,这个团队明显特征是 
(1)3月份完成需求数明显上升,且团队负载较重 
(2)质量不高 - 缺陷数、reopen率以及线上发布成功率 
(3)需求平均完成时长特别长 ,很多需求都是很久之前的3月份才完成 
(4)突增故障
于是我们带着数据暴漏出来的这几个问题走进了团队,和团队一线研发人员、PD、TL都进行了沟通,并把数据展现给他们和大家一起去分析数字背后的意义,大家比较快的达成了一致,发现团队存在的主要问题是: 
(1)需求deliver传统瀑布模型,要1个半到2个月去完成一个特别大的需求,最后却和用户期望偏差较大,数据表征上就是之前需求数量较少,3月份突然完成了很多而且时间很长的需求。 
(2)大家加班加点的干活,负载较重,引入的缺陷也较多,PD和用户不满意带来的修改又会加重工作量,如此恶性循环。 
(3)缺陷重视度不高,管理不规范,优先级划分不清楚,甚至残留重要缺陷留在bug列表里面未解决而流到了线上引发故障。
上面三点相当于形成了个闭环,恶性循环,其结果就是,越做越多,越多越错,越错越改,越改越多。


【解决方案落地和数据运营】

发现了大家的问题之后,有针对性的进行解决和落地就相对容易,给到团队的解决方案是: 
(1)需求细化,拆分成最小可交付产出,尽量避免一个需求做了1个多月才去和PD和用户验收。 
(2)随时拥抱用户,迭代式产出,交付即验收,让不准确性降到最低,在错误误差最小的时候修正。
(3)重点跟进质量管理和运营,透明数据,鼓励团队尽早尽快修复bug,并有严格的上线前bug解决率标准。 
(4)尽最大力量保证线上发布成功率。

同时辅助于团队的决策,我们进行定期的数据运营,每周都会去统计和分析数据,包括质量和效率相关的,确保我们能在第一时间发现问题,纠正偏差,所以我这边在整个3个多月的过程中,重点关注了如下的数据,这些数据都在云效上可以得到,云效还包括别的较为丰富的数据,期间如果别的数据反应或者暴漏了问题,我也会纳入进来进行整体分析,关于这些数据的解读和分析,其内容也比较深入,可以专门开一篇文章来讲了,我这里只做简单的概括性介绍:
 (1)需求的吞吐量 - 团队指定时间段内完成的需求数,可大体反应出团队的产出趋势。
 (2)需求的平均完成时长 - 需求从创建到终态的平均时长,时间越多,需求交付粒度越小效率越高。 
 (3)新增缺陷的数量 - 统计时间段内团队被新增指派的缺陷数量,结合存量缺陷以及缺陷平均解决时长,反应团队产品的质量以及对于缺陷解决的效率。   (4)缺陷的平均解决时长 - 缺陷从创建到解决的平均时长,表征解决缺陷的效率。 
(5)线上发布的成功率 - 线上发布成功次数与总次数之比,越高证明产品上线质量越高。 
(6)缺陷的reopen率 - 缺陷被reopen的次数与缺陷数目之比,该值越高证明修复缺陷的质量越差,reopen率是表征产品质量的一个重要指标。


【结果分析和总结】

大家回到上面的6张图以及下面的一张缺陷解决时间图,我们3月底进入,重点看从4月份开始的数据: 
(1)团队的负载得到了控制,需求的完成数下降了,后续3个月保持一个相对平稳的状态。 
(2)需求细化拆分后,交付的时长下降了,团队以更快的速率去和用户交付需求。 
(3)缺陷的数量下降,reopen率下降,线上发布成功率上升 - 质量上在好转。 
(4)缺陷的平均解决时间明显上升,团队更快的交付,更快的反馈问题,更快的解决问题。
6645e67a-1e6f-4653-b16c-f9adf1732b7d.jpg
总体而言,就是需求交付的快,得到的反馈快,修正错误/缺陷的成本低,缺陷也会慢慢收敛,质量也会随之提升,缺陷修复的也快了,这就是一个良性循环,概括总计就是:效率提高了,质量也保证了。团队的人干活也是更加努力啦!~


【进一步提升】

根据对需求数量以及平均完成时长的数据显示,团队还是有上升空间的,对于需求的交付粒度和速率上,还是略显波动,要想更快的知道我们做的是否是用户需要的,就要快速的、迭代式的交付需求,以免用户想要个车,我们给他了个4个轮子。所以能否彻底解决此团队需求的交付和用户期望偏差的问题,还是需要再向前走一步,需求继续细化,提升交付速率。 - 参见敏捷中推荐的,快速迭代,快速交付,快速得到用户反馈,只为了更快更准确。

【总结】

数据有魅力,研发数据也一样,我们使用它就是为了两个目的:一是保证质量;二是确保交付的速率。行走过程中深度使用了云效度量新功能,结合敏捷中部分理念,配合传统测试方式保障,来助力研发团队。
可能有的人会质疑,说用这么冰冷冷的数字的数字去衡量我们可爱的程序员哥哥吗? 我的回答是:这不是衡量,数据只是手段,是帮助我们去诊断团队的一个切实有效的手段。学会利用它并驾驭它。因此只需要我们:
关注数据,读懂数据
重点问题,重点解决,优先解决,一段时间只关注一个或很少的几个问题
相信团队的自驱能力,同时结合TL的管理与激励,养成良好的团队建设力

【最后】

研发团队那点事,每天打交道最多的就是需求、缺陷、代码、发布、应用、测试等等,这些和我们研发人员息息相关的数据,云效所拥有的,现在以研发大盘、团队空间、人员效能、质量分布等多种维度整合到了数据平台上,后续更会以定制化的方式满足研发团队对于研发数据的需求。利用好这个工具,能帮助我们清晰的了解团队的现状,暴漏问题,找到改进措施,去提升团队效率和产品质量。
我是一个敏捷爱好者,在深入研发团队做测试以及质量管理时候,也是吸取和借鉴了敏捷的部分思想去落地,我的感受是:拿最切实有用的来,比如站会,比如看板,比如快速迭代式交付需求,再加上数据辅助,都是能切实帮助到团队更快、更准确的交付高质量产品的手段。

【最后的最后】

絮絮叨叨说了很多,最后贴几张我在度量上截的某研发团队的数据展示,这个团队是我们最近接触的团队,通过数据我们对这个团队的推测是:团队在质量上需要提升,在缺陷的管理上需要加强。首先团队缺陷的数量逐月上升,这已经是质量不好的趋势体现,另外缺陷的解决时间也没有加快,这样会导致越来越多的缺陷流到线上去,可见团队除去1月份无故障,后续几个月都有故障。而且这个团队的线上发布成功率持续走低,开发对自己上线的代码把控程度较低。 所以,找到这些数据表征的背后原因,并且着手去解决掉,是这个团队近期最迫切的事情了。
01a2821c-09c2-46ff-a3ff-2acd946a6e9d.jpg

养成良好的研发习惯,保持高效的团队协作,应该作为每个研发同学持之以恒的追求。

相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
SVN版本控制系统
SVN是现在软件开发之中的主流软件版本控制工具,在工作之中利用SVN可以有效的解决多人开发的代码管理问题,本课程将为读者讲解SVN服务器的配置以及基于MyEclipse的SVN客户端插件的配置与使用,并且在讲解之中着重讲解了冲突的产生于解决。
相关文章
|
2月前
|
敏捷开发 测试技术 持续交付
云效产品使用常见问题之统计功能开启失败如何解决
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
2月前
|
运维 Devops 测试技术
云效产品使用报错问题之云效度量的缺陷累积流图,缺陷的“已完成”这条线未更新,如何解决
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
|
29天前
|
敏捷开发 缓存 测试技术
阿里云云效产品使用问题之购买高级版云效后,该怎么运营
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
8天前
|
敏捷开发 弹性计算 测试技术
阿里云云效产品使用合集之应用模板功能如何用于之前已创建的项目的关联
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
2月前
|
敏捷开发 测试技术 持续交付
云效产品使用常见问题之企业钉钉解散后,不知道云效功能是否可以正常使用如何解决
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
2月前
|
人工智能 运维 Devops
云效流水线智能排查功能实测:AI赋能DevOps,精准定位与高效修复实战评测
云效持续集成流水线Flow是阿里云提供的企业级CICD工具,免费且注册即用。它具备高可用性、免运维、深度集成阿里云服务、多样化发布策略及丰富的企业级特性。产品亮点包括智能排查功能,能快速定位问题,提高问题解决效率。云效Flow支持一站式DevOps流程,适用于各种规模的企业,助力实现高效、高质量的软件交付。现在即可免费试用,体验智能CICD解决方案。
|
2月前
|
Kubernetes 持续交付 云计算
云效是一个强大的云计算平台,提供了许多高级功能和工具
云效是一个强大的云计算平台,提供了许多高级功能和工具
57 2
|
2月前
|
运维 Devops 专有云
云效需求评审功能上线!无需拉会,线上就能评!
云效上线了需求评审功能,无需拉会,即可在线发起需求评审。评审的建议也可记录存档,供产品经理参考和修改。
383 1
|
11月前
云效中我们的项目组成员无法看到工时这个功能模块
云效中我们的项目组成员无法看到工时这个功能模块,请问是什么原因,在哪里配置呀?
80 1
|
弹性计算 Cloud Native Java
试用云效全家桶,其中代码持续集成功能深得我心,在这里简单评测一下该功能
试用云效全家桶,其中代码持续集成功能深得我心,在这里简单评测一下该功能

热门文章

最新文章