一份谷歌写给 CTO 们的报告 - DORA 2023 版全面解读

news2025/2/23 10:56:51

file

背景

几天前,谷歌云旗下的 DORA (DevOps Research and Assessments) 发布了一年一度的 State of DevOps 2023 报告。DORA 在国内不像 Gartner 有那么高的知名度,但在全球,DORA 是研发效能 / DevOps 领域最具影响力的报告,从 2014 年开始,每年会出一份,2020 因为疫情的原因没有出,所以加上今年的一共有 9 份。

DORA 一开始是一家独立的研究机构,不过在 2018 年底加入了谷歌云。总体来讲 DORA 的报告是整个 DevOps 行业里面最为专业和客观的,这也应该是他当初受到谷歌青睐的原因。即使是加入谷歌后,它的报告也基本可以保持中立性。从最初聚焦在软件发布指标,到现在延伸到组织文化,业务表现,DORA 的阅读人群也从经理,总监为主的技术中层扩展到 CTO, VP 为主的技术管理层,这点尤其在今年的报告中更为突出,也贴合谷歌云从面向开发者到面向管理者的重心转移。

Bytebase 作为一家面向研发团队,提供前沿数据库 CI/CD 开源工具的厂商,这也是我们连续第三年对 DORA 进行深度解读:

  • State of DevOps DORA 2021 报告深度解读
  • State of DevOps DORA 2022 报告深度解读

赞助商

file
今年获取报告需要先留下联系方式,在收购 DORA 后的第 5 个年头,谷歌云也开始加速了对 DORA 的变现。今年的赞助商相比去年也发生了很大的变化
file

去年的老面孔

  1. Broadcom Software。Broadcom 算是一家比较传统的软件厂商,和 DevOps 相关的产品线多来自于 2018 年对 CA 的收购。总部在硅谷,当年 CA 大大的 Logo 还挂在 Highway 101 旁的唯一一栋高楼上。
  2. Deloitte。IT 实施咨询,DORA 报告赞助商的常客。

今年的新面孔

  1. LinearB。研发流程的优化。通用企业流程挖掘领域的领导者是 Celonis,而 LinearB 可以理解为软件研发这个特定领域的 Celonis。
    file
  2. Digital.ai。和 LinearB 类似,只是更加直白地用 AI 来宣传。
    file
  3. Opsera。也和前两家类似。
    file
  4. Sleuth。也是做类似的事情,不过更加聚焦在 DORA 上。
    file
    插曲,这家叫 swarmia 有点机智,知道新的 DORA 报告出了,会有人去搜赞助商,然后就投放了对应的关键词?
    file
  5. Qarik。帮用户迁移到云原生架构的。
    file
    从赞助商列表看,做研发流程洞察优化的厂商占了绝大部分,也贴合 DORA 报告的目标受众。不过也可以看到这个领域竞争的激烈程度。接下来我们进入正题,解读一下 DORA 报告本身。

受访人群

样本量相比去年增加了 3.6 倍,整个业界应该是仅次于 Stack Overflow Developer Survey 的规模。覆盖人群则更加全面。
file

地域分布上,除去依然保持低调的某东方大国,也体现了各国软件业的相对体量。
file

这个分布也可以作为出海软件公司的参考,用于选择进入一个新大陆的落脚点。看非洲,肯尼亚已经排在了南非之前。
file

方法论

file
DORA 最近几年的报告都有两条主线:

  • 组织线:业务表现,团队表现,个体感受
  • 事务线:交付表现和运行表现

DORA 的风格和海外做软件的风格一样,都是从点切入,由小及大。它最初的切入点是软件交付,后面增加了软件运行。再在此基础上推演业务表现 / 团队表现 / 个体感受。

四大核心指标

四大核心指标基本没变:

  • Deployment frequency(发布频率)
  • Change lead time (代码从提交到上线的时间)
  • Change failure rate (上线失败需要介入的比例)
  • Failed deployment recovery time (失败的部署需要恢复的时间)

其中最后一个术语做了调整,之前报告用的是更加通用的术语 time-to-restore。因为通用,所以无法区分发布造成的故障和自然灾害造成的故障。新的术语更加精确地限定在了发布领域。
file

分级 (Grading) - 精英级的回归

去年报告因为 Elite 和 High 之间缺乏区分度,本来的四档变成了三档。
file

今年 Elite 精英级又回归了,原因是因为样本量的大幅增加,区分度又出来了
file

分类 (Clustering) - 全新的组合

file

去年的报告采用了类似 Tuckman 组织发展模型的按阶段分类
(Forming > Storming > Norming > Performing > Adjourning),划分为 Staring > Flowing > Slowing > Retiring。
file

