工欲善其事必先利其器-軟件開發的下一場生產力革命
如今,企業上云使用云已是常態。數據顯示,云將是軟件的普遍承載方式,到2025年80%的企業應用將運行在云中。不僅應用在云上,開發也在向云端遷移。
隨著云計算和容器等新技術不斷發展,軟件開發的生產模式發生了極大的變革。互聯網的迅速崛起,敏捷開發開始進入軟件產業,軟件開發模式已經由瀑布式流程向敏捷性開發模式轉變。在此之后,上述改進機制開始向下游延伸至IT運營領域,又出現了DevOps開發與運維相結合的模式。
而現在,軟件開發過程也被搬上云端,從原始的開發環境、地點都受到嚴格限制,到現在只要有網絡,就可以在任何時間、任何地點完成開發過程,開發者可以輕資產運行,又可以無痛協作,專注創新和完善產品。因此越來越多的開發者開始轉移到云端進行開發,軟件開發云的需求急劇攀升。
傳統軟件開發模式之痛
傳統軟件開發模式流程繁瑣復雜,部署維護低效,團隊協作壁壘等問題嚴重制約了軟件交付的效率和質量。
眾所周知,傳統軟件交付的是軟件包,開發周期長,產品發布周期在半年以上的比比皆是,比如銀行。其次,交付成本高,傳統軟件從代碼提交到成功部署,通常至少需要1-6個月時間,將復雜大型代碼部署到生產環境,給系統整合與運維都帶來了巨大挑戰,如兼容性問題,而且復雜的調試常招致開發運維相互指責。
如果測試中發現問題。開發者必須找出根源并修復這些問題。在某些情況下,特別是涉及非功能特性如安全、性能、可用性等方面的缺陷,可能需要做出架構上的調整,付出巨大代價。整合、測試、缺陷修補等活動天然具有較大不可預期性,還容易導致交付延期。
此外,國際化、跨地域團隊溝通協作多,項目可見性、同步性要求高,新技術、新語言學習曲線長,也會使得工具部署和維護低效、復雜。
Puppet的調查顯示,相比傳統開發模式的企業,采用DevOps開發的高效能IT企業產品發布頻率大幅領先,單位時間段內,發布次數是傳統企業的200倍,交付時間縮短2555倍,故障恢復時間縮短24倍,變更失敗率降低3倍。計劃外工作比傳統企業少了22%,而投入在創新上的時間比后者多了29%。這份數據在突顯DevOps價值的同時,傳統軟件開發模式的低效也揭露的淋淋盡致。
因此,解決傳統開發模式遇到的一系列問題,向DevOps、敏捷、精益等軟件模式轉型,提升企業IT部門的總體運作效率,快速響應用戶需求,提升競爭力,成為當前大多數企業最為迫切的需求。
DevOps一站式工具平臺的選擇
DevOps在國內認同度和關注度持續上升,變得越來越流行。因此,成為了不少企業解決傳統開發模式問題的優先選擇之一。不過DevOps雖好,但落地并不容易,尤其離不開相應工具平臺的支撐,畢竟工欲善其事必先利其器。
目前,網上DevOps工具非常多,有偏項目管理的,有偏代碼托管檢查的,也有自動部署的,監控分析的等等,大都比較分散單一,缺乏統一的一站式解決方案。而對大多數中小企業而言,恰恰需要的就是輕量化、服務化、社交化、智能化的一站式開發平臺,輕資產運行,又可以無痛協作,從而專注于核心業務創新。為什么這里說是中小企業而非大企業,因為大企業都有自己的工具研發部門,專門提供DevOps工具。
好在現在國內外一些云廠商已經開始提供這類的工具集。如AWS開發工具集、華為軟件開發云(DevCloud)、微軟VSTS(Visual Studio Team Services)、IBM Bluemix、百度效率云等。
讓企業在踐行DevOps開發模式縮短開發周期,提升開發質量時有了更多一站式DevOps開發云臺的選擇。例如華為軟件開發云,它是一款輕量級的DevOps工具,面向中小企業、初創公司、個人開發者提供包括項目管理、配置管理、代碼檢查、編譯構建、測試、部署、發布等端到端地覆蓋軟件生命周期的相關服務,采用按需計費。從了解到的1個實際案例看,某項目和軟件開發云合作后,項目的版本交付周期由以前的3個月縮短到1周,構建由之前的2個小時縮短至10分鐘,效果明顯。
小結
軟件企業向DevOps轉型并非一蹴而就,成為一個敏捷的軟件驅動型企業需要一套全新的工具集,然而只有新技術是不夠的,改造流程以加快速度才是重中之重,同樣重要的還有圍繞這一目標重組新的角色和團隊,這個過程可能是漫長的、持久的,但也是必須的!
而對DevOps有想法的企業,多半都是業務發展還不錯,但在開發和運維上都比較大的壓力的企業,那么,華為軟件開發云或許是一個不錯的選擇。