新闻动态

【新闻资讯】2019加速度DevOps全球状态报告 中文版(二)

发布时间:2019-09-29 点击数:10287

上周我们发布了《2019加速度DevOps全球状态报告》中文版的第一期,主要介绍了报告的前两节内容,关于本次报告的概述,以及调查的人员情况。

致谢:DevOpsDays中国社区

致谢:申请翻译、参与翻译、校审的志愿者

本期翻译:杜静娴,徐东伟,校审:刘征

文稿呈现:张洁

组委会:张扬、张乐、孙振鹏、许峰

本期,将介绍报告的第三节内容,主要是对此次报告研究模型的理解和解读。

 

如何进行比较?




3.1软件交付和运维效能

组织越来越依赖于他们交付和运营软件系统的能力,以实现他们的目标。为了比较这个关键结果指标上的效能,行业需要一种方法来度量开发和交付实践的有效方法。在过去的六年里,我们开发并验证了四个度量标准,它们提供了软件交付和效能的高级系统视图,并预测了组织实现其目标的能力。去年,我们增加了一个关注运维能力的额外指标,并发现该指标有助于组织交付卓越的成果。我们将这五个度量称为软件交付和运维效能(SDO),它们关注于系统级的输出。这有助于避免进入软件度量的常见陷阱,避免让不同的功能自相矛盾,并导致局部优化而忽略了整体结果。

 

开发和交付过程有效性的前四个指标可以根据吞吐量和稳定性进行评估。我们使用代码更改从签入到发布的前置时间,以及部署频率来度量软件交付过程的吞吐量。

稳定性是用故障恢复时间来测量的,从检测影响到用户的事件到对其进行补救所花费的时间,以及变更失败率,这是对发布过程质量的一种度量。



许多专业人士认为增加吞吐量将制约软件交付过程的可靠性和服务的可用性,故而权衡取舍这些 度量指标。然而,我们连续六年研究持续表明,速度和稳定性是相互促进的结果。2019年的数据中四个软件交付指标的聚类分析揭示了四类不同性能的组织概况,其中吞吐量和稳定性度量在统计上有显著差异5。和前几年一样,我们的高效能组织在所有四个方面都做得更好,而低效能组织在所有方面都做得更差。

5 可用性不包括在我们的聚类分析中,因为可用性度量不以相同的方式应用于软件解决方案的,它并不是以服务形式提供的,例如打包的软件或固件。

 

除了速度和稳定性之外,可用性对运维性能也很重要。在高层次上,可用性代表了技术团队和组织对他们正在运行的软件信守承诺和主张的能力。值得注意的是,可用性是关于确保产品或服务对最终用户可用并可被其访问6。可用性反映了团队如何定义他们的可用性目标,跟踪他们当前的可用性,并从任何中断中学习,确保他们的反馈循环是完整的。用于度量可用性的项目构成了有效和可靠的度量结构。

6 团队可以使用服务级别协议(SLAs)和服务级别目标(SLOs)定义他们的可用性目标,并使用服务级别指标(SLIs)度量他们的性能。有关开发SLAs、SLOs和SLIs的更多信息,可以查看拜尔等人编写的《站点可靠性工程:谷歌如何运行生产系统》一书(2016)


由于不是正态分布,所以使用中位数报告。

除非另有说明,否则基于Tukey的事后随机分析,所有差异都有显著差异。

a、b、c 根据Tukey的事后随机分析,平均值存在显著差异;中位数由于底层的分布不会显示出差异。

d 根据Tukey的事后随机分析,平均值并没有显著差异。

* 有关四个指标的可视化呈现,请参阅附录a。

 

我们还证实了去年的发现,更好的软件交付与更高的可用性是密切相关的。分析表明,可用性度量与软件交付性能显著相关,精英和高效能组织一致报告了更高的可用性,精英拥有强大可用性实践的可能性是其他组织的1.7倍7 。

7 还应该注意的是,这些实践中没有一个只适用于云。

 

行业的速度在增加

许多分析师报告称,该行业在DevOps和技术转型方面“跨越了鸿沟”,我们今年的分析证实了这些观察。随着向云技术的转变,行业发展速度正在加快,速度和稳定性都在提高。这重申了技术的重要性,使组织能够向利益相关者交付价值。

 

SDO效能对行业和组织的影响

我们进行了额外的分析(例如,使用控制变量),以查看行业和组织大小是否对SDO效能有显著影响。我们没有发现任何证据表明行业对经济有影响,零售业除外。这表明,所有类型和规模的组织,包括金融服务和政府等受到高度监管的行业,都能实现高水平的效能。我们对零售业的研究结果表明,那些从事零售业的人在速度和稳定性方面获得了收益。

 

我们发现有证据表明,与员工少于5000人的组织相比,大型企业组织(员工超过5000人的组织)的效能较低。这可能是由于在大型组织中看到的几个因素造成的,最显著的是重量级流程及控制,还有紧密耦合的架构,引入了延迟和相关的不稳定性。我们敦促企业不要把这些发现作为业绩不佳的借口,而是要认识到卓越是可能的,要开始一个持续改进的项目,并向其他取得优秀业绩的企业组织寻求灵感和指导。



3.1.1 吞吐量

部署频率

根据精英效能组织的反馈,他们通常会按需部署,并且每天都会做多次部署,在过去几年里一直如此。相比之下,低效能组织的部署频率为一个月一次(一年12次)至六个月一次(一年2次)不等,这一数据比去年有所下降。基于以上数据,我们可以计算标准化的年度部署次数,其范围从高效能组织的一年1,460次(按照一天4次部署*365天计算)到低效能组织的一年7次(取12次和2次的平均数)。基于这项分析,我们可以看到,精英效能组织部署代码的频率比低效能组织高出208倍。值得注意的是,与很多公司的实践相比,每天4次部署是一个保守的估计。例如:CapitalOne 每天部署50次8,或者例如Amazon、Google以及Netflix每天部署几千次(生产环境里的数百项服务的合计值)。