今年采用了新的基于特质的分类:

  • User-centric - 用户导向型
  • Feature-driven - 功能导向型
  • Developing - 发展型
  • Balanced - 均衡型

file

不同分类下各项指标的表现:
file
file

笔者觉得今年的分类有点模糊,边界不清晰。拿 Bytebase 自身来说,按照去年的阶段分类,可以很清楚地落在 starting 到 flowing 之间。而对于今年的 4 个分类,Bytebase 其实都能沾上边。按照特质分类,个人感觉需要像 MBTI 人格分析那样更加的细分才行。

关键发现

file

  • 建立健康的文化
  • 站在用户视角做事
  • 通过更快的代码评审提高软件交付
  • 通过高质量的文档加成技术能力
  • 通过云提升基础设施的灵活性
  • 平衡交付的速度,运行的表现和用户
  • 公平地分配工作量

文化和用户视角

用户视角也是文化的一部分,就放在一起讲了。
file
file
file

Westrum culture 来自于 Westrum 在 2004 年的论文 A typology of organisational cultures 里的观点。高度信任且注重信息交流的组织文化能带来出色的业务表现。

在所有评估的指标里,Westrum 文化和以用户为中心是最能带来正向效果的。前者大家可以进一步阅读 Westrum 的论文,而后者在 DORA 报告里还给出了进一步的数据。
file

可以看到以用户为中心能给每一个指标都带来显著提升,自然现在的公司都要大力提倡了。

影响表现的技术因素

file
file

延用了计算机的经典解法 - 分治。松耦合的架构 > 更小的变更 > DORA 四大核心指标的提升。
file

重新验证 Reliability 和 Performance 的关系

file
2022 年报告的数据显示,组织先要投入很长一段时间的稳定性建设,才能看到成果。这个结论多少让人沮丧,开始没有正向反馈就容易劝退。

不过 2023 年通过优化问卷,得出了一个鼓舞人心的结论,就是稳定性和表现的关系符合 J 曲线,投入前期就有效果,然后再经过一段瓶劲期,最终再是显著的收益。

还解决不了主要矛盾的 AI

file
file
今年的报告自然不能忽视 AI,结论算是浇了一盆冷水,在所有技术影响因子里是以很大的差距垫底的。这倒也符合个人的预期,因为目前 AI 唯一破圈的场景是帮助写代码,属于「道法术器」里的「器」,是影响最小的。

file
这幅图也比较有意思,展示了当下在研发交付领域,AI 擅长的和不擅长的。除了最后一个 Solving file path issue 是个有点奇怪的问题外,垫底的几个对应的都是「道法」层面的主要矛盾。

总结

一份专业的报告

抛开内容本身,DORA 一如即往地给我们展示了如何撰写一份专业的行业报告。方法论,受访人群,分析方法都在报告中有清晰阐述。
file

有反直觉的数据,也不会勉强附和,而是把疑问抛出。
file

关注更多的声音,既让报告更加全面,也注入了人文的元素。
file

说几点我读下来的不足:

I. 轻描淡写的平台工程

file

今年的报告里第一次提到了最近兴起的平台工程 (Platform Engineering)。DORA 的主题是研发效能 / DevOps,从行业趋势看,这部分工作对应到的就是平台工程团队。

平台工程的用户是内部的研发工程师,所以这部分也就出现在第 19 页 User-centric 里。但作为一份研究研发组织的报告,应该可以展开讲讲平台工程,毕竟这是近 10 多年里,继 DevOps / SRE 后,终于涌现出来的一个新组织形态。

II. 老生常谈的 Cloud

file

报告里列举了 Cloud 的各种优势,但对于最近业界 Cloud cost 相关的讨论以及伴随着的下云呼声没有涉及,缺少了一点辩证,这是报告出自谷歌云之手的一点偏心吧。除此之外,谷歌的另外一处植入就是谈论自家的 SRE 实践。
file

III. 转型期的 DORA

file
业界权威的年度报告里,Stack Overflow Developer Survey 偏一线,关注具体工作中所使用的产品技术;Gartner 面向管理层,关注行业的趋势。DORA 介于两者之间,DORA 里 DO 所代表的 DevOps 基因决定了报告的一线视角,RA 所代表的 Research & Assessment 又使得它会给出价值判断。而从这几年的报告趋势来看,DORA 正逐步走向管理层。

file
比如从赞助商列表来看,往年都有不少研发链路某一个环节的工具厂商,像做 IDE 的 JetBrains,制品库的 JFrog,代码托管的 GitLab,应用部署的 Octopus,数据库变更的 Liquibase。而今年则是清一色的研发效能过程优化赞助商,或许这也是和报告背后的金主谷歌云面向大客的策略调整有关。

