現狀背景
會議電視產品,從立項到現在已經有十幾年的歷史,項目流程發展也在不斷改進提升,但是當前依然面臨的諸多問題。
需求評審跟蹤依然是通過excel+SVN的方式進行,導致跟蹤不及時且很難閉環管理;
迭代過程中代碼提交無評審,代碼錯誤、編譯錯誤等等不能提前發現,導致集成頻繁回退版本;
UT/FT/ST等測試無管理,都是各個小組單獨進行,版本無關聯性,測試結果也沒有集中管理,測試質量無法保證。
為了解決上述問題,我們引入了Devops工具鏈,整體改進上述流程中出現的問題。
解決方案
引入Devops工具鏈后,整個項目從流程上完成了閉環管理,項目的各個階段的都有專門的系統進行統一管理。工具鏈不管是在數據查詢、統計、追溯上還是業務閉環操作上都給出比較滿意的解決方案。整個解決方案流程如下。
自從項目引入敏捷后,工具鏈在我們項目的核心業務上起到至關重要的作用。wiki作為內容管理貫穿整個項目的始終,所有的項目文檔,會議紀要等等都是通過wiki進行記錄管理;TFS管理用戶故事、測試用例、測試過程等等,從需求到開發再到測試形成了統一的管理流程;GIT、Gerrit為代碼管理的核心工具,透過gerrit與CI的配合,提前發現代碼問題,提高了代碼管理效率;云CI為代碼評審,代碼質量檢查(如KW、復雜度等)、UT、FT等提供一個自動化的評審、檢查、測試的流程。與制品庫配合可以完成從代碼、測試到版本發布的全流程管理,與BDA系統配合可以完成研發過程的質量監管,以清晰的圖表展示研發過程數據統計;云測試,由于產品本身的特性只能在私有云里面進行自動化測試,所有的數據均通過云CI管理并上傳至相關的系統如BDA系統等。
實踐情況
解決方案中我們提出了明確的流程以及相關的工具,在實踐中我們將展示整個實踐過程具體操作以及相關的數據。
TFS輔助敏捷流程,跟蹤用戶故事、需求等,根據Feature下達任務計劃,完成項目任務跟蹤。
需求澄清,系統化的使用Confluence,及時快捷的對需求進行澄清
迭代開發,迭代開發很重要的一部分是代碼管理,使用GIT工具管理源碼,不僅提高代碼獲取效率,而且與Gerrit配合開啟代碼評審功能,提高合入效率。
持續集成,CI全流程囊括整個研發過程,從代碼提交/代碼檢查入庫、UT到集成版本構建、FT、入庫再到系統測試全流程管理。
整個云CI流程有幾個關鍵的CI流程,分別是VerifyCI、MergeCI以及DailyCI,關鍵CI流程的實踐如下:
1.VerifyCI
開發人員提交代碼后自動觸發CI流程,完成模塊版本的構建、代碼KW、Lizard檢查、UT、推送數據到看板系統并發送郵件到相關的開發人員以展示相關的編譯、檢查以及測試結果。
2.MergeCI
每天定時完成版本構建、全版本的KW,復雜度檢查、FT、推送數據看板并發送郵件到相關的人員以展示構建、檢查以及測試結果
3.DailyCI
每天定時完成ST測試,并把數據推送至看板系統,發送郵件展示測試用例詳細的執行結果:
所有的數據均有推送到看板系統,以圖表形式展示整個研發周期內的相關數據
FT數據,看板數據反映FT的測試用例總數、測試用例數、以及通過率數據。
KW,看板數據反映每個項目的KW的錯誤告警數,以及相關的告警消除趨勢
復雜度檢查,看板數據實時反映每個項目的Lizard復雜度告警數件
制品庫,每次MergeCI構建的版本,都會推送到制品庫上,供FT、ST測試使用
ST數據,看板數據反映ST的測試用例總數、測試用例數、以及通過率數據下
改進提效
會議電視引入Devops工具鏈后整個項目周期得到了有力的監管,并且很高的提高的項目運作效率,但是依然面臨的一些問題,依然有改進的空間,改進提效持續進行中。
針對相關的問題提出了一系列的改進措施。持續改進中,大量引進自動化工具,修改相關的流程。詳細改進對比如下:
編譯實踐長,工具鏈引入后通過工具系統的配合使得整個編譯消息提高了70%以上
代碼回退率高,是因為錯誤沒有在入庫之前發現導致,引入云CI、Gerrit之后,在代碼入庫之前會自動觸發代碼的相關檢查如編譯、KW、復雜度等等,檢查結果直接影響代碼是否能入庫,可以提前發現代碼問題,如下圖所示Verified +2表示該模塊完成的相關的檢查可以入庫.
代碼質量無量化,代碼寫的時候精簡,有無泄露等等問題以前是沒有辦法量化的,引入相關的工具后代碼質量可以詳細具體到每個方法
版本無統一管理,以前集成測試和系統測試版本是分開的,集成測試過程中版本編譯由集成測試完成,系統測試版本由技術部構建,引入制品庫后集成測試,系統測試,以及工程均由制品庫出版本,只是版本獲取方法由權限或者流程進行控制。
-
會議電視
+關注
關注
0文章
4瀏覽量
7939 -
CI
+關注
關注
0文章
14瀏覽量
11384 -
代碼
+關注
關注
30文章
4672瀏覽量
67778
原文標題:DevOps案例 | 會議電視X項目端到端案例
文章出處:【微信號:ZTEdeveloper,微信公眾號:中興開發者社區】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論