一站式 DevOps 平臺,讓開發(fā)大不同

DevOps 是一種重視 “軟件開發(fā)人員(Dev)” 和 “運(yùn)維技術(shù)人員(Ops)” 之間溝通合作的文化、運(yùn)動或慣例,是軟件開發(fā)領(lǐng)域最近十年來興起且當(dāng)下普遍成熟運(yùn)用的方法論。它和傳統(tǒng)的瀑布模型、螺旋模型等理念不同,其核心是 “敏捷”,結(jié)果是自動化。DevOps 是敏捷開發(fā)的延伸,通過 “軟件交付” 和 “架構(gòu)變更” 的流程自動化,使構(gòu)建、測試、發(fā)布軟件能夠更快捷、頻繁并且可靠。

傳統(tǒng)的軟件開發(fā)組織結(jié)構(gòu)中開發(fā)、運(yùn)維和質(zhì)量保障部門之間相互獨(dú)立、各司其職。隨著需求膨脹和響應(yīng)迭代頻率的加劇,行業(yè)對敏捷開發(fā)的要求更高,不僅要做到交付快捷頻繁,而且得保證質(zhì)量可靠,這就對軟件研發(fā)工具提出了更高的要求。

一個明顯的趨勢是,軟件研發(fā)工具正在從單個工具逐漸轉(zhuǎn)向為一站式 Devops 平臺。

一站式 Devops 平臺至少要滿足如下三個最基本的條件:

•功能矩陣完整,能覆蓋研發(fā)過程的主要部分

•完善的研發(fā)數(shù)據(jù)鏈路和功能整合能力

•系統(tǒng)間的高度自動化能力

有了這三方面最基本的保證,一站式 Devops 平臺才能發(fā)揮最大價值。

以代碼評審為例,工程師發(fā)起代碼評審時,系統(tǒng)界面自動將評審的研發(fā)數(shù)據(jù)鏈路信息(代碼 Diff 對比、評論、push、commit、關(guān)聯(lián)的需求、關(guān)聯(lián)的測試、流水線構(gòu)建、代碼掃描等)關(guān)聯(lián)并顯示到評審功能界面上。評審發(fā)起人和評審者可以基于這些信息進(jìn)行高效的數(shù)字化研發(fā)協(xié)同。

具體來說,在這個過程中:

①工程師進(jìn)行研發(fā)工作的各流程時,可快速完成功能切換,無需跨多系統(tǒng)操作,使用高效,節(jié)約時間。

②將代碼評審的研發(fā)數(shù)據(jù)鏈路進(jìn)行功能級集成,不管是評審發(fā)起者還是評審人,都不再需要到各離散系統(tǒng)中去尋找相關(guān)信息,在評審界面各種信息應(yīng)有盡有,甚至可以直接在當(dāng)前界面進(jìn)行操作,這才是數(shù)字化研發(fā)協(xié)同能夠得以真正實現(xiàn)的關(guān)鍵核心,從而讓大幅度提升效能變?yōu)楝F(xiàn)實。

③當(dāng)代碼評審創(chuàng)建時,代碼掃描、自動化構(gòu)建等各種相關(guān)系統(tǒng)立即被自動觸發(fā)與執(zhí)行,不需要復(fù)雜配置,實現(xiàn)全過程高度自動化。不僅如此,這種高度的自動化直接帶來了強(qiáng)大的質(zhì)量內(nèi)建和左移能力。

此外,一站式 Devops 平臺還具備如可視化能力、可追溯能力、可度量能力等,直接讓研發(fā)團(tuán)隊數(shù)字化協(xié)同水平上一個大臺階。