再从正文看,今年的报告弱化了 DORA 一直背书的软件发布四大核心指标,而是更多地去叙述核心指标背后的元素。这其中把文化和以用户为中心放在了前两位。

Culture eats strategy for breakfast - 彼得·德鲁克

既然转型走高层的路线,那就要面临阵痛,DORA 团队分析复盘的能力很强,但相比 Gartner,缺少前瞻性。其本身又绑定在 DevOps 这个早已成熟的概念,再叠加上要宣传 SRE 这个也已经过了成长期的实践。对于平台工程,对于 AI,DORA 这次提及的不多,这一方面体现了它务实的部分,但这些未来 3 - 5 年可见的趋势,才是管理层们更关心的内容。

结束语

file
度量不是目的,就像发布软件并不是目的。数据若能印证假设固然值得欣喜,但更有价值的往往还是揭示错误的假设。提高软件发布的效率,也是为了形成更短的反馈闭环,发现产品的缺陷,进行改良,更好地满足用户。

file
在这个 AI 的黎明,虚拟现实的前夜,一个具备持续改进能力的组织才是面向未来不确定性下的最大确定性🦾。

能读到这里的,也一定是对软件交付有追求的读者。可以看一下我们正在做的 Bytebase,它目前是整个行业里,数据库变更 CI/CD 领域的领导者。


💡 你可以访问官网,免费注册云账号,立即体验 Bytebase。

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

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

相关文章

CentOS 7 部署Jellyfin详细教程

前言 Jellyfin是免费、开源的媒体服务器解决方案,它能让我们轻松地管理和访问个人媒体文件,如电影、音乐等。本文将向您介绍如何快速搭建和部署Jellyfin,并分享一些最佳实践和技巧,帮助您更好地利用这个强大的媒体服务器解决方案。…

nginx的正向代理,反向代理和负载均衡

