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