對技術(shù)背景雄厚的企業(yè)來說,自研 DevOps 平臺工具也是一種選擇,但這一平臺的開發(fā)需要很大的投入。以微軟的 Azure DevOps 為例,從微軟 2005 年正式對外發(fā)布產(chǎn)品化 Team Foundation Server(Azure DevOps 前身)開始,經(jīng)歷了 17 年的不斷開發(fā)與優(yōu)化,才有了目前國際市場上被廣泛認(rèn)可的 Azure DevOps。在此期間 Azure DevOps 為了適應(yīng)不斷變化的軟件研發(fā)管理實際要求,也經(jīng)歷了數(shù)次大的技術(shù)調(diào)整與重構(gòu)。由此可見想一蹴而就地研發(fā)一款優(yōu)秀的 DevOps 產(chǎn)品基本是不可能的。

雖然目前市場上有很多 DevOps 產(chǎn)品,但是或多或少會有一些開源工具的影子,有些干脆就是基于開源工具套了一個殼子。這種方式可以讓產(chǎn)品快速投入使用,但是同時也會有很多的問題。比如:

技術(shù)封裝不到位:這類產(chǎn)品的最大特點就是只是對開源產(chǎn)品進(jìn)行類簡單地封裝,但由于封裝得不到位,導(dǎo)致了在運(yùn)行自開發(fā)產(chǎn)品的同時,需要維護(hù)底層的開源產(chǎn)品。也有一些產(chǎn)品,在基于開源產(chǎn)品進(jìn)行優(yōu)化時反而降低了開源產(chǎn)品具備的優(yōu)秀能力,提高了使用難度,這就有點兒得不償失了。

流程管理模式僵化:DevOps 平臺需要具備的研發(fā)流程管理,配置管理,自動化流水線,制品管理,環(huán)境管理等重要模塊功能中,除了研發(fā)流程管理,其他的主要功能每個產(chǎn)品的差異不是很大。最能體現(xiàn)產(chǎn)品特色的就是研發(fā)流程管理。但是很多產(chǎn)品在設(shè)計這部分時,都只支持敏捷、看板或者帶有自管理方式的流程。研發(fā)流程上每個企業(yè)都或多或少地存在差異,尤其是在一些中大型的軟件研發(fā)部門或企業(yè)中,固化的流程管理方式很難適配所有團(tuán)隊。

擴(kuò)展性差、定制化強(qiáng):很多 DevOps 產(chǎn)品是都支持企業(yè)級用戶的,但往往在適配企業(yè)用戶時需要對現(xiàn)有產(chǎn)品進(jìn)行定制才能將企業(yè)管理流程落地。定制化方式往往僅限于基于現(xiàn)有產(chǎn)品的定制化開發(fā)。其實基于產(chǎn)品的定制化開發(fā)應(yīng)該是最后才考慮的,否則會導(dǎo)致后期維護(hù)成本高,同時會給版本升級,產(chǎn)品功能迭代帶來諸多質(zhì)量問題。

管理維度能力較強(qiáng),工程維度專業(yè)度不足:正確的做法應(yīng)該是平臺工具從管理維度上覆蓋軟件研發(fā)的所有過程,從工程維度上有的 DevOps 平臺產(chǎn)品可以覆蓋軟件研發(fā)的主要過程,但是很多產(chǎn)品在設(shè)計的時候并沒有考慮到從工程維度的版本交付維度進(jìn)行管理,這導(dǎo)致了在當(dāng)前軟件研發(fā)過程中很多 DevOps 平臺產(chǎn)品都是項目 / 系統(tǒng) / 團(tuán)隊范圍內(nèi)的研發(fā)管理,但是由于很多企業(yè)的不同產(chǎn)品間是存在耦合的,很多時候需要不同系統(tǒng)協(xié)同開發(fā)與發(fā)布,而很多 DevOps 平臺產(chǎn)品對跨系統(tǒng)支持得并不好。

可度量設(shè)計缺失、數(shù)據(jù)分散:有些 DevOps 平臺的研發(fā)數(shù)據(jù)分別存儲在不同功能模塊中,各個模塊數(shù)據(jù)沒有聯(lián)系,這種情況尤其體現(xiàn)在基于開源產(chǎn)品的封裝式產(chǎn)品上;有些則無法簡單地定制化度量報表。