变更前置时间

同样地,根据精英效能组织的反馈,他们的变更前置时间,即从提交代码到代码成功部署到生产环境的时间不到1天,这一数据比去年稍有下降,去年精英效能组织报告的变更前置时间为不到1小时;相比之下,低效能组织则需要1到6个月的前置时间。如果按照精英效能组织需要24小时前置时间(这是取自于“不到1天”的保守估算)、低效能组织需要2,555小时前置时间(对1个月730小时和6个月4,380小时求平均数而得)来计算,精英效能组织比低效能组织在变更前置时间方面快106倍。

 

3.1.2 稳定性

服务恢复时间

根据精英效能组织的反馈,其服务恢复时间在1小时以内,而低效能组织则在1周到1个月之间。我们采用了比较保守的计算方法:对精英效能组织取值1小时,对低效能组织取1周(168小时) 和1个月(5,040小时)的平均值。基于这个计算方法,精英效能组织的服务恢复时间比低效能组织快2,604倍。如前所述精英效能组织和低效能组织在服务恢复时间这一指标上的表现与去年相同。

 

变更失败率

根据精英效能组织的反馈,其变更失败率指标在0%到15%之间,而低效能组织则在46%到60%之间。取平均值的结果为,精英效能组织的变更失败率为7.5%,低效能组织的变更失败率为53%。这一结果说明精英效能组织在这个指标上领先低效能组织7倍。如前所述,精英效能组织和低效能组织在变更失败率这一指标上的表现与去年相同。


3.2 如何使用研究模型



如果你想提高SDO效能或组织效能,请查看具有这些结构体的模型,并前往报告的相应部分,了解应该关注哪些能力(请关注第三期)。

 

如果你想提高生产力,请查看具有生产力结构体的模型,并前往报告的相应部分,了解应该关注哪些能力(请关注第四期)。

 

如何使用这两个模型来指导转型

> 识别能够改善你的目标的能力(即那些带箭头的,指向你想要改进的结构体的能力)。正如我们在本报告中指出的,这些是您的改进候选能力。(对于SDO和组织效能,我们在过去五年的研究中还识别了其他能力。)9

> 记住,加速转型要从坚实的基础开始,然后关注那些成为限制的能力:是什么能力导致了最大的延迟?你最头疼的是什么?最大的问题在哪里?选择三到五个,首先投入资源解决这些问题。如果你仍然有问题,不要担心;通过关注当前最大的问题,你可以消除瓶颈,发现协同效应,以及避免不必要的工作。

> 这项工作还有其他重要成果。寻求提高SDO和组织效能的好处包括减少职业倦怠和部署痛苦(我们在2016年和2017年对此进行了研究),改善安全成果(我们在2017年和2018年对此进行了研究),以及文化(我们从2014年至2019年对此进行了研究)。提高生产力的其他好处包括改善工作/生活平衡和减少职业倦怠。

9:You can find all of our State of DevOps Reports at cloud.google.com/devops

 

如何阅读研究模型

我们使用结构方程模型(SEM),这是一个用于测试关系的预测模型。每个框表示我们在研究中度量的结构体,每个箭头表示结构体之间的关系。包含框(结构体)的较大的框是二级结构体。浅蓝色的框与另一个结构体的之间的虚线表示一个控制变量。(参考第31页和第57页了解完整的模型。)带有粗体文字的结构体表示我们今年首次调查的结构体。带有粗体轮廓的结构体是团队和组织的共同目标:SDO效能和组织效能或生产力。在识别你的目标以及阅读模型时,请将这些内容牢记在心。


在解释这两个模型时,可以将这些带箭头的线读作“预测”、“影响”、“驱动”或“强烈影响”。例如,二级结构体SDO效能由软件交付效能和可用性结构体组成,这些共同驱动组织效能。灾难恢复测试结构体驱动可用性。我们指出,灾难恢复测试是今年新调查的一个结构体,用粗体文字标记。带箭头的线旁边有一个(-),表示两个结构体之间具有强烈的反向影响;例如,技术债务强烈地反向影响(或者说降低)生产力。

 

你可能注意到两个研究模型之间有一些重叠

这是因为两个目标——SDO效能和生产力——在很多方面都有关联。它们都致力于以卓越地、向组织和个人交付价值的方式制造和交付技术。我们为支持软件交付工作所做的很多事情,对于开发和交付软件的人员的生产力提升也是大有裨益的,这也是讲得通的。然而,尽管它们相似,但它们仍然在度量不同的结果,因此我们分别进行分析。这样一来,他们就存在于两种不同的研究模型中。

 

两个研究模型的重叠部分告诉我们

> 明智地投资于SDO效能的提升可以减少精疲力尽,提高生产力也可以减少职业倦怠。这一结论对于组织和技术人员来说应该是鼓舞人心的,因为工作的需求会不断增长。我们注意到,良好的工作/生活平衡是减少职业倦怠的关键。

> 心理安全文化有助于SDO效能、组织效能和生产力,表明健康文化的成长和培养会为组织和个人带来好处。

> 在代码可维护性、松耦合架构和监控方面的投资有助于支持SDO效能(通过持续交付达成)和生产力(通过减少技术债务达成),这突显了良好工具和系统的重要性。

 



深圳青蓝咨询服务有限公司

话:0755-86950769

网:www.shzhchina.com

箱:qinglan@shzhchina. com

 址: 深圳市南山区高新南一道06号TCL大厦B座3楼309室

深圳地铁1号线高新园站C出口