如何用增长的思维做提效?

简介: 埋点作为记录用户行为的常规手段,伴随着前端技术的发展早已历经春秋,不过直到“增长黑客”系列理论出现,才真正让埋点分析变得内涵丰富且有章可循。

image.png

作者 | 金戟
来源 | 阿里技术公众号

埋点作为记录用户行为的常规手段,伴随着前端技术的发展早已历经春秋,不过直到“增长黑客”系列理论出现,才真正让埋点分析变得内涵丰富且有章可循。

与产品领域的“增长”类似,“提效”一直是研发领域里长盛不衰的主旋律。在软件研发过程中,伴随着项目开展,同样会以事件的形式记录下许多与代码库、流水线、任务相关的行为数据。这些数据的来源虽与页面埋点不尽相同,其实质用途却有许多可类比之处。然而当产品经理们纷纷开始通过埋点的实时数据争分夺秒调整市场营销策略时,研发团队的TL和PM们依然只能使用统计方法+汇总指标为主导的事后分析手段,在每个版本和迭代完成后对团队效能进行回顾和评估,并乐此不疲地谈论如何将迭代周期从一个月缩短到两周,从而获得“更快的反馈”。

本文将讨论一种尚未被实践过的方法论,即能否将“增长黑客”理论作用到研发过程的改进上,从而实现更可靠的定向效能优化?

一 研发团队的北极星指标

在进行增长目标制定之前,团队往往需要先确定一项能够反映团队成功情况且易观测的“北极星指标”,譬如销售额、签单率、活跃用户数等等。对于研发团队来说,关键的指标主要是需求完成时长、功能缺陷率、用户满意度,诸如此类。以“需求完成时长”为例,这是一个相对客观且直接反映开发团队响应用户需求速度的指标,即一个需求从提出到最终交付可用,所需要经历的平均时间长度。

接下来我们定义一个相对理想的需求交付过程,并参考产品流量分析的“转化漏斗”结构表示出来:

image.png

相应的,将项目中的所有需求都添加进来,可以绘制出类似这样的“需求交付路径图”(示例,实际阶段划分应该更丰富):

image.png

虽然略显粗糙,但通过这种展现方式我们确实能够追回不少在往常只统计结果数据的图表里丢失了的信息。譬如同样是两个花10天完成的需求,一个开发用了7天,另一个开发只用了1天,其余时间花在了等待测试上,它们的差异在交付路径图上就能被清晰的区分出来。

这样做的另几项好处包括:

  • 即使一个需要还未最终交付,而是被阻滞在了某个环节、或者出现了返工,也能够在第一时间以异常流量的形式显著的展现在路径图上,从而及时引起TL和PM的关注。

image.png

  • 不但能直观的看出总体的各阶段交付进展情况,也能从单个需求角度查看流经的每个节点,并找到其他情况类似的需求,便于分析它们的共性特征。
  • 用于事后分析时,可做交付结果的反向追溯,譬如查阅未按时交付的需求流经此前各节点的比例。

基于以上参照,我们可以得出以研发需求价值转化的“效能黑客”模型(对应增长黑客的AARRR模型):

image.png

image.png

有了北极星指标和可视化的路径,接下来的关键在于用数据指导效能改进。

二 时间轴上的AB测试

并非所有客户都值得投入大量力气来维系,增长团队总是优先专注于高价值客户的留存。在进行效能改进时也应当首先识别差异,然后因材施教。

正如增长团队常用的“RFM模型”客户分类方法,针对研发需求,同样可以通过与效能相关的正交维度来分类出可采用不同应对措施的需求集合,譬如“RIW模型”:

  • A(Activity)需求的近期活跃度(相关事件频率)
  • I(Importance)需求的重要程度(优先级、距离计划完成的剩余时间)
  • W(Workload)需求关联的已投入开发工作量(譬如代码修改行数)

image.png
image.png

三个维度能将所有样本分为8组,这个粒度非常适合圈定重点,同时又避免信息太多过度发散。而选择以上三组属性,不仅是因为它们具备较高区分度,还因为这几项指标的观测值都较容易获得且能够高频更新,从而在研发过程中及时发现异常样本并进行纠偏。