一站式 DevOps 工具如此之多,應(yīng)該怎么選呢?正所謂 “試玉要燒三日滿,辨材須待七年期”,所以歷經(jīng)六七年時間打磨的 SoFlu 軟件機(jī)器人才能在眾多 DevOps 開發(fā)工具中脫穎而出。它是一款覆蓋軟件全生命周期的自動化開發(fā)工具,包含后端全自動開發(fā)平臺、前端全自動開發(fā)平臺、全自動測試平臺、全自動運(yùn)維平臺。

SoFlu 軟件機(jī)器人有三大特性:

可視化:SoFlu 軟件機(jī)器人擁有可視化開發(fā)界面,用戶利用簡單的流程圖就能分析業(yè)務(wù)邏輯,拖拽組件就能完成軟件開發(fā)。不論是專業(yè)的開發(fā)人員,還是沒有編程基礎(chǔ)的普通人,都可以創(chuàng)建復(fù)雜程度不同的軟件,自動化開發(fā)流程可以滿足加速數(shù)字化轉(zhuǎn)型的業(yè)務(wù)需求。平臺簡單易上手,極大地降低了開發(fā)門檻和人力資源投入。

自動化:自動化是提高軟件開發(fā)效率的保證。不論是開發(fā)、測試、運(yùn)維,都能實現(xiàn)自動化。以后端開發(fā)為例,連接數(shù)據(jù)庫后,平臺自動生成庫中所有表的基本接口和 SQL 語句,開發(fā)效率提升 300%,時間成本降低 10 倍。此外,項目測試時,平臺能自動識別所有變動的接口,自動查找接口關(guān)聯(lián)的所有測試用例進(jìn)行精準(zhǔn)回歸測試。

全棧一體化:一站式 Devops 平臺不是簡單的菜單堆積,不是系統(tǒng)的簡單集成,也不是過 webhook 或者插件,能實現(xiàn)幾個系統(tǒng)之間簡單的信息傳遞和自動化觸發(fā),而是像 SoFlu 軟件機(jī)器人一樣,全棧一體化,將軟件開發(fā)、測試、運(yùn)維全部聯(lián)通,并且自動化執(zhí)行,無需考慮與第三方平臺的集成成本。比如,由于測試平臺關(guān)聯(lián)了前后端開發(fā)平臺,一旦開發(fā)環(huán)節(jié)有所變化,測試平臺可以生成自動化的測試腳本,實現(xiàn)精準(zhǔn)回歸測試。SoFlu 軟件機(jī)器人的全自動運(yùn)維平臺提供 170 個接口,方便用戶精準(zhǔn)定位問題,極大提升運(yùn)維效率。

而且,SoFlu 軟件機(jī)器人已經(jīng)有了成功的案例。它曾幫助國有企業(yè)中石油開發(fā)一個大型電商平臺,在 5 個 SoFlu 軟件機(jī)器人的協(xié)助下,中石油僅僅投入 9 人團(tuán)隊 45 天就完成了平臺的重構(gòu)及上線。而此前,中石油曾聘請外部廠商,組建了一個近二十人的開發(fā)團(tuán)隊,花了約一年的時間才勉強(qiáng)將該電商平臺完成,且上線后,出現(xiàn)了系統(tǒng)運(yùn)行不穩(wěn)定、信息安全存在隱患等諸多問題??梢哉f,電商平臺能順利上線, SoFlu 軟件機(jī)器人在其中起到了關(guān)鍵性的作用,不僅明顯降低了項目開發(fā)難度,提升開發(fā)效率,還極大地為企業(yè)節(jié)省了人力成本和資金投入,真正實現(xiàn)了 “一人一項目,十人抵百人”。

(免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請進(jìn)一步核實,并對任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對有關(guān)資料所引致的錯誤、不確或遺漏,概不負(fù)任何法律責(zé)任。
任何單位或個人認(rèn)為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識產(chǎn)權(quán)或存在不實內(nèi)容時,應(yīng)及時向本網(wǎng)站提出書面權(quán)利通知或不實情況說明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關(guān)文章源頭核實,溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。 )