上周我們發(fā)布了《2019加速度DevOps全球狀態(tài)報(bào)告》中文版的第一期,主要介紹了報(bào)告的前兩節(jié)內(nèi)容,關(guān)于本次報(bào)告的概述,以及調(diào)查的人員情況。
致謝:DevOpsDays中國(guó)社區(qū)
致謝:申請(qǐng)翻譯、參與翻譯、校審的志愿者
本期翻譯:杜靜嫻,徐東偉,校審:劉征
文稿呈現(xiàn):張潔
組委會(huì):張揚(yáng)、張樂(lè)、孫振鵬、許峰
本期,將介紹報(bào)告的第三節(jié)內(nèi)容,主要是對(duì)此次報(bào)告研究模型的理解和解讀。
如何進(jìn)行比較?
3.1軟件交付和運(yùn)維效能
組織越來(lái)越依賴于他們交付和運(yùn)營(yíng)軟件系統(tǒng)的能力,以實(shí)現(xiàn)他們的目標(biāo)。為了比較這個(gè)關(guān)鍵結(jié)果指標(biāo)上的效能,行業(yè)需要一種方法來(lái)度量開(kāi)發(fā)和交付實(shí)踐的有效方法。在過(guò)去的六年里,我們開(kāi)發(fā)并驗(yàn)證了四個(gè)度量標(biāo)準(zhǔn),它們提供了軟件交付和效能的高級(jí)系統(tǒng)視圖,并預(yù)測(cè)了組織實(shí)現(xiàn)其目標(biāo)的能力。去年,我們?cè)黾恿艘粋€(gè)關(guān)注運(yùn)維能力的額外指標(biāo),并發(fā)現(xiàn)該指標(biāo)有助于組織交付卓越的成果。我們將這五個(gè)度量稱為軟件交付和運(yùn)維效能(SDO),它們關(guān)注于系統(tǒng)級(jí)的輸出。這有助于避免進(jìn)入軟件度量的常見(jiàn)陷阱,避免讓不同的功能自相矛盾,并導(dǎo)致局部?jī)?yōu)化而忽略了整體結(jié)果。
開(kāi)發(fā)和交付過(guò)程有效性的前四個(gè)指標(biāo)可以根據(jù)吞吐量和穩(wěn)定性進(jìn)行評(píng)估。我們使用代碼更改從簽入到發(fā)布的前置時(shí)間,以及部署頻率來(lái)度量軟件交付過(guò)程的吞吐量。
穩(wěn)定性是用故障恢復(fù)時(shí)間來(lái)測(cè)量的,從檢測(cè)影響到用戶的事件到對(duì)其進(jìn)行補(bǔ)救所花費(fèi)的時(shí)間,以及變更失敗率,這是對(duì)發(fā)布過(guò)程質(zhì)量的一種度量。
許多專業(yè)人士認(rèn)為增加吞吐量將制約軟件交付過(guò)程的可靠性和服務(wù)的可用性,故而權(quán)衡取舍這些 度量指標(biāo)。然而,我們連續(xù)六年研究持續(xù)表明,速度和穩(wěn)定性是相互促進(jìn)的結(jié)果。2019年的數(shù)據(jù)中四個(gè)軟件交付指標(biāo)的聚類分析揭示了四類不同性能的組織概況,其中吞吐量和穩(wěn)定性度量在統(tǒng)計(jì)上有顯著差異5。和前幾年一樣,我們的高效能組織在所有四個(gè)方面都做得更好,而低效能組織在所有方面都做得更差。
5 可用性不包括在我們的聚類分析中,因?yàn)榭捎眯远攘坎灰韵嗤姆绞綉?yīng)用于軟件解決方案的,它并不是以服務(wù)形式提供的,例如打包的軟件或固件。
除了速度和穩(wěn)定性之外,可用性對(duì)運(yùn)維性能也很重要。在高層次上,可用性代表了技術(shù)團(tuán)隊(duì)和組織對(duì)他們正在運(yùn)行的軟件信守承諾和主張的能力。值得注意的是,可用性是關(guān)于確保產(chǎn)品或服務(wù)對(duì)最終用戶可用并可被其訪問(wèn)6??捎眯苑从沉藞F(tuán)隊(duì)如何定義他們的可用性目標(biāo),跟蹤他們當(dāng)前的可用性,并從任何中斷中學(xué)習(xí),確保他們的反饋循環(huán)是完整的。用于度量可用性的項(xiàng)目構(gòu)成了有效和可靠的度量結(jié)構(gòu)。
6 團(tuán)隊(duì)可以使用服務(wù)級(jí)別協(xié)議(SLAs)和服務(wù)級(jí)別目標(biāo)(SLOs)定義他們的可用性目標(biāo),并使用服務(wù)級(jí)別指標(biāo)(SLIs)度量他們的性能。有關(guān)開(kāi)發(fā)SLAs、SLOs和SLIs的更多信息,可以查看拜爾等人編寫(xiě)的《站點(diǎn)可靠性工程:谷歌如何運(yùn)行生產(chǎn)系統(tǒng)》一書(shū)(2016)
由于不是正態(tài)分布,所以使用中位數(shù)報(bào)告。
除非另有說(shuō)明,否則基于Tukey的事后隨機(jī)分析,所有差異都有顯著差異。
a、b、c 根據(jù)Tukey的事后隨機(jī)分析,平均值存在顯著差異;中位數(shù)由于底層的分布不會(huì)顯示出差異。
d 根據(jù)Tukey的事后隨機(jī)分析,平均值并沒(méi)有顯著差異。
* 有關(guān)四個(gè)指標(biāo)的可視化呈現(xiàn),請(qǐng)參閱附錄a。
我們還證實(shí)了去年的發(fā)現(xiàn),更好的軟件交付與更高的可用性是密切相關(guān)的。分析表明,可用性度量與軟件交付性能顯著相關(guān),精英和高效能組織一致報(bào)告了更高的可用性,精英擁有強(qiáng)大可用性實(shí)踐的可能性是其他組織的1.7倍7 。
7 還應(yīng)該注意的是,這些實(shí)踐中沒(méi)有一個(gè)只適用于云。
行業(yè)的速度在增加
許多分析師報(bào)告稱,該行業(yè)在DevOps和技術(shù)轉(zhuǎn)型方面“跨越了鴻溝”,我們今年的分析證實(shí)了這些觀察。隨著向云技術(shù)的轉(zhuǎn)變,行業(yè)發(fā)展速度正在加快,速度和穩(wěn)定性都在提高。這重申了技術(shù)的重要性,使組織能夠向利益相關(guān)者交付價(jià)值。
SDO效能對(duì)行業(yè)和組織的影響
我們進(jìn)行了額外的分析(例如,使用控制變量),以查看行業(yè)和組織大小是否對(duì)SDO效能有顯著影響。我們沒(méi)有發(fā)現(xiàn)任何證據(jù)表明行業(yè)對(duì)經(jīng)濟(jì)有影響,零售業(yè)除外。這表明,所有類型和規(guī)模的組織,包括金融服務(wù)和政府等受到高度監(jiān)管的行業(yè),都能實(shí)現(xiàn)高水平的效能。我們對(duì)零售業(yè)的研究結(jié)果表明,那些從事零售業(yè)的人在速度和穩(wěn)定性方面獲得了收益。
我們發(fā)現(xiàn)有證據(jù)表明,與員工少于5000人的組織相比,大型企業(yè)組織(員工超過(guò)5000人的組織)的效能較低。這可能是由于在大型組織中看到的幾個(gè)因素造成的,最顯著的是重量級(jí)流程及控制,還有緊密耦合的架構(gòu),引入了延遲和相關(guān)的不穩(wěn)定性。我們敦促企業(yè)不要把這些發(fā)現(xiàn)作為業(yè)績(jī)不佳的借口,而是要認(rèn)識(shí)到卓越是可能的,要開(kāi)始一個(gè)持續(xù)改進(jìn)的項(xiàng)目,并向其他取得優(yōu)秀業(yè)績(jī)的企業(yè)組織尋求靈感和指導(dǎo)。
3.1.1 吞吐量
部署頻率
根據(jù)精英效能組織的反饋,他們通常會(huì)按需部署,并且每天都會(huì)做多次部署,在過(guò)去幾年里一直如此。相比之下,低效能組織的部署頻率為一個(gè)月一次(一年12次)至六個(gè)月一次(一年2次)不等,這一數(shù)據(jù)比去年有所下降?;谝陨蠑?shù)據(jù),我們可以計(jì)算標(biāo)準(zhǔn)化的年度部署次數(shù),其范圍從高效能組織的一年1,460次(按照一天4次部署*365天計(jì)算)到低效能組織的一年7次(取12次和2次的平均數(shù))。基于這項(xiàng)分析,我們可以看到,精英效能組織部署代碼的頻率比低效能組織高出208倍。值得注意的是,與很多公司的實(shí)踐相比,每天4次部署是一個(gè)保守的估計(jì)。例如:CapitalOne 每天部署50次8,或者例如Amazon、Google以及Netflix每天部署幾千次(生產(chǎn)環(huán)境里的數(shù)百項(xiàng)服務(wù)的合計(jì)值)。
變更前置時(shí)間
同樣地,根據(jù)精英效能組織的反饋,他們的變更前置時(shí)間,即從提交代碼到代碼成功部署到生產(chǎn)環(huán)境的時(shí)間不到1天,這一數(shù)據(jù)比去年稍有下降,去年精英效能組織報(bào)告的變更前置時(shí)間為不到1小時(shí);相比之下,低效能組織則需要1到6個(gè)月的前置時(shí)間。如果按照精英效能組織需要24小時(shí)前置時(shí)間(這是取自于“不到1天”的保守估算)、低效能組織需要2,555小時(shí)前置時(shí)間(對(duì)1個(gè)月730小時(shí)和6個(gè)月4,380小時(shí)求平均數(shù)而得)來(lái)計(jì)算,精英效能組織比低效能組織在變更前置時(shí)間方面快106倍。
3.1.2 穩(wěn)定性
服務(wù)恢復(fù)時(shí)間
根據(jù)精英效能組織的反饋,其服務(wù)恢復(fù)時(shí)間在1小時(shí)以內(nèi),而低效能組織則在1周到1個(gè)月之間。我們采用了比較保守的計(jì)算方法:對(duì)精英效能組織取值1小時(shí),對(duì)低效能組織取1周(168小時(shí)) 和1個(gè)月(5,040小時(shí))的平均值?;谶@個(gè)計(jì)算方法,精英效能組織的服務(wù)恢復(fù)時(shí)間比低效能組織快2,604倍。如前所述精英效能組織和低效能組織在服務(wù)恢復(fù)時(shí)間這一指標(biāo)上的表現(xiàn)與去年相同。
變更失敗率
根據(jù)精英效能組織的反饋,其變更失敗率指標(biāo)在0%到15%之間,而低效能組織則在46%到60%之間。取平均值的結(jié)果為,精英效能組織的變更失敗率為7.5%,低效能組織的變更失敗率為53%。這一結(jié)果說(shuō)明精英效能組織在這個(gè)指標(biāo)上領(lǐng)先低效能組織7倍。如前所述,精英效能組織和低效能組織在變更失敗率這一指標(biāo)上的表現(xiàn)與去年相同。
3.2 如何使用研究模型
如果你想提高SDO效能或組織效能,請(qǐng)查看具有這些結(jié)構(gòu)體的模型,并前往報(bào)告的相應(yīng)部分,了解應(yīng)該關(guān)注哪些能力(請(qǐng)關(guān)注第三期)。
如果你想提高生產(chǎn)力,請(qǐng)查看具有生產(chǎn)力結(jié)構(gòu)體的模型,并前往報(bào)告的相應(yīng)部分,了解應(yīng)該關(guān)注哪些能力(請(qǐng)關(guān)注第四期)。
如何使用這兩個(gè)模型來(lái)指導(dǎo)轉(zhuǎn)型
> 識(shí)別能夠改善你的目標(biāo)的能力(即那些帶箭頭的,指向你想要改進(jìn)的結(jié)構(gòu)體的能力)。正如我們?cè)诒緢?bào)告中指出的,這些是您的改進(jìn)候選能力。(對(duì)于SDO和組織效能,我們?cè)谶^(guò)去五年的研究中還識(shí)別了其他能力。)9
> 記住,加速轉(zhuǎn)型要從堅(jiān)實(shí)的基礎(chǔ)開(kāi)始,然后關(guān)注那些成為限制的能力:是什么能力導(dǎo)致了最大的延遲?你最頭疼的是什么?最大的問(wèn)題在哪里?選擇三到五個(gè),首先投入資源解決這些問(wèn)題。如果你仍然有問(wèn)題,不要擔(dān)心;通過(guò)關(guān)注當(dāng)前最大的問(wèn)題,你可以消除瓶頸,發(fā)現(xiàn)協(xié)同效應(yīng),以及避免不必要的工作。
> 這項(xiàng)工作還有其他重要成果。尋求提高SDO和組織效能的好處包括減少職業(yè)倦怠和部署痛苦(我們?cè)?016年和2017年對(duì)此進(jìn)行了研究),改善安全成果(我們?cè)?017年和2018年對(duì)此進(jìn)行了研究),以及文化(我們從2014年至2019年對(duì)此進(jìn)行了研究)。提高生產(chǎn)力的其他好處包括改善工作/生活平衡和減少職業(yè)倦怠。
9:You can find all of our State of DevOps Reports at cloud.google.com/devops
如何閱讀研究模型
我們使用結(jié)構(gòu)方程模型(SEM),這是一個(gè)用于測(cè)試關(guān)系的預(yù)測(cè)模型。每個(gè)框表示我們?cè)谘芯恐卸攘康慕Y(jié)構(gòu)體,每個(gè)箭頭表示結(jié)構(gòu)體之間的關(guān)系。包含框(結(jié)構(gòu)體)的較大的框是二級(jí)結(jié)構(gòu)體。淺藍(lán)色的框與另一個(gè)結(jié)構(gòu)體的之間的虛線表示一個(gè)控制變量。(參考第31頁(yè)和第57頁(yè)了解完整的模型。)帶有粗體文字的結(jié)構(gòu)體表示我們今年首次調(diào)查的結(jié)構(gòu)體。帶有粗體輪廓的結(jié)構(gòu)體是團(tuán)隊(duì)和組織的共同目標(biāo):SDO效能和組織效能或生產(chǎn)力。在識(shí)別你的目標(biāo)以及閱讀模型時(shí),請(qǐng)將這些內(nèi)容牢記在心。
在解釋這兩個(gè)模型時(shí),可以將這些帶箭頭的線讀作“預(yù)測(cè)”、“影響”、“驅(qū)動(dòng)”或“強(qiáng)烈影響”。例如,二級(jí)結(jié)構(gòu)體SDO效能由軟件交付效能和可用性結(jié)構(gòu)體組成,這些共同驅(qū)動(dòng)組織效能。災(zāi)難恢復(fù)測(cè)試結(jié)構(gòu)體驅(qū)動(dòng)可用性。我們指出,災(zāi)難恢復(fù)測(cè)試是今年新調(diào)查的一個(gè)結(jié)構(gòu)體,用粗體文字標(biāo)記。帶箭頭的線旁邊有一個(gè)(-),表示兩個(gè)結(jié)構(gòu)體之間具有強(qiáng)烈的反向影響;例如,技術(shù)債務(wù)強(qiáng)烈地反向影響(或者說(shuō)降低)生產(chǎn)力。
你可能注意到兩個(gè)研究模型之間有一些重疊
這是因?yàn)閮蓚€(gè)目標(biāo)——SDO效能和生產(chǎn)力——在很多方面都有關(guān)聯(lián)。它們都致力于以卓越地、向組織和個(gè)人交付價(jià)值的方式制造和交付技術(shù)。我們?yōu)橹С周浖桓豆ぷ魉龅暮芏嗍虑?,?duì)于開(kāi)發(fā)和交付軟件的人員的生產(chǎn)力提升也是大有裨益的,這也是講得通的。然而,盡管它們相似,但它們?nèi)匀辉诙攘坎煌慕Y(jié)果,因此我們分別進(jìn)行分析。這樣一來(lái),他們就存在于兩種不同的研究模型中。
兩個(gè)研究模型的重疊部分告訴我們
> 明智地投資于SDO效能的提升可以減少精疲力盡,提高生產(chǎn)力也可以減少職業(yè)倦怠。這一結(jié)論對(duì)于組織和技術(shù)人員來(lái)說(shuō)應(yīng)該是鼓舞人心的,因?yàn)楣ぷ鞯男枨髸?huì)不斷增長(zhǎng)。我們注意到,良好的工作/生活平衡是減少職業(yè)倦怠的關(guān)鍵。
> 心理安全文化有助于SDO效能、組織效能和生產(chǎn)力,表明健康文化的成長(zhǎng)和培養(yǎng)會(huì)為組織和個(gè)人帶來(lái)好處。
> 在代碼可維護(hù)性、松耦合架構(gòu)和監(jiān)控方面的投資有助于支持SDO效能(通過(guò)持續(xù)交付達(dá)成)和生產(chǎn)力(通過(guò)減少技術(shù)債務(wù)達(dá)成),這突顯了良好工具和系統(tǒng)的重要性。
深圳青藍(lán)咨詢服務(wù)有限公司
電 話:0755-86950769
官 網(wǎng):www.qhqingxinjp.com
郵 箱:qinglan@shzhchina. com
地 址: 深圳市南山區(qū)高新南一道06號(hào)TCL大廈B座3樓309室
深圳地鐵1號(hào)線高新園站C出口