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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

SoFlu 軟件機器人有三大特性:

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

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

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

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

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