Code Red: The Business Impact of Code Quality – A Quantitative Study of 39 Proprietary Production Codebases

03/08/2022
by   Adam Tornhill, et al.
0

Code quality remains an abstract concept that fails to get traction at the business level. Consequently, software companies keep trading code quality for time-to-market and new features. The resulting technical debt is estimated to waste up to 42 shortage of software developers, meaning that developer productivity is key to software businesses. Our overall mission is to make code quality a business concern, not just a technical aspect. Our first goal is to understand how code quality impacts 1) the number of reported defects, 2) the time to resolve issues, and 3) the predictability of resolving issues on time. We analyze 39 proprietary production codebases from a variety of domains using the CodeScene tool based on a combination of source code analysis, version-control mining, and issue information from Jira. By analyzing activity in 30,737 files, we find that low quality code contains 15 times more defects than high quality code. Furthermore, resolving issues in low quality code takes on average 124 time in development. Finally, we report that issue resolutions in low quality code involve higher uncertainty manifested as 9 times longer maximum cycle times. This study provides evidence that code quality cannot be dismissed as a technical concern. With 15 times fewer defects, twice the development speed, and substantially more predictable issue resolution times, the business advantage of high quality code should be unmistakably clear.

READ FULL TEXT
research
04/23/2023

U Owns the Code That Changes and How Marginal Owners Resolve Issues Slower in Low-Quality Source Code

[Context] Accurate time estimation is a critical aspect of predictable s...
research
05/01/2023

Breaks and Code Quality: Investigating the Impact of Forgetting on Software Development. A Registered Report

Developers interrupting their participation in a project might slowly fo...
research
12/28/2021

The Impacts of Low/No-Code Development on Digital Transformation and Software Development

Low/No-code development is a software development method that provides u...
research
10/10/2022

Improving Code Review with GitHub Issue Tracking

Software quality is an important problem for technology companies, since...
research
02/17/2019

Does Migrate a Monolithic System to Microservices Decreases the Technical Debt?

Background. The migration from monolithic systems to microservices invol...
research
12/24/2020

Designing a Socio-Technical Business Process for Analyzing Information Quality Requirements: Experience Report

Although many BPs involve critical activities that demand high-quality i...

Please sign up or login with your details

Forgot password? Click here to reset