為什么說DevCloud是敏捷和DevOps落地神器?
“人類生存于一個虛擬的、數字化的生存活動空間,在這個空間里人們應用數字技術從事信息傳播、交流、學習、工作等活動,這便是數字化生存。”--尼葛洛龐帝!
21年前,尼葛洛龐帝在寫下《數字化生存》一書時,誰都不會想到,書中所描繪的未來生活方式與今天如此相似,預言已然成真。
如今,數字化轉型已經成為席卷全球的新趨勢,人人都在討論數字化轉型,因為數字化轉型并非是一種選擇,而是唯一出路。
據Gartner的預測,到2017年25%的公司將因數字化能力不足而丟失業務。IDC的預測,到2027年,標準普爾500公司中將有75%被頂替出局。普華永道在調研了全球350位CEO后發現,80%的CEO認為企業數字化轉型是***考慮要務。
當年諾基亞在最風光時期市值高達2540億美元,讓人大跌眼鏡的是,最終卻被微軟以70億美元左右的價格收購。究其原因,只因為這個世界在變,它卻沒有緊跟數字化轉型的腳步。
顯然,企業必須確保比競爭對手更加敏捷、快速地響應迅速變化的數字化市場,才能趕上或者超過競爭對手,才可以在新時代下的市場中稱雄。如果企業忽視數字化的作用,那么它將不可避免的陷入被淘汰的命運。
敏捷和DevOps是數字化轉型的關鍵
什么才是“數字化轉型”的正確姿勢?CA Technologies的一項***全球調查結果顯示,89%的中國大陸受訪企業同意敏捷及DevOps方案是致勝數字化轉型的關鍵。
當前,數字化大時代下企業面對的商業環境瞬息萬變,各種新技術突飛猛進的同時,新業務形態越來越復雜、需求變化越來越快、軟件規模越來越大、交付周期越來越短、開發和維護成本越來越高,產品交付的風險急劇增加,傳統研發模式無法適應快速變化的市場需求。
為了應對這些挑戰,業界軟件開發模式經歷了持續的改進和變遷,從20世紀60年代作坊式開發,到80年代過程控制模型,到2001年敏捷、DevOps模式探索。
敏捷開發就是最適合應對轉變的***軟件方法論,并被微軟、華為、BAT等公司的開發人員廣泛使用。而整合企業IT部門的軟件開發與運維,實現開發與運維的一體化DevOps,則變得比以往任何時候都來得重要。
敏捷和DevOps落地需要成熟工具的幫助
雖然敏捷和DevOps是近幾年來軟件開發領域最火的詞,但網上搜索,其實真正成功的案例并不多。顯然大多數企業還徘徊在外,不得其門而入。
總結各種失敗的原因,要推動敏捷和DevOps的落地生根,不僅要有相融的企業文化、領導支持、客戶配合,還需要一系列成熟的工具平臺來幫助企業的轉變,否則數字化轉型就只能是空中樓閣。
目前,網上敏捷和DevOps工具非常多,但大都比較分散單一,缺乏統一的一站式解決方案。不過,好在去年開始,國內企業終于不再缺席這個領域了。華為軟件開發云(DevCloud)就正是這樣一個工具平臺。
眾所周知,作為排名第129位的世界500強公司,華為在研發管理方面非常領先,而DevCloud正是基于華為近30年的研發實踐,結合敏捷、精益、DevOps等先進研發理念,面向中小軟件企業、軟件外包企業、雙創企業、互聯網企業、高校和廣大的軟件開發者提供的一站式云端DevOps平臺。這套工具可以大幅度提升軟件研發的效率:以前華為每個月1億行代碼的編譯時間,由原來的25分鐘縮短到7.5分鐘,版本級的編譯速度也由94分鐘縮短到31分鐘。
從產品層面來看,軟件開發云提供了“項目管理-配置管理-代碼檢查-編譯構建-部署-測試-發布”等全生命周期服務,不僅能幫助企業實現一次開發、快速部署、快速迭代、快速反饋、持續開發集成與發布、多版本共享等數字化轉型需要的敏捷開發能力,還能讓企業獲得開發與運維的高效融合,從而實現真正的開發與運維一體化,即DevOps,是真正的一站式服務。
DevCloud上敏捷和Devops特性的具體表現
說了這么多,DevCloud到底提供了哪些手段來保證企業能夠實現敏捷/Devops開發?這是個關鍵性的問題,而回答這個問題需要從華為敏捷項目管理實踐說起。
(注:PD,是Project Director的縮寫,項目負責人)
通常我們熟知的敏捷開發流程可劃分為準備、計劃、開發、反饋四個階段。
一、準備階段(可選敏捷模式):使用軟件開發云為敏捷項目管理工具,項目的開發流程可選創建“Scrum流程”項目或“精簡流程”項目兩種。精簡流程項目是比敏捷模式更簡潔的模式,適合小、微團隊和個體開發者。
二、規劃階段(Story劃分):Story劃分是敏捷開發的標志之一,一個需求的接收,就是從Story的劃分開始。Story劃分并不是告訴開發人員一個需求怎么做?更多的是告訴開發人員一個需求為什么要做?需要做成什么樣?實現什么樣的價值。
軟件開發云支持“Story” 創建,“項目規劃”下創建的“Story”會同步到“Backlog”的需求列表中。在每個Spring啟動前,按照優先級排序的Story制定迭代計劃。
三、開發階段(代碼質檢、自動化持續交付):軟件開發云可在線進行多種語言的代碼靜態檢查、代碼安全檢查(如未授信訪問)、編碼問題(如空指針引用)、圈復雜度、重復率、編程風格,只有在問題清零才允許構建出包。
與傳統敏捷模式強調持續構建CI不同的是,融合了DevOps理念的新型敏捷模式,通過云端自動化的持續交付流水線,實現持續構建、持續測試(功能、接口、性能、可靠性等,據說能實現100%自動化)、持續部署(包括腳本自動下發、比對、藍綠部署)、持續發布(灰度發布)、持續反饋,可將Ops端手工操作的時間減少80%,全功能團隊可以聚焦于業務分析、開發交付及運營上,顯著提升效率和產品質量。
代碼提交時按照規范備注Story ID,即可將代碼關聯到對應需求上。創建測試用例和缺陷時,也需關聯需求,這樣就實現了“需求-代碼-用例-缺陷”的雙向追溯。
四、反饋階段(質量回溯):通常反饋階段主要開展驗收和回顧活動。這里需要重點提到質量回溯會議,對應于敏捷迭代回顧會議,是華為持續改進的實踐精華。
質量回溯,這個詞,在華為是一個高頻的詞匯,華為為了持續改進質量管理體系、提高客戶的滿意度,在公司內部提出了質量回溯的概念。
質量回溯重點在于分析問題根因,并識別出管理、流程、技術、工具上可落地的改進點。這些改進點每一個都必須符合Smart原則,是可落地、可執行的,不能出現大話空話套話。而且這些問題都要求最晚在下一個迭代中,執行落地,以避免問題再次出現。
小結
總的來說,企業數字化轉型,關鍵就在于敏捷和DevOps的落地。在工具平臺選擇上,相比企業基于開源工具或者商業工具建立工具平臺,不僅成本高昂,可靠性難以保障,還存在安全的隱患。DevCloud對中小企業而言,顯然會是一種更好的選擇。
不過,雖然軟件開發云是華為基于本身長期實踐的成功結晶,是神器級工具平臺。但是,并不是使用了平臺,就可以期待奇跡的發生,它畢竟只是個工具。
敏捷和DevOps的落地是需要企業做出真正的組織變革。否則敏捷和DevOps也就無法實現。
據悉,未來幾年,華為將重點推進軟件開發云3個“1”工程落地,3個“1”指的是服務100萬個軟件開發者、服務于10萬家軟件企業來使用軟件開發云、服務1000家院校、培訓機構。
就華為實力及影響力而言,這顯然并非太困難的事兒。也許未來某一天,華為軟件開發云真會成為國內企業級主流軟件開發工具。