研發(fā)效能,我們?cè)趺春饬浚?/h1>更新時(shí)間:
作者:洪永潮|云效研發(fā)效能專家、李田莉|云效效能洞察負(fù)責(zé)人
作為 CTO 或企業(yè)管理者,我們?nèi)绾稳チ私夂秃饬垦邪l(fā)團(tuán)隊(duì)的研發(fā)效能呢?
作為 PMO 和效能負(fù)責(zé)人,我們?cè)搹哪膸讉€(gè)維度來回答關(guān)于研發(fā)效能的問題呢?
我們帶著這兩個(gè)問題進(jìn)入到效能分析的場景,聊一聊我們是如何通過效能分析,幫助企業(yè)管理者透明化研發(fā)效能水平和變化趨勢,分析效能問題根因、指導(dǎo)改進(jìn)行動(dòng)、衡量改進(jìn)效果。
我們可以從 3 個(gè)維度衡量和分析團(tuán)隊(duì)的研發(fā)效能:產(chǎn)能、效率和質(zhì)量,在分析的過程中,我們可以重點(diǎn):
看交付速率:單位時(shí)間內(nèi),團(tuán)隊(duì)能夠交付多少需求,即需求交付的吞吐量;
看響應(yīng)能力:需求從提出到交付上線的時(shí)間長短,即需求交付周期;
看交付質(zhì)量:交付過程中缺陷發(fā)現(xiàn)和修復(fù)的及時(shí)性,以及缺陷數(shù)量的多少。
看交付速率
在效能分析場景的報(bào)表中,通過「需求交付速率」指標(biāo)卡,我們可以:
看到在單位時(shí)間內(nèi)的需求交付量,及所選時(shí)間段內(nèi)平均單位時(shí)間需求交付量;
看到需求交付速率趨勢,根據(jù)近期交付量來合理安排團(tuán)隊(duì)將來的交付節(jié)奏和對(duì)外的承諾。
指標(biāo)卡中數(shù)據(jù)含義
需求交付速率:橫坐標(biāo)為時(shí)間,以周為單位,縱坐標(biāo)是需求的數(shù)量(個(gè)),柱子高低代表一周交付需求數(shù)量的多少,柱子的顏色分布分別對(duì)應(yīng)交付周期的長短分布。
注:按需求個(gè)數(shù)統(tǒng)計(jì)的方式,因需求大小不一致會(huì)出現(xiàn)一些統(tǒng)計(jì)偏差,因此期望做需求交付統(tǒng)計(jì)時(shí)能夠?qū)⑿枨罅6炔鸱值南鄬?duì)較小且均勻。
在「需求交付速率」指標(biāo)卡中,我們可以深入分析:
1.根據(jù)團(tuán)隊(duì)交付速率,評(píng)估團(tuán)隊(duì)交付能力
我們可以根據(jù)團(tuán)隊(duì)近期的交付速率,預(yù)測團(tuán)隊(duì)將來的交付速率,以便更好地安排團(tuán)隊(duì)未來可接納需求的工作量。比如最近 6 周,每周交付需求數(shù)量為 10,12,15,13,11,17,平均值為 13,我們可以預(yù)測團(tuán)隊(duì)每周可交付需求數(shù)量在 13 個(gè)左右,當(dāng)我們知道這個(gè)數(shù)據(jù)時(shí),可以更好的安排需求交付的節(jié)奏和時(shí)間,并對(duì)外部承諾。
2.通過觀測發(fā)布頻率,推進(jìn)團(tuán)隊(duì)持續(xù)交付
如果每周都有柱子,說明每周都有發(fā)布,如果柱子有間隔性,即每兩周有一個(gè)柱子,說明是兩周一次發(fā)布,以此類推。
看響應(yīng)能力
在效能分析場景的報(bào)表中,通過「需求交付分布」、「需求累積流圖」指標(biāo)卡來看響應(yīng)能力。
首先,我們先看一下「需求交付分布」,我們可以:
看到各需求上線時(shí)間的分布情況,反映團(tuán)隊(duì)的需求發(fā)布頻率;
看到需求交付周期的趨勢,反映團(tuán)隊(duì)對(duì)需求響應(yīng)能力及變化趨勢;
通過歷史數(shù)據(jù)分析,預(yù)測將來的響應(yīng)能力。
指標(biāo)卡中數(shù)據(jù)含義:
需求交付分布,也叫需求控制圖,橫坐標(biāo)為時(shí)間,縱坐標(biāo)為需求交付周期(天),圖中:
圓點(diǎn):代表一個(gè)已交付的需求,它所在的橫坐標(biāo)為交付時(shí)間,縱坐標(biāo)為該需求交付時(shí)長;
折線:代表需求交付周期的滾動(dòng)均值,取該點(diǎn)以及前后各1/3/5/7/9 點(diǎn)(隨區(qū)間事項(xiàng)數(shù)變動(dòng))的平均值;
面積:藍(lán)色陰影區(qū)域代表滾動(dòng)標(biāo)準(zhǔn)差,即實(shí)際數(shù)據(jù)與滾動(dòng)平均值的偏差量;
橫線:所選時(shí)間區(qū)間內(nèi),需求交付周期的平均值。
在看到「需求交付分布」的數(shù)據(jù)時(shí),我們可以從 5 個(gè)方面進(jìn)行理解和分析:
1. 縱向上,交付需求的圓點(diǎn)越向下越好,反映出周期時(shí)間越短、響應(yīng)能力越快,可預(yù)測性越好;
2. 橫向上,交付需求的圓點(diǎn)分布越密越好,反映出需求在頻繁地交付,即發(fā)布頻率越高;
3. 橫向上,交付需求的圓點(diǎn)分布越均勻越好,反映出需求在持續(xù)穩(wěn)定地交付,更趨向于持續(xù)交付;如果圓點(diǎn)分布間斷而交付集中,可反映出是批量地交付需求;
注:每個(gè)批量的間隔時(shí)間比較長(譬如2周或1個(gè)月以上),可采取減少需求進(jìn)出的批量和增加發(fā)布窗口的措施。
4. 交付周期線,代表在所選時(shí)間段內(nèi),交付周期的一個(gè)基本水位,該水位越低越好;
5. 動(dòng)均值折線,展示需求交付周期的變化趨勢,期望是有往下走的趨勢,代表團(tuán)隊(duì)的響應(yīng)能力在持續(xù)地提升。
「需求交付分布」可以反映出團(tuán)隊(duì)是否已具備持續(xù)快速交付需求的能力,幫助團(tuán)隊(duì)回顧和分析隊(duì)的效能情況,并根據(jù)歷史效能情況,設(shè)定團(tuán)隊(duì)的效能目標(biāo)。其次,對(duì)業(yè)務(wù)人員來說,可隨時(shí)查看交付團(tuán)隊(duì)的效能情況,預(yù)測需求的上線時(shí)間。
「需求交付分布」是針對(duì)交付的結(jié)果進(jìn)行度量,如果需要對(duì)整個(gè)交付過程進(jìn)一步了分析,我們可以重點(diǎn)關(guān)注「需求累積流圖」,可綜合反映了前置時(shí)間(交付周期)、在制品數(shù)量、交付速率等指標(biāo),并體現(xiàn)了團(tuán)隊(duì)協(xié)作、計(jì)劃和交付需求的模式,常用以發(fā)現(xiàn)系統(tǒng)性的改進(jìn)機(jī)會(huì),下面就對(duì)該圖進(jìn)行進(jìn)一步介紹。
通過「需求累積流圖」指標(biāo)卡,我們可以:
看平均交付周期:需求在各階段的停留時(shí)長之和,指需求交付之前,從開始到結(jié)束所經(jīng)歷的時(shí)間;
看在制品數(shù)量:需求在各階段的停留數(shù)量,可以反映出處理需求批量大小和并行度情況;
看交付速率:發(fā)布階段曲線的整體斜率,可以反映出團(tuán)隊(duì)的需求交付速率。
指標(biāo)卡中數(shù)據(jù)含義:
累積流圖:橫坐標(biāo)為日期,縱坐標(biāo)為各個(gè)階段累積的需求數(shù)量;從左到右的每個(gè)階段,都是需求按順序變化的階段,相應(yīng)的,曲線對(duì)應(yīng)的分別是這些階段的累積完成的需求數(shù)量。
「需求累積流圖」同時(shí)具備整體性和動(dòng)態(tài)性,它既反映了團(tuán)隊(duì)整體的協(xié)作模式,端到端的動(dòng)態(tài)交付過程,同時(shí)還反映了交付模式和交付能力的變化趨勢。我們可以從累積流圖中,分析團(tuán)隊(duì)的協(xié)作和交付模式,并發(fā)現(xiàn)改進(jìn)機(jī)會(huì)。我們從下面 3 個(gè)方面進(jìn)行分析:
1.團(tuán)隊(duì)的計(jì)劃模式
主要看需求進(jìn)入開發(fā)階段的數(shù)量和頻率,如一個(gè)項(xiàng)目中,進(jìn)入開發(fā)階段的批量大,而且頻次低(譬如每月一次),往往是大批量的輸入,很容易出現(xiàn)大量需求并行,導(dǎo)致需求交付周期變長。反之,如果是小批量,多頻次的輸入,讓在制品數(shù)量變低,縮短需求交付周期;
2. 需求的轉(zhuǎn)測模式
需求大批量轉(zhuǎn)測,帶來的問題是,開發(fā)完成的需求,要等待較長時(shí)間才開始測試,導(dǎo)致更多在制品,并延長了需求交付周期;
3. 需求的發(fā)布模式
需求發(fā)布會(huì)出現(xiàn)階梯狀,階梯的間隔越長,代表發(fā)布的頻率越少,也就是每個(gè)發(fā)布的間隔時(shí)間比較長。同時(shí)也可以看出來,發(fā)布間隔越長,則每次發(fā)布需求的數(shù)量就越多,而發(fā)布的難度隨著需求的增加而增加。
看交付質(zhì)量
在效能分析場景的報(bào)表中,通過「缺陷趨勢」和「缺陷修復(fù)分布」指標(biāo)卡,我們可以:
看到缺陷被發(fā)現(xiàn)和修復(fù)的趨勢,反映團(tuán)隊(duì)的交付模式;
看到存量缺陷的變化趨勢,發(fā)現(xiàn)與修復(fù)分布是否趨于合理,反映項(xiàng)目的質(zhì)量狀況;
看到缺陷修復(fù)周期的變化趨勢,反映團(tuán)隊(duì)對(duì)缺陷的及時(shí)修復(fù)能力。
首先,我們來看一下「缺陷趨勢」,如下圖:
指標(biāo)卡中數(shù)據(jù)含義:
缺陷趨勢圖:橫坐標(biāo)為日期,縱坐標(biāo)為缺陷數(shù)量,橫坐標(biāo)上方紅色柱子代表這一天發(fā)現(xiàn)缺陷數(shù)量;橫坐標(biāo)下方綠色柱子代表這一天解決的缺陷數(shù)量;橙色曲線代表缺陷存量。
在「缺陷趨勢」指標(biāo)卡中,我們可以分析:
1. 看團(tuán)隊(duì)的交付模式
如果長時(shí)間沒發(fā)現(xiàn)缺陷,而到某一段時(shí)間集中新增大量缺陷,能夠反映出是瀑布交付模式。如果缺陷被持續(xù)發(fā)現(xiàn)和持續(xù)解決,且存量缺陷處于較低水位,這種情況更容易形成持續(xù)交付模式。
2.看存量缺陷的多少,判斷交付質(zhì)量
需求在上線前,一般需要把缺陷數(shù)量清零,如果項(xiàng)目的存量缺陷一直處于較低水位,反映出交付質(zhì)量比較高。
舉一個(gè)從小瀑布模式向持續(xù)交付模式轉(zhuǎn)變的例子,如圖:
左半部分
團(tuán)隊(duì)屬于小瀑布的開發(fā)模式。前期,團(tuán)隊(duì)集中設(shè)計(jì)、編碼,引入缺陷,但并未即時(shí)地集成和驗(yàn)證。缺陷一直掩藏在系統(tǒng)中,直到項(xiàng)目后期,團(tuán)隊(duì)才開始集成和測試,缺陷集中爆發(fā)。越到后期發(fā)現(xiàn)的缺陷,修復(fù)難度大幅提升,修復(fù)成本大幅增加。
小瀑布模式下,過程質(zhì)量差,帶來大量的返工、延期和交付質(zhì)量問題。該模式下,產(chǎn)品的交付時(shí)間依賴于何時(shí)缺陷能被充分移除,無法做到持續(xù)交付,也無法快速響應(yīng)外部的需求和變化。并且,這一模式通常都導(dǎo)致后期的趕工,埋下交付質(zhì)量隱患。
右半部分
團(tuán)隊(duì)開始向持續(xù)交付模式演進(jìn),質(zhì)量得到控制。在整個(gè)迭代過程中,團(tuán)隊(duì)以小粒度的需求為單位開發(fā),持續(xù)地集成和測試它們,及時(shí)發(fā)現(xiàn)和解決問題。缺陷庫存得到控制,系統(tǒng)始終處于接近可發(fā)布狀態(tài)。這一模式更接近持續(xù)發(fā)布狀態(tài),團(tuán)隊(duì)對(duì)外的響應(yīng)能力隨之增強(qiáng)。
接下來我們來看「缺陷修復(fù)分布」:
指標(biāo)卡中數(shù)據(jù)含義:
缺陷修復(fù)分布,也叫缺陷控制圖,橫坐標(biāo)為時(shí)間,縱坐標(biāo)為缺陷修復(fù)周期(天),圖中:
圓點(diǎn):代表一個(gè)已修復(fù)的缺陷,它所在的橫坐標(biāo)為修復(fù)時(shí)間,縱坐標(biāo)為該缺陷的修復(fù)時(shí)長;
折線:代表缺陷修復(fù)周期的滾動(dòng)均值,取該點(diǎn)以及前后各1/3/5/7/9個(gè)點(diǎn)(隨區(qū)間事項(xiàng)數(shù)變動(dòng))的平均值;
面積:紅色陰影區(qū)域代表滾動(dòng)標(biāo)準(zhǔn)差,即實(shí)際數(shù)據(jù)與滾動(dòng)平均值的變偏差量;
橫線:所選時(shí)間區(qū)間內(nèi),缺陷修復(fù)周期的平均值。
在看到「缺陷修復(fù)分布」圖的數(shù)據(jù)時(shí),我們可以從 4 個(gè)方面理解和分析:
縱向上,代表已修復(fù)缺陷的圓點(diǎn)越向下越好,反映出修復(fù)周期越短、修復(fù)能力越快;
橫向上,代表已修復(fù)缺陷的圓點(diǎn)數(shù)量越少越好,越少代表缺陷的數(shù)量越少,開發(fā)提測的質(zhì)量比較高;
平均修復(fù)時(shí)長線,代表團(tuán)隊(duì)缺陷修復(fù)周期的一個(gè)基本水位,越低越好。很多團(tuán)隊(duì)會(huì)設(shè)定缺陷修復(fù)目標(biāo),譬如缺陷要日清,即缺陷要在發(fā)現(xiàn)后的 24 小時(shí)內(nèi)修復(fù);
滾動(dòng)均值折線,展示缺陷修復(fù)周期的變化趨勢,期望有往下走的趨勢,代表團(tuán)隊(duì)修復(fù)缺陷的速度越來越快。
缺陷修復(fù)分布圖,對(duì)于團(tuán)隊(duì)來說,可用于在回顧會(huì)上分析團(tuán)隊(duì)過去的質(zhì)量情況,也可根據(jù)歷史的情況,來設(shè)定團(tuán)隊(duì)的缺陷修復(fù)目標(biāo)。
整體回顧
我們可以從產(chǎn)能、效率和質(zhì)量 3 個(gè)維度來觀測團(tuán)隊(duì)的研發(fā)效能現(xiàn)狀,并進(jìn)行針對(duì)性分析,重點(diǎn)觀測 5 幅圖:
需求交付速率:反映團(tuán)隊(duì)歷史的需求交付吞吐量,可對(duì)未來的交付產(chǎn)能進(jìn)行預(yù)測;
需求交付分布:反映團(tuán)隊(duì)歷史的需求響應(yīng)能力,可對(duì)未來的需求交付速度進(jìn)行預(yù)測;
需求累積流圖:反映團(tuán)隊(duì)整體的協(xié)作模式,可分析團(tuán)隊(duì)的交付模式和交付能力;
缺陷趨勢圖:反映團(tuán)隊(duì)歷史的過程質(zhì)量情況,可分析團(tuán)隊(duì)的交付模式和質(zhì)量狀況;
缺陷修復(fù)分布:反映團(tuán)隊(duì)歷史的缺陷修復(fù)速度,可對(duì)團(tuán)隊(duì)的缺陷修復(fù)速度進(jìn)行預(yù)測。
如果需要更多數(shù)據(jù)進(jìn)行分析,也可以參考:需交付時(shí)長按階段分布、 需求累積流圖、存量缺陷按成員排名、存量缺陷占比等。
不管在阿里內(nèi)部,還是接觸的大部分客戶,大家通常以縮短需求交付周期為目標(biāo)。阿里提出的 211 目標(biāo)中,第一個(gè) 2 就是要把需求交付周期縮短到兩周。
如果想要體驗(yàn)效能分析場景報(bào)表,可以使用云效·效能洞察 「效能分析度量」報(bào)表模板,前往云效·效能洞察 →
效能洞察是云效高級(jí)版專屬服務(wù),你可以直接購買云效·高級(jí)版套餐體驗(yàn),或是前往效能洞察免費(fèi)體驗(yàn) 30 天。