發布日期:2023-09-20 15:02:39
隨著數字化進程的不斷加速,傳統的IT架構“厚、重、笨”,需求支撐的周期長、速度慢、長鏈條、緊耦合、靈活性差,嚴重制約了業務創新模式的發展。基于此,五礦信托開啟探索企業級的DevOps建設,引入DevOps工具鏈加強流程體系建設,用統一的工具鏈實現穩敏雙態實踐并行,確保項目質量與管理的“可視、可管、可控、可信”。
01. 公司科技建設摸底,明晰改進方向與目標
兵馬未動、糧草先行。公司級DevOps體系建設過程中,首先要摸清科技建設情況,避免閉門造車。關于CI、CD、DevOps等情況,前期的摸底工作必不可少,經過調研,各項目組已經基本實現DevOps相關過程,相關工具鏈的使用也都有了一些積累,包括技術、規范、工具、理念等。但在以下方面還存在改進空間,這也是大多數公司的現狀和需要提升的方向。
1)效能管理:研發過程中沒有全流程度量統計,端到端的跟蹤報表需要手工出,沒有針對團隊、個人的數據分析,從而不好衡量團隊的產出。
2)需求管理:各個團隊各自管理自己的需求,工具沒有統一,知識庫、應用的制品庫等相對割裂,不方便統一管理。
3)研發過程:在研發過程中,特別是從代碼的編譯打包到環境部署階段,還有很多的人工操作,且單元測試或者自動化測試覆蓋率有待提升,測試用例未與需求做強關聯。
4)技術積累:對于相同領域和方向各個團隊的技術架構沒做統一,需要聚焦幾個框架才能保證后續研發的效率與質量,DevOps平臺工具都是各自搭建,沒有統一標準,在使用和維護方面投入較大。
02. 公司級DevOps 體系,落地最佳實踐
DevOps平臺要真正在企業內部落地需要從管理、規范、行業標準、實踐、平臺改進五個方面做好保障支撐。一是需要公司的支持,DevOps體系推廣第一要義是要有領導的支持,明方向,定原則。二是要有相關制度配合,建立完整的制度、指標和考核標準。三是通過行業權威認證、包括成熟度評級、各種相關行業業內組織標準,與業內深度交流。四是培訓實踐,在內部做好培訓,包括工程域、管理域,具體的工具鏈、敏捷工程實踐,理念、方法、技術等,并且還要通過試點實踐。五是對平臺及工程域、管理域相關制度持續改進,迭代過程中調整改進功能等。
在DevOps體系具體落地過程來看,首先從各個團隊中選取合適的項目進行試點,以便在實際操作中驗證這些策略的有效性和可行性。接著根據一期建設內容拆解需求任務并細化具體模塊能力實現,各團隊成員根據拆分任務劃分工作邊界,確保每個團隊都能專注于自己的領域。由DevOps團隊牽頭整體系統建設計劃,明確具體的分工責任人。制定項目計劃(包括進度計劃、風險計劃、溝通計劃)、周報制度和例會制度,成立小組,制定階段性的成果或者日作計劃,跨小組共同建設部分,做好配合協作制度。建立版本管理方案、代碼庫遷移方案、DevOps平臺權限管理方案、命名規范和用戶手冊等制度規范,成熟度模型評價體系等。
此外,落地時還強調了團隊之間的協作和溝通的重要性。通過制定項目計劃周報制度和例會制度等措施,確保團隊成員之間的信息共享和問題解決能夠及時有效地進行。同時,跨小組共同建設部分也有助于加強團隊之間的合作和交流。例如可以組織定期的技術分享會議或者團隊建設活動,以促進不同團隊之間的互動和知識傳遞。
最后,還要注重質量保證和持續改進,通過建立統一的質量和衡量標準,確保所有團隊都遵循相同的質量標準和最佳實踐,從而提高整體產品質量。同時,實施監控和度量工具,收集數據并對項目進行持續改進,使軟件生產活動能被持續度量、反饋、優化。例如,可以使用開源的監控工具來收集應用程序的性能指標和錯誤日志,并使用可視化工具來展示數據結果,幫助開發人員快速定位和解決問題。
03. 重塑研發管理效能,實現穩敏相融
五礦信托針對流程體系建設和平臺支撐能力進行了雙向探索。在流程體系建設上,搭建起統一的DevOps工具鏈;在平臺支撐能力方面,圍繞流程規范、工具能力、運營服務等構建起全新的DevOps能力體系。實踐中,五礦信托把工具體系相融合,通過端到端一體化方式推動穩敏雙態開發、測試及發布流程(如圖1)。以質量風控流程為例,基于需求管理、代碼管理和相關DevOps工具鏈集成,在代碼倉庫上,通過工作項目ID能夠與代碼進行關聯,并在需求管理工具上可以看到需求信息、開發信息和反饋信息、測試用例及一些Bug情況。
04. 貫徹工具平臺落地,提升研發效能
五礦信托通過組建虛擬團隊,拆解任務需求,細化成員分工,實現DevOps平臺在企業內部落地。在持續改進方面,通過DevOps平臺對研發全生命周期可控、可視,自行識別短板,進而持續迭代優化。同時,導入敏捷實踐、看板實踐和研發過程管理系統,實現對人員、團隊、組織的透明化管理;增加數字化分析能力,通過設定度量指標體系、提供組織級效能分析、提供對接外圍的數據接口等讓組織效能看得清;完善DevOps生態鏈,從衡量研發投入產出、生成版本發布計劃等環節提升平臺能力,形成最佳實踐,幫助企業各研發團隊更好地、更規范地去使用平臺,實現研發效能整體提升(如圖2)。
05. 統一DevOps 工具鏈管理,讓價值流真正流轉
DevOps平臺功能分為過程管理、持續交付、測試管理三部分,上有統一的平臺權限管理,下有統一的安全能力質量保證,做到從需求、研發、測試、部署,端到端的自動化流轉與全方位管理,讓價值流真正流轉起來。在實施中,五礦信托通過工具支撐敏捷管理項目流程、構建集成、部署等能力,實現流程編排自動化;統一管理測試用例,把測試管理環節納入需求交付整理流程,啟用自動化引擎指定執行測試腳本,精確度量,實時監控,提高測試有效性。
「DevOps平臺功能分為過程管理、持續交付、測試管理三部分,上有統一的平臺權限管理,下有統一的安全能力質量保證,做到從需求、研發、測試、部署,端到端的自動化流轉與全方位管理,讓價值流真正流轉起來。」
五礦信托申請演示