效能度量,對于DevOps研發團隊來說并不是一個陌生的話題。研發團隊都想要通過效能度量提升研發團隊的效率,打通研發管理閉環。
關于軟件研發效能度量,可以遵循《軟件研發效能度量規范》標準,在E3CI 軟件研發效能度量框架中,E3是指 Efficiency 效率、Effectiveness 效果、Excellence 卓越的組合, C 是指 Cognition 認知,I 代表Improvement 改進。E3是研發效能的核心,認知和持續改進的組合支持研發效能及提升,即:效能=認知+改進。E3CI度量指標集貫穿研發全流程,涵蓋研發過程端到端,包括從交付價值、交付效率、交付質量、交付成本、交付能力全維度定義研發效能。
(資料圖)
進行研發效能度量,其目標就是為了幫助DevOps研發團隊了解自身的工作效率和質量,及時發現問題并采取相應措施進行改進,以實現高效、高質量的產品交付,滿足業務需求,實現業務價值。
- 識別瓶頸:通過度量研發過程中的關鍵指標,可以及時識別生產效率的瓶頸和短板,從而有針對性地對研發流程進行優化。
- 監控進度:研發效能度量可以幫助團隊實時監控項目進度,發現問題和風險,并及時采取措施加以解決。
- 提高效率:通過度量工作量和工作效率,團隊可以識別工作流程中的低效環節,并采取相應的措施進行優化,提高工作效率。
- 提高質量:通過度量產品質量和測試覆蓋率等指標,可以發現產品質量問題,及時進行修復和改進,從而提高產品質量。
簡單“5步”,完成研發效能度量
要高效提升研發運維效能,做好DevOps體系化建設,沒有可靠的度量是無法實現的,效能度量的本質是對價值流動速度和質量的評價,因此,做好研發效能度量勢在必行。
那么如何進行研發團隊的效能度量呢?那就圍繞指標分為五大步驟展開。
1.確定指標:團隊和企業管理者要根據項目需求和團隊情況選擇合適的指標進行度量。
行業內有結構化的指標體系,從需求、設計、開發、測試、發布、運維等不同的階段,對應著不同的指標。但是需要提醒一點,搭建指標體系不是越全越好,而是要根據團隊所處的不同階段,遇到的不同問題,最主要的是想要通過指標解決哪些問題,然后進行指標的設計與體系的搭建。效能度量可以采用多種指標,可以分為質量、效率、成本、客戶滿意度等方面。
2.設定目標:團隊和企業管理者要共同設定目標,例如每個迭代的交付頻率、產品質量指標等。設定目標一定要遵循SMART原則:Specific(具體的):目標應該是具體且明確的,能夠清晰傳達出想要達到的結果,避免模糊和含糊不清的描述;Measurable(可衡量的):目標應該是可衡量的,可以使用數據和指標進行可視化,跟蹤進展情況,避免主觀性和無法量化的目標設定;Achievable(可達成的):目標應該是可達成的,要考慮到實際情況和可用資源,確保目標是可實現的,并且具有挑戰性和激勵性;Relevant(相關的):目標應該是相關的,與業務需求和戰略一致,能夠對實現業務目標產生正面影響,避免無意義的目標設定;Time-bound(有時間限制的):目標應該是有時間限制的,要設定明確的截止日期和時間表,以確保目標得到及時實現和跟蹤。
3.收集數據:團隊和企業管理者要共同收集數據,例如每個迭代的缺陷數量、交付時間等。收集數據有很多方法,可以通過一些工具獲取指標需要的數據,也可以通過腳本直連數據庫獲取相應的數據。眾安團隊搭建效能度量駕駛艙時,通過集智BI工具拉取數據源的數據,然后經過加工處理后進行可視化配置。
4.分析數據:團隊和企業管理者要對收集到的數據進行分析,找到問題和改進方向。
軟件研發效能的提升是復雜的,受到諸多因素的影響,因素與結果之間存在相關關系而不是因果關系。即使我們發現兩組數據之間有關聯,也不意味著其中一組必然會導致另一組。例如,如果某個團隊 “代碼技術債率”指標很高,一般情況下代表著代碼中存在的很多問題被暫時擱置,未來持續維護的成本和技術風險很大,那么從較長時間周期來看,很有可能 “交付周期”的指標會持續增長,即兩組指標之間存在相關性。但這并不是必然的因果關系,雖然技術債很多,但很有可能因為人員能力、突擊加班等其他因素暫時掩蓋了問題,表面上沖抵了這種趨勢。
5.反饋和改進:團隊和企業管理者要將分析結果反饋給團隊成員,共同討論改進方向并進行優化。研發管理者要通過度量大盤的指標數據進行下探分析,首先對數據進行多視角的分析與解讀,獲取有效洞察;進而結合其他關聯指標和調查方法,追問根因,定位效能瓶頸和優化機會;最終將這些洞見落地為明確、可執行、可驗證的改進方案,規范研發過程、建立起良好的研發文化。效能改進不能靠階段性沖刺。要達到有效且可持續的效能改進,需要將度量和改進的實踐融入日常研發流程,持續追蹤,持續改進。
在數字化時代的大背景下,信息技術是驅動企業發展的關鍵,研發效能已經成為企業的核心競爭力。堅持數據驅動,通過正確的效能度量方法,可以讓研發效能可量化、可分析、可改進、可提升。