Table of Contents
Fetching ...

Exploring the Relationship Between Ownership and Contribution Alignment and Code Technical Debt

Ehsan Zabardast, Javier Gonzalez-Huerta, Francis Palma, Panagiota Chatzipetrou

TL;DR

The paper investigates how the alignment between software ownership and contributor activity affects code quality degradation, operationalized as Technical Debt Density ($TDD$). Using an embedded industrial case study of ten components over three years, including a team split, the authors compute a Contribution Degree (based on commits, code churn, PRs, and tickets) via an OCAM-based model and track $TDD$ derived from SonarQube per LOC; they apply Kendall's $ au_b$ and Mann-Whitney U tests to assess associations and the impact of restructuring. Before the split, a negative association between Contribution Degree and $TDD$ emerges in several components, indicating higher ownership contribution links to lower debt; after the split, many components exhibit significant associations, with some showing negative and others positive correlations, suggesting misalignment and diffusion of responsibility can influence TD trajectories. The findings imply that aligning component ownership with the owning team’s primary contributions and reducing inter-team dependencies can mitigate code quality degradation, with notable effects triggered by attrition and architectural knowledge loss; the study highlights the need for replication and further work on concepts like TD credit in proprietary software contexts.

Abstract

Software development organisations aim to stay effective and efficient amid growing system complexity. To address this, they often form small teams focused on separate components that can be independently developed, tested, and deployed. Aligning architecture with organisational structures is crucial for effective communication and collaboration, reducing code and architectural degradation. Assigning specific component responsibility to the teams primarily working on them is key to these goals. This article explores the relationship between ownership and contribution alignment and code quality degradation, measured as technical debt per line of code. It also examines how team structure changes impact their ability to manage code quality degradation. We conducted a case study in a company developing a large software system, analysing ten components managed by one team. This team was later split into two, redistributing components between the new teams. Archival data from development tools used in their daily operations was collected. Before the split, there was a statistically significant negative correlation between contribution alignment and technical debt density in four components, indicating that higher contribution alignment leads to lower technical debt density and better code quality. After the split, this negative correlation persisted in three components, while five components showed a positive correlation, suggesting that low contribution alignment might worsen code quality degradation. Our findings suggest that contribution alignment is important in controlling code quality degradation in software development organisations. Ensuring teams are responsible for components they are most familiar with and minimising dependencies between teams can help mitigate code quality degradation.

Exploring the Relationship Between Ownership and Contribution Alignment and Code Technical Debt

TL;DR

The paper investigates how the alignment between software ownership and contributor activity affects code quality degradation, operationalized as Technical Debt Density (). Using an embedded industrial case study of ten components over three years, including a team split, the authors compute a Contribution Degree (based on commits, code churn, PRs, and tickets) via an OCAM-based model and track derived from SonarQube per LOC; they apply Kendall's and Mann-Whitney U tests to assess associations and the impact of restructuring. Before the split, a negative association between Contribution Degree and emerges in several components, indicating higher ownership contribution links to lower debt; after the split, many components exhibit significant associations, with some showing negative and others positive correlations, suggesting misalignment and diffusion of responsibility can influence TD trajectories. The findings imply that aligning component ownership with the owning team’s primary contributions and reducing inter-team dependencies can mitigate code quality degradation, with notable effects triggered by attrition and architectural knowledge loss; the study highlights the need for replication and further work on concepts like TD credit in proprietary software contexts.

Abstract

Software development organisations aim to stay effective and efficient amid growing system complexity. To address this, they often form small teams focused on separate components that can be independently developed, tested, and deployed. Aligning architecture with organisational structures is crucial for effective communication and collaboration, reducing code and architectural degradation. Assigning specific component responsibility to the teams primarily working on them is key to these goals. This article explores the relationship between ownership and contribution alignment and code quality degradation, measured as technical debt per line of code. It also examines how team structure changes impact their ability to manage code quality degradation. We conducted a case study in a company developing a large software system, analysing ten components managed by one team. This team was later split into two, redistributing components between the new teams. Archival data from development tools used in their daily operations was collected. Before the split, there was a statistically significant negative correlation between contribution alignment and technical debt density in four components, indicating that higher contribution alignment leads to lower technical debt density and better code quality. After the split, this negative correlation persisted in three components, while five components showed a positive correlation, suggesting that low contribution alignment might worsen code quality degradation. Our findings suggest that contribution alignment is important in controlling code quality degradation in software development organisations. Ensuring teams are responsible for components they are most familiar with and minimising dependencies between teams can help mitigate code quality degradation.
Paper Structure (17 sections, 6 equations, 7 figures, 4 tables)

This paper contains 17 sections, 6 equations, 7 figures, 4 tables.

Figures (7)

  • Figure 1: The research method.
  • Figure 2: Study constructs and measurements.
  • Figure 3: Changes to the team during 2020 and 2022. The blue team split into two teams, team brown and team grey, on week 9 in 2021 (week 61).
  • Figure 4: Distribution of the Contribution Degree observations for components 'before' and 'after' the split.
  • Figure 5: Distribution of the TDD observations for components 'before' and 'after' the split.
  • ...and 2 more figures