不平凡軟件,始于2014
華為軟件開發云如何讓DevOps真正落地?
DevOps變革了開發與IT運維之間的工作流程和傳統衡量標準,這種強調信息相關者無縫銜接的工作能力,確保了軟件交付的高效,使產品推向市場更加快速。不僅如此,企業應用DevOps之后還可以提高產品質量,以及組織有效性。當然,要想實現這一切需要有可靠且深厚的技術平臺支持。對此,華云軟件開發云給出了答案。
DevOps的優勢很明顯,但如果仔細觀察,就會發現真正在企業落地的并不多。雖然云計算、容器、微服務等技術在逐漸成熟,但企業在業務交付時仍會面臨挑戰。
舉例來說:
1、交付頻率快,研發周期短,質量要求高
市場需求變化極快,需要將創意迅速轉變為產品,避免錯過機遇窗口,使得交付壓力大;同時需要按需發布,交付頻率高,同時保證市場可接受的質量;
2、跨地域多團隊協作多,效率亟待提升
產品交付團隊經常分布在不同的地域,而且通常聯合合作方進行產品的特性交付,不同團隊的產品支撐工具平臺不一致,難以滿足快速高質量交付的要求;
3、工具平臺的建立并持續演進,難以滿足安全與可靠及性價比的要求
企業發現基于開源工具或者商業工具建立工具平臺,需要專人維護,成本很高,可靠性保障難度大,與外部客戶進行協同,開放工具平臺又面臨安全風險。
DevOps概念從誕生至今已有8年時間,其不僅需要打通開發運維之間的部門墻,還要更多考慮到應用和服務的完整生命周期,實現自動化、跨團隊的線上協作。DevOps的核心實踐理念包括:文化(Culture)、自動化(Automation)、精益(Lean)、度量(Measurement) 、共享(Share),統稱為CALMS。然而,DevOps落地離不開標準化、自動化工具的支撐,以便能夠實現不同軟件交付團隊之間的全連接。
無論是縱向集成還是橫向集成,DevOps都需要通過工具鏈與持續集成、交付、反饋與優化進行端到端整合。華為基于二十幾年的研發實踐,并融合DevOps等理念方法,打造了軟件開發云服務,希望為企業提供一站式的云上開發工具平臺。據了解,華為開發云提供了項目管理、配置管理、代碼檢查、編譯構建、測試、部署、發布等端到端地覆蓋軟件生命周期的相關服務。
從技術層面來看,企業可以在軟件開發云上利用 “配置管理-代碼檢查-編譯-構建-部署-測試-發布”等服務,為產品版本集成發布可視化地創建流水線,本流水線包含多個階段(stage);在每個階段創建多個不同類型的任務(task),例如,代碼檢查任務、編譯構建任務等。
在代碼提交后,利用云上各服務的集群并發及加速能力,流水線的相關任務可以實現最大程度地并發,在小時級別自動化實現版本級集成發布,得到版本質量報告,并快速反饋給開發人員,以便進行快速修復,在開發人員修復版本后并再次進行流水線的集成發布。在緊急狀態下,還能實現版本的快速可靠回退。這樣一來,版本每周或每日構建成為可能,項目管理服務提供了敏捷式、社交化的項目管理方式,可與配置管理關聯,使得開發團隊有效協同,通過看板等各種圖表實時掌握項目進度和質量。
在實際使用過程中,以某個孵化器為例,在孵企業主要研發智慧城市解決方案相關的產品,多個公司經常會協同開發一款產品。每個公司使用不同的研發工具,沒有一個統一的研發工具平臺。為了解決瀑布模式難以快速迭代、跨地域多團隊協同、手工編譯構建周期長、不同團隊的工具平臺不統一等問題,選擇了華為軟件開發云進行項目聯合開發。在熟悉了DevOps研發模式、軟件開發云服務特性(例如流水線等)后,產品版本的集成發布由原先的1天縮短為30分鐘,整個項目的交付周期縮短到3個月。
總的來說,軟件開發云是華為企業云解決方案的重要組成部分,充分利用了華為企業云I層與P層的能力,提供了非常高的可靠性與安全性。未來,軟件開發云勢必將結合華為的業務方法論、工具以及實踐發展趨勢,推動服務演進。對于各個企業來說,可以利用軟件開發云的互聯網連接能力,安全可靠地進行協同開發,即開即用,實現DevOps研發模式的落地應用。
相關新聞換一組