Table of Contents
Fetching ...

Measuring Software Development Waste in Open-Source Software Projects

Dhiraj SM Varanasi, Divij D, Sai Anirudh Karre, Y Raghu Reddy

TL;DR

Software development waste (SDW) drains resources and degrades delivery performance. The paper addresses the lack of quantitative SDW measures by proposing five OSS-focused metrics—Stale Forks (SFs), Project Diversification Index (PDI), PR Rejection Rate (PRR), Backlog Inversion Index (BI Index), and Feature Fulfillment Rate (FFR)—and applying them to ten open-source projects using GitHub data. Each measure targets a specific waste category, such as unused artifacts, mismanaged backlog, and building the wrong feature, with concrete definitions and calculation methods. The results reveal varying patterns of waste across repositories, highlighting the practical utility of these measures to identify areas for backlog refinement and feature alignment in OSS. The authors also offer adoption strategies and discuss limitations, paving the way for broader deployment and further expansion of SDW measurement in practice.

Abstract

Software Development Waste (SDW) is defined as any resource-consuming activity that does not add value to the client or the organization developing the software. SDW impacts the overall efficiency and productivity of a software project as the scale and size of the project grows. Although engineering leaders usually put in effort to minimize waste, the lack of definitive measures to track and manage SDW is a cause of concern. To address this gap, we propose five measures, namely Stale Forks, Project Diversification Index, PR Rejection Rate, Backlog Inversion Index, and Feature Fulfillment Rate to potentially identify unused artifacts, building the wrong feature/product, mismanagement of backlog types of SDW. We apply these measures on ten open-source projects and share our observations to apply them in practice for managing SDW.

Measuring Software Development Waste in Open-Source Software Projects

TL;DR

Software development waste (SDW) drains resources and degrades delivery performance. The paper addresses the lack of quantitative SDW measures by proposing five OSS-focused metrics—Stale Forks (SFs), Project Diversification Index (PDI), PR Rejection Rate (PRR), Backlog Inversion Index (BI Index), and Feature Fulfillment Rate (FFR)—and applying them to ten open-source projects using GitHub data. Each measure targets a specific waste category, such as unused artifacts, mismanaged backlog, and building the wrong feature, with concrete definitions and calculation methods. The results reveal varying patterns of waste across repositories, highlighting the practical utility of these measures to identify areas for backlog refinement and feature alignment in OSS. The authors also offer adoption strategies and discuss limitations, paving the way for broader deployment and further expansion of SDW measurement in practice.

Abstract

Software Development Waste (SDW) is defined as any resource-consuming activity that does not add value to the client or the organization developing the software. SDW impacts the overall efficiency and productivity of a software project as the scale and size of the project grows. Although engineering leaders usually put in effort to minimize waste, the lack of definitive measures to track and manage SDW is a cause of concern. To address this gap, we propose five measures, namely Stale Forks, Project Diversification Index, PR Rejection Rate, Backlog Inversion Index, and Feature Fulfillment Rate to potentially identify unused artifacts, building the wrong feature/product, mismanagement of backlog types of SDW. We apply these measures on ten open-source projects and share our observations to apply them in practice for managing SDW.
Paper Structure (13 sections, 3 equations, 3 figures, 7 tables)

This paper contains 13 sections, 3 equations, 3 figures, 7 tables.

Figures (3)

  • Figure 1: Types of Forks
  • Figure 2: Feature-bug balance The x-axis is the ratio of the issues closed in the bin in the number of days since its inception shown in y-axis
  • Figure 3: Inflow-Outflow Graph The x-axis represents the previous 60 sprints ending on April 30, 2024 with the y-axis portraying the backlog inflow to outflow management [ Value < 1 : number of issues closed during the sprint is less than the number of inflow and spillover issues; value > 1 : Compensating by closing issues that were behind; value = 1 : closing the same number of issues as inflow and spillover together for the sprint ]