核心概念
本文提出了五種度量指標,以識別開源軟件項目中的浪費,包括閒置分支、項目多樣化指數、拉取請求拒絕率、積壓反轉指數和功能實現率。這些指標可以幫助團隊做出決策並提高最終產品的質量。
摘要
本文探討了軟件開發過程中的浪費問題,並提出了一系列度量指標來識別和量化這些浪費。
首先,文章回顧了現有文獻中對軟件開發浪費的定義和分類,包括構建錯誤的功能/產品、積壓管理不善、未使用的工件等。
然後,文章提出了五個新的度量指標:
- 閒置分支(Stale Forks):識別未對項目做出貢獻的分支,代表未使用的工件。
- 項目多樣化指數(Project Diversification Index):量化活躍分支中獨立開發分支的比例,反映了"構建錯誤的功能/產品"的情況。
- 拉取請求拒絕率(PR Rejection Rate):衡量未合併的拉取請求占比,表示"未使用的工件"和"積壓管理不善"。
- 積壓反轉指數(Backlog Inversion Index):識別低優先級任務在高優先級任務未完成前完成的情況,反映"積壓管理不善"。
- 功能實現率(Feature Fulfillment Rate):結合功能-bug平衡圖和流入-流出圖,可視化地分析積壓管理情況,識別"積壓管理不善"。
最後,作者將這些度量指標應用於10個開源項目,並分享了觀察結果。這些指標可以幫助開源項目維護者識別和減少軟件開發過程中的浪費。
統計資料
在R8項目中,36.1424%的分支是閒置或潛在閒置的,這表示有大量未使用的工件。
在R2項目中,拉取請求拒絕率高達0.3502,表示有大量未合併的工作。
在R2項目中,積壓反轉指數高達3.3782,表示存在積壓管理不善的情況。