CDF全球調(diào)查:軟件交付性能停滯不前

轉(zhuǎn)載 網(wǎng)絡(luò)轉(zhuǎn)載 | 2022年04月25日
CDF全球調(diào)查:軟件交付性能停滯不前 ......

持續(xù)交付(Continuous delivery,CD)是一種軟件開發(fā)實(shí)踐,它使開發(fā)者能夠可靠、安全地發(fā)布小型、頻繁的軟件更新。不久前,持續(xù)交付基金會(Continuous Delivery Foundation ,CDF)發(fā)布了《持續(xù)交付狀態(tài)報告》。報告數(shù)據(jù)基于 SlashData 開展的三次 Developer Nation 調(diào)查,調(diào)查持續(xù)了12個月,覆蓋全球 5.5 萬多名軟件開發(fā)者。報告部分觀點(diǎn)如下:

一、 DevOps 實(shí)踐已經(jīng)較為普遍

截至 2021 年第三季度,僅四分之一 (26%) 左右的開發(fā)者沒有參與 DevOps 相關(guān)的活動,這表明,精益軟件交付實(shí)踐已經(jīng)被廣泛采用。雖然大多數(shù)開發(fā)者都參與了 DevOps 實(shí)踐,但只有極少數(shù)(僅 5%)的開發(fā)者將自己或他們的職位認(rèn)定為 DevOps 工程師/專家。

持續(xù)集成是最流行的 DevOps 活動,32% 的受訪開發(fā)者將持續(xù)集成作為其部署過程的一部分。緊隨其后的是持續(xù)部署,被 29% 的開發(fā)者使用。另外,44% 的人使用持續(xù)集成或持續(xù)部署。

只有 18% 的開發(fā)者同時使用持續(xù)集成和持續(xù)部署 ( CI/CD ) ,將代碼開發(fā)管道完全自動化到部署和操作中的還不到五分之一。報告認(rèn)為,目前仍處于過渡的早期階段,即從分階段的開發(fā)方法到完全精簡的軟件交付方法。

DevOps實(shí)踐廣泛應(yīng)用于軟件經(jīng)濟(jì)的各個部門,而不僅僅是以互聯(lián)網(wǎng)為中心的應(yīng)用程序或復(fù)雜的分布式系統(tǒng)。此外,嵌入式軟件項(xiàng)目與后端開發(fā)者一樣有可能從事 DevOps 活動。

即使是在實(shí)踐者最少的游戲開發(fā)領(lǐng)域,都有三分之二的開發(fā)者以某種方式參與了DevOps。

DevOps 在各種規(guī)模的企業(yè)/組織中很普遍,在 2人及以上規(guī)模的企業(yè)中,超過 80%的企業(yè)參與DevOps。

二、軟件交付性能停滯不前

該調(diào)查還從代碼更改的交付周期、部署頻率和服務(wù)恢復(fù)時間來了解當(dāng)前企業(yè)/組織的軟件交付性能。

結(jié)果發(fā)現(xiàn),優(yōu)秀的軟件交付吞吐量(用代碼更改的交付周期和部署頻率來衡量)還不是很普遍。14% 的開發(fā)者表示,從代碼簽入(check in)到成功運(yùn)行在生產(chǎn)線上,平均需要不到一天的時間。

在交付周期方面,表現(xiàn)最佳者(指交付周期少于一天),比例略有下降,從 17%(2020 年Q3)下降到 的14%(2021 年Q3)。

只有 11% 的人表示,他們每天都會定期將代碼部署到生產(chǎn)環(huán)境中。還有近三分之一的人表示,他們?nèi)匀皇謩訉⒋a部署到生產(chǎn)環(huán)境。

近一半的開發(fā)者表示,計(jì)劃外停機(jī)恢復(fù)服務(wù)不會超過一天。

交付周期小于1天的企業(yè)中,大型企業(yè)僅占13% ,而往年同期為 18%。相比之下,中型企業(yè)占比從 16% 下降到 14%,小型企業(yè)中占比從 9% 下降到 17%。

軟件交付的穩(wěn)定性(以計(jì)劃外中斷服務(wù)后恢復(fù)所需的時間來衡量)顯示出類似的情況正在下降。表現(xiàn)最佳者(指1小時內(nèi)恢復(fù)服務(wù))的比例在 12 個月內(nèi)從 17% 下降到 13%,超過一半的受訪者表示,需一天以上的恢復(fù)時間。在這一指標(biāo)中,表現(xiàn)不佳的往往是中型企業(yè)。

