Governing the commons: code ownership and code-clones in large-scale software development

Управление общим ресурсом: владение кодом и клоны кода в крупномасштабной разработке программного обеспечения
Anders Sundelin, Javier González‐Huerta, Richard Torkar, Krzysztof Wnuk
2024-12-14

MLGLMMulti-Level Generalized Linear Modelchange sizecode clonescode ownershipcollective ownershipinter-team comparisonslarge-scale software developmenttechnical debtweak ownership
Abstract Context In software development organizations employing weak or collective ownership, different teams are allowed and expected to autonomously perform changes in various components. This creates diversity both in the knowledge of, and in the responsibility for, individual components. Objective Our objective is to understand how and why different teams introduce technical debt in the form of code clones as they change different components. Method We collected data about change size and clone introductions made by ten teams in eight components which was part of a large industrial software system. We then designed a Multi-Level Generalized Linear Model (MLGLM), to illustrate the teams’ differing behavior. Finally, we discussed the results with three development teams, plus line manager and the architect team, evaluating whether the model inferences aligned with what they expected. Responses were recorded and thematically coded. Results The results show that teams do behave differently in different components, and the feedback from the teams indicates that this method of illustrating team behavior can be useful as a complement to traditional summary statistics of ownership. Conclusions We find that our model-based approach produces useful visualizations of team introductions of code clones as they change different components. Practitioners stated that the visualizations gave them insights that were useful, and by comparing with an average team, inter-team comparisons can be avoided. Thus, this has the potential to be a useful feedback tool for teams in software development organizations that employ weak or collective ownership.
1
A Multi-Level Generalized Linear Model (MLGLM) was designed to illustrate differing team behaviors in clone introductions and change size.
2
Comparing a team’s behavior to an average team allows avoiding direct inter-team comparisons and provides actionable feedback.
3
Feedback from three development teams, a line manager, and an architect team aligned with model inferences and supported the approach’s usefulness.
4
Model-based visualizations produced useful insights for practitioners and complemented traditional ownership summary statistics.
5
Teams in a large industrial system behave differently across components when introducing code clones during changes.

Teams' code-change activity introducing code clones in components of a large industrial software system under weak or collective ownership

How and why different teams introduce technical debt in the form of code clones when changing different software components, and variation in clone-introduction behavior across teams and components (modeled and visualized via an MLGLM)

Publication Details
Publication Date
2024-12-14
Journal
Publisher
ISSN
Cited by
1
Access Type
Author Information
Authors
Anders Sundelin
Javier González‐Huerta
Richard Torkar
Krzysztof Wnuk
Explore further
Open the scid.ai AI chat with a ready-made request: it will find papers on a similar topic and help build a literature review.
Find similar papers in the chat
Make a presentation
100%