nginx当中有两种代理方式以及含义: 1.七层代理 (http协议) 核心:代理的是http的请求和响应 客户端请求代理服务器:由代理服务器转发客户端的httpd请求,转发到内部的服务器(可以是单台和可以是一…

【Android】android.view.WindowManager$BadTokenException 异常fix 解决

背景 爆出如上的问题:官方文档 解决: 我的问题是在于 activity销毁了,结果还要弹出Dialog导致的崩溃,异步处理。 if(isFinishing()){// 在异步情况下,如果activity销毁后再弹dialog 会导致异常,故如果正在…

转行要趁早!盘点网络安全的岗位汇总!

前段时间,知名机构麦可思研究院发布了《2022年中国本科生就业报告》,其中详细列出近五年的本科绿牌专业,信息安全位列第一。 对于网络安全的发展与就业前景,知了姐说过很多,作为当下应届生收入较高的专业之一&#xf…

Vue配置全局变量config.js

Vue配置全局变量config.js 若config.js在public目录下 在index.html中引入 这样配置是为了防止路由前缀&#xff0c;如果直接“/config.js”&#xff0c;若路由没有前缀还好&#xff0c;要是有就需要配置为“<% BASE_URL %>config.js”

windows应用程序告警:帐户名与安全标识间无任何映射完成

目录 一、问题现象 二、问题解决 &#xff08;一&#xff09;官方方法 &#xff08;二&#xff09;问题定位 &#xff08;三&#xff09;问题处理 一、问题现象 今天巡检域控服务器时&#xff0c;发现告警如下&#xff1a; 安全策略已传播&#xff0c;但有警告信息。 0x534…

实战:在Nginx服务器安装SSL证书并配置强制跳转https-2023.10.16(测试成功)

实战&#xff1a;在Nginx服务器安装SSL证书并配置强制跳转https-2023.10.16(测试成功) 原文链接 https://help.aliyun.com/zh/ssl-certificate/user-guide/install-ssl-certificates-on-nginx-servers-or-tengine-servers?spma2c4g.11186623.0.0.7ab93cb39AuLXF 更新时间&…

1-k8s1.23.6-底座搭建-基于docker

这里写自定义目录标题 一、服务器准备二、安装docker三、安装k8s四、安装部署dashboard 一、服务器准备 服务器准备 服务器名称服务器IP角色CPU(最低要求)内存(最低要求)master192.168.248.10master2核2Gworker1192.168.248.11node2核2Gworker2192.168.248.12node2核2G 修改ip&…

JavaSE入门---数据类型与变量

文章目录 数据类型基本数据类型引用数据类型 常量变量变量类型类型转换自动类型转换&#xff08;隐式&#xff09;强制类型转换&#xff08;显式&#xff09; 类型提升 字符串类型 数据类型 在Java中&#xff0c;数据类型基本分为俩类&#xff1a;基本数据类型和引用数据类型。…

代理IP可以用于哪些实际场景?遇到问题如何解决

代理IP的应用场景非常广泛&#xff0c;可以在不同领域提供许多有用的功能。以下是关于代理IP应用场景的详细扩充&#xff0c;包括每个场景的优势和应用建议&#xff0c;以及在使用代理IP时可能遇到的问题和应对方法。 1.价格监控&#xff1a; 商业竞争很大程度上是价格竞争。在…

解决Maven依赖下载缓慢的问题(亲测管用)

解决Maven依赖下载缓慢 众所周知&#xff0c;欲练神功&#xff0c;必先自宫。最好的方式就是不用镜像&#xff0c;自己在本地下载一个稳定版本的Maven&#xff0c;以后每次用的时候直接在IDEA里面一导入就可以。&#xff08;为了保险&#xff0c;在以下的步骤里配置了aliyun镜像…

高防CDN怎样保护网站安全的

在当今数字化时代&#xff0c;互联网安全问题日益严重。网络攻击和数据泄露威胁着个人隐私、企业机密以及关键基础设施的安全。在应对这些挑战方面&#xff0c;高防CDN&#xff08;内容分发网络&#xff09;崭露头角&#xff0c;它不仅提高了性能&#xff0c;还加强了网络安全。…

算法学习——贪心算法

目录 一&#xff0c;柠檬水找零 1.题目 2.题目接口 3.题目解题思路 二&#xff0c;将数组减半的最小操作数 1.题目 2.题目接口 3.解题思路及代码 三&#xff0c;摆动序列 1.题目 2.题目接口 3.解题代码及思路 一&#xff0c;柠檬水找零 1.题目 在柠檬水摊上&#xf…

Linux文件系统 struct file 结构体解析

文章目录 一、open系统调用1.1 简介1.2 files_struct1.2.1 简介1.2.2 init_files1.2.2 CLONE_FILES 1.3 源码分析1.3.1 get_unused_fd_flags1.3.2 do_filp_open1.3.3 fd_install 二、struct file简介三、其他参考资料 一、open系统调用 1.1 简介 NAMEopen, creat - open and …

手撸java对象拷贝工具类(赶快来试试)

今天心血来潮想自己手撸一个对象拷贝工具学习学习&#xff0c;感觉很不错&#xff0c;使用纯原生java&#xff0c;不依赖任何工具类&#xff0c;健壮性就不优化了。技术主要用到了反射和stream&#xff0c;赶快来试试&#xff0c;炒鸡好用&#xff01; /*** 对象拷贝注入* 参数…

加权平均、EMD、小波等方法去噪效果对比

加权平均、EMD、小波等方法去噪效果对比 代码 整体代码如下 %% clear all; clc;load(data_filter120Hz.mat); %可自己生成随机噪声 fs1000;%采样频率是1000Hz %% %生成正弦波信号 tlinspace(0, length(data)/fs-1/fs, length(data)); y1 15*sin(2*pi* 2.8 *t);%生成频率为2.…

如何选择一款适合的工单管理系统?“的修”工单系统有什么优势?

在如今快节奏的单位环境中&#xff0c;一个高效、便捷的工单管理系统对于单位的重要性不言而喻。面对琳琅满目的工单管理系统&#xff0c;单位该如何选择最合适的一款呢&#xff1f;本文将详细评测“的修”工单管理系统&#xff0c;带您了解它的强大功能和优势&#xff0c;帮您…

游戏缺少dll文件用什么修复?dll多种修复方法指南

在玩游戏时&#xff0c;有时候可能会遇到游戏缺少dll文件的问题。dll文件是动态链接库的缩写&#xff0c;它包含了一些函数和资源&#xff0c;游戏运行需要依赖这些文件。如果缺少了某个dll文件&#xff0c;游戏就可能无法正常运行。那么游戏缺少dll文件用什么修复&#xff1f;…

C语言---预处理详解

1.预定义符号 在C语言中有一些内置的预定义符号 __FILE__ __LINE__ __DATE__ __TIME__ __STDC__//进行编译的源文件 //文件当前的行号 //文件被编译的日期 //文件被编译的时间 //如果编译器遵循ANSI C&#xff0c;其值为1&#xff0c;否则未定义 编译器在__STDC__报错,说明,v…

基于IPSec VPN隧道技术的国密加密网关保障电力工控数据安全

IPSec VPN&#xff08;Internet Protocol Security Virtual Private Network&#xff09;隧道技术为电力工控系统提供了重要的数据安全传输手段。该技术能实现身份鉴别和数据加密传输&#xff0c;为系统的防护工作增添了有力的支持。 电力工控系统对数据传输的可靠性要求较高。…