人們普遍認(rèn)為,增加吞吐量會對軟件交付過程的可靠性產(chǎn)生負(fù)面影響。然而,研究卻表明:速度和穩(wěn)定性往往是齊頭并進(jìn)的。

在交付周期方面表現(xiàn)最好的人(約占 30%),同樣也在軟件交付穩(wěn)定性方面表現(xiàn)最好。相應(yīng)地,在軟件交付吞吐量方面表現(xiàn)不佳的人中,只有 6%在穩(wěn)定性方面表現(xiàn)良好。

三、可利用工具提高軟件交付性能

CD Foundation 的執(zhí)行董事 Tracy Miranda 認(rèn)為,一方面是軟件系統(tǒng)變得非常復(fù)雜,另一方面是開發(fā)人員普遍缺乏經(jīng)驗(yàn)。她補(bǔ)充說,經(jīng)驗(yàn)在提高軟件交付的速度和可靠性方面發(fā)揮著重要作用。

持續(xù)交付與持續(xù)集成這兩種 DevOps 實(shí)踐是互補(bǔ)的,但持續(xù)交付需要一定程度的工程專業(yè)知識,這正是很多開發(fā)者缺乏的。調(diào)查顯示,只有不到四分之一 (23%) 的受訪者參與了基礎(chǔ)設(shè)施配置和管理;相比之下,有近三分之一 (32%) 涉及了應(yīng)用程序和基礎(chǔ)設(shè)施監(jiān)控;此外,只有 20% 的人參與了創(chuàng)建自動化測試?偟膩碚f,調(diào)查結(jié)果表明,在將 DevOps 實(shí)踐的責(zé)任進(jìn)一步轉(zhuǎn)移給開發(fā)者方面,還有很長的路要走。

事實(shí)上,為了解決這些問題 ,越來越來的 DevOps 平臺工具正在涌現(xiàn),如 JIRA、Maven、Ansible 等,覆蓋從規(guī)劃、編碼、構(gòu)建、測試、發(fā)布、部署和維護(hù)的軟件生產(chǎn)全過程。

但市面上的大部分工具能解決的都只是一部分問題,無法從根本上解決DevOps的落地問題。因此,近年來上也出現(xiàn)了一些開箱即用、集成功能的 DevOps 自動化平臺,最近業(yè)內(nèi)討論度很高的飛算 SoFlu 軟件機(jī)器人,就是一款覆蓋軟件全生命周期的自動化開發(fā)工具。開發(fā)者只需要輸入相關(guān)指令,平臺就能實(shí)現(xiàn)前后端全自動開發(fā)、全自動測試、全自動運(yùn)維,做到一“人”全棧解決:后端開發(fā)、前端開發(fā)、測試、運(yùn)維。對于有個性化開發(fā)需求的企業(yè)來說,該平臺還支持用戶開發(fā)自定義組件,進(jìn)一步提高開發(fā)效率。依靠平臺提供的自動化、可視化開發(fā)能力,可以大大降低開發(fā)門檻,配置靈活,非資深的開發(fā)人員即可輕松上手,可以達(dá)到一個 ID 相當(dāng)于一個10人科技團(tuán)隊(duì)的效果。

對于DevOps實(shí)踐中亟待解決的自動化測試不足的問題,飛算SoFlu軟件機(jī)器人全自動測試平臺做到隨開發(fā)平臺聯(lián)動,開發(fā)測試一鍵關(guān)聯(lián),自動生成測試用例完成軟件測試。一方面,軟件質(zhì)量可以通過工具、流程和管理予以保障,而不再依靠有豐富經(jīng)驗(yàn)的軟件工程師。另一方面,可以進(jìn)一步降低溝通成本,提升溝通效率,讓軟件測試更加高效便捷。

另外值得一提的是,發(fā)布以來,飛算SoFlu軟件機(jī)器人始終保持著持續(xù)更新,大大小小的迭代升級共計(jì)50余次。例如,近期發(fā)布的版本更新中一大亮點(diǎn)就是新增了對接 Jenkins 的功能,快速進(jìn)行 CI/CD, 實(shí)現(xiàn)敏捷開發(fā)。


用戶名:  密碼:  沒有注冊?
網(wǎng)友評論:(請各位網(wǎng)友遵紀(jì)守法并注意語言文明,評論僅供參考不代表本站立場)