软件研发是一项脑力劳动为主的活动,影响研发效能的因素包括且不限于开发者的个人能力、团队氛围、公司文化、项目进度压力、成员间的默契度、外部沟通成本、相关流程工具等等,其中绝大部分都是无法简单用数值化衡量的主观成分。虽然以往提及研发提效时,我们会出于技术可控的角度,着重谈论平台能力、研发流程、工具支持等“疗程短,见效快”的方法,但真实世界的研发提效手段要丰富得多。既可以采用技术工程手段,如提升构建速度、简化上线流程、改进发布工具;也可以采用组织文化手段,譬如优化奖惩策略、树立先进标杆、调整人力结构、提升员工福利、加强技能培训等等。那么究竟哪种提效方法才最适合研发团队呢?

对此,增长理论早就给出了答案,不论黑白猫,只要抓住老鼠就是好猫:做个AB测试。

与面向产品用户的AB测试不同,进行项目研发时,不能直接以单个需求为粒度进行AB测试(不便于项目管理),相比之下,团队或者迭代都是比较合适的AB粒度。具体的AB方法大家一点也会不陌生,譬如让两个项目团队采取不同的提效策略,对比效果,类似于“试点”和“样板间”。或者让同一个团队在不同的迭代里分别尝试一些新的提效方法,然后根据效果来决定保留或放弃,这就是在“时间轴上做的AB测试”。

喏,一个新概念就这么被创造出来了,不过现在还保持清醒着的读者很快就会发现,这也不是什么新鲜的主意,迭代回顾和改进会议不就是做这事情的嘛!其实不尽然。以往迭代回顾时的可分析数据主要是迭代燃尽图和需求/缺陷累积图,反映的是整体的趋势情况,“整体均值”往往会掩盖局部问题,这是达不到“AB测试”严谨性要求的。而前述的“需求转化路径”和“RIW分布”情况恰好能够弥补上迭代过程细节,为效能改进的方法提供指导依据。

三 舶来主义的局限

在许多方面,通过埋点分析增长策略与通过研发事件分析提效策略之间确有共通之处,譬如埋点的四大要素:

image.png

此四项要素研发事件皆有,因而但凡埋点可用之方案,研发事件皆可套。这是舶来主义。

然而增长关注的是固定的一群用户,追求拉新留存;提效面对的是日新月异的需求,追求按时交付。由于两者的分析对象和目标不同,本质上依然存在差别:

  • 用户离开了又会回来,可以持续追踪;需求完成就结束了,下次进来的是新需求。这也是需求不适合做为AB测试粒度的原因。
  • 拉新和留存可以越高越好,不设上限;交付效率不能单方面过度苛求,否则以牺牲质量和疲劳战术换取“提效”终将得不偿失。
  • 页面路径相对固定,譬如必须先经过下单页才能进入付款页;需求路径则不一定,譬如一个“开发超期”的任务最终依然可能“按时交付”。

此外,埋点记录的页面点击总是实时准确的,而需求的状态依赖人工更新,实际操作未必及时,采集的事件数据因此经常存在时间偏差,这是研发数据分析的一项老大难问题。更充分的自动化是一种解决思路,譬如在阿里云·云效的新版协作产品中,支持通过规则让研发行为与任务更新关联(比如代码提交触发任务开始、流水线发布触发任务完成等),此举将十分有助于增加效能分析的准确度。

最终,即便是模式化的借鉴,是否有效还需要实践来证明。

四 畅想与小结

增长和提效,两个看似风马牛不相及的主题,由于一个脑洞,被联系到了一起。

用产品思路运营技术团队,用埋点数据还原研发过程,用转化路径洞察关键瓶颈。效能黑客,让项目进度更客观,让研发过程更透明。

原文链接
本文为阿里云原创内容,未经允许不得转载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/513204.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ajax返回list前台遍历_List、set集合接口分析

一、List接口详解1、List接口有三个实现类,ArrayList、LinkedList、Vector2、三个实现类的异同点:(1)ArrayList: 作为list接口的主要实现类;线程不安全,效率高;底层使用Object[]存储&#xff08…

聚焦 | 数据湖分析如何面向对象存储OSS进行优化?

简介: 最佳实践,以DLA为例子。DLA致力于帮助客户构建低成本、简单易用、弹性的数据平台,比传统Hadoop至少节约50%的成本。其中DLA Meta支持云上15种数据数据源(OSS、HDFS、DB、DW)的统一视图,引入多租户、元…

如何把极坐标化为直角坐标_2019高考100题之063(极坐标)

分析&#xff1a;如果你对过原点的直线的参数方程(xtcosθ&#xff0c;ytsinθ(参数t∈R))理解透彻了&#xff0c;那么极坐标也就没有任何问题了&#xff0c;特别是对于ρ<0的理解&#xff0c;就和t<0类似.教材上说了不作特殊说明&#xff0c;ρ都是大于零的&#xff0c;…

c语言队列作用,队列(C语言)

一、定义一种可以实现“先进先出”的存储结构。二、分类1、链式队列&#xff1a;用链表实现。2、静态队列&#xff1a;用数组实现。静态队列通常都必须是循环队列。3、循环队列(1)循环队列需要几个参数来确定&#xff1f;需要2个参数来确定&#xff1a;front、rear(2)循环队列各…

2021银行共探转型新动能:大行酝酿质变 小行跨越数字鸿沟

2021年&#xff0c;我国“十四五”规划开篇启程&#xff0c;数字经济蓬勃发展&#xff0c;银行业紧跟国家发展大局&#xff0c;全力推进数字化转型向纵深发展&#xff0c;探寻行业新动能&#xff0c;积极参与全社会数字生态建设&#xff0c;为数字中国高质量发展贡献金融力量。…

如何构建一个拖垮整个公司的运维系统

简介&#xff1a; 人肉运维&#xff0c;不在 DevOps 中转型&#xff0c;就在自动化中消亡。云化时代的运维&#xff0c;需要的是高铁&#xff0c;而不是“跑的更快的马车”。6月25日&#xff0c;数智创新行上海站智能运维专场&#xff0c;期待您的参与。 原文链接 本文为阿里云…

idea 安装php插件_免费版的 IDEA 为啥不能使用 Tomcat ?

程序员的成长之路互联网/程序员/技术/资料共享 关注阅读本文大概需要 2 分钟。来自&#xff1a;https://urlify.cn/2Ifiiiidea有两大版本&#xff0c;一个是Ultimate版本&#xff0c;一个是Community版&#xff0c;ultimate是需要收费的&#xff0c;Community版是开源免费的。然…

RocketMQ 千锤百炼--哈啰在分布式消息治理和微服务治理中的实践

简介&#xff1a; 随着公司业务的不断发展&#xff0c;流量也在不断增长。我们发现生产中的一些重大事故&#xff0c;往往是被突发的流量冲跨的&#xff0c;对流量的治理和防护&#xff0c;保障系统高可用就尤为重要。 作者&#xff5c;梁勇 ​ 背景 ​ 哈啰已进化为包括两轮…

休闲食品行业如何数字化升级,腾讯云和卫龙辣条一起打了个样

11月26日&#xff0c;腾讯云与卫龙集团达成战略合作&#xff0c;双方将整合各自优势资源&#xff0c;助力卫龙集团建设专有云平台&#xff0c;围绕生产、运营、管理层面进行全链路数字化&#xff0c;加速卫龙集团转型升级&#xff0c;打造休闲食品行业标杆。 作为一家年销售超过…

Vite + React 组件开发实践

简介&#xff1a; 毫不夸张的说&#xff0c;Vite 给前端带来的绝对是一次革命性的变化。或者也可以说是 Vite 背后整合的 esbuild 、 Browser es modules、HMR、Pre-Bundling 等这些社区中关于 JS 编译发展的先进工具和思路&#xff0c;在 Vite 这样的整合推动下&#xff0c;给…

canvas全局合成画月牙_GIF动态图,视频?都能用Python转换成字符画图像

字符画是一种由字母、标点或其他字符组成的图画&#xff0c;它产生于互联网时代&#xff0c;在聊天软件中使用较多&#xff0c;本文我们看一下如何将自己喜欢的图片转成字符画。静态图片首先&#xff0c;我们来演示将静态图片转为字符画&#xff0c;功能实现主要用到的 Python …

开发者看过来,5 行代码实现身份认证,Authing 如何做到的?

在没有学编程前&#xff0c;可能我们不会想到看起来简单的注册登录功能&#xff0c;其实并不简单&#xff0c;背后可能需要考虑&#xff1a; 1、支持用户用手机验证码、邮箱验证码登录&#xff1b; 2、用户连续登录失败&#xff0c;为了防止暴力破解&#xff0c;需考虑 24 小…

用c语言绘制自定义图形,Android使用自定义View绘图

使用自定义 View 绘图实例 MyViewCanvasDemo 自定义一个名为 MyView 的 View 类&#xff0c;并在其 onDraw() 方法中绘制简单的图像&#xff0c;运行效果如图 1 所示。图 1 简单的 View 绘图实例 MyViewCanvasDemo 没有使用布局文件&#xff0c;而是将自定义的 MyView 对象显示…

如何构建企业出海的“免疫力“?深入解读阿里云CDN安全能力

简介&#xff1a; 随着信息技术快速发展与应用&#xff0c;产业数字化和智能化趋势正日益加深&#xff0c;企业信息安全与防护被提升到前所有未有的高度。阿里云CDN经过10多年的技术发展时间&#xff0c;已逐步构筑一个边缘云的安全网络立体防护体系&#xff0c;包含了全链路安…

使用率激增 250%,这份报告再次将 Serverless 推向幕前

简介&#xff1a; 本文是对 Datadog 最新的一份 Serverless 报告的解读&#xff0c;欢迎大家留言讨论。 每项新技术的产生和演进过程中&#xff0c;都会有他自己的拥趸&#xff0c;也会有持怀疑论者。Serverless 的美在于他可以尽可能的解放客户在基础设施上的投入&#xff0c;…

dev用不了_跟风喊AMD YES?很多生产力项目,你必须用IU

大家好&#xff0c;我是小匠。现在的电脑市场中&#xff0c;高喊AMD YES几乎已经成为了一种政治正确了&#xff0c;尤其是在所谓的“生产力需求”的领域中。各大评测结果中也几乎都是AMD吊打Intel的局面。然而AU真的在所有生产力项目中都吊打IU吗&#xff1f;我可以负责任的告诉…

云计算到底是谁发明的?

作者 | 小枣君来源 | 鲜枣课堂&#xff08;ID&#xff1a;xzclasscom&#xff09;大家都在讨论云计算、云原生&#xff0c;那你知道云计算是谁发明的吗&#xff1f;说到云计算的起源&#xff0c;公众普遍认为&#xff0c;谷歌前 CEO 埃里克施密特是云计算概念的第一个提出者。2…

c语言静态变量存在堆还是栈,c 类 static 函数 什么样是静态变量?嵌入式C语言的堆栈管理如何实现...

C语言中静态变量是什么意思&#xff0c;有什么作用&#xff0c;static在数据类型前面表示什么最近刚看了C存储类的章节。所以来说说。C语言为变量提供了⑤种不同的存储模型&#xff0c;或者说是存储类。①个变量可以用存储时期描述&#xff0c;也可以用作用域描述&#xff0c;也…

如何专业化监控一个Kubernetes集群?

简介&#xff1a; 本文会介绍 Kubernetes 可观测性系统的构建&#xff0c;以及基于阿里云云产品实现 Kubernetes 可观测系统构建的最佳实践。 作者&#xff1a;佳旭 阿里云容器服务技术专家 引言 Kubernetes 在生产环境应用的普及度越来越广、复杂度越来越高&#xff0c;随之而…

如何构建一个拖垮整个公司的备份系统

简介&#xff1a; 在如今“数据即资产”的时代&#xff0c;有备才能无患。备份就像备胎&#xff0c;虽然大多人都知道备胎很重要&#xff0c;却很少有人检查。不发生点什么&#xff0c;你永远不知道TA对你有多重要。 原文链接 本文为阿里云原创内容&#xff0c;未经允许不得转…