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