Towards Understanding Team Congestion in Large-Scale Software Development
摘要
Background: Software Development organisations tend to organise the development of software-intensive products and services as a constellation of components meant to be developed and maintained by independent, autonomous teams. However, the maintenance and evolution of said products and services require team collaboration and coordination. This collaboration and coordination overhead piles on top of teams’ workload, often hindering teams’ throughput and lead time. Objectives: This paper aims to discuss how the use of pull request data can help identify congested teams when the arrival of new tasks exceeds the team’s ability to close them. To do so, we have conducted an empirical study in a software development organisation developing a large-scale product, to try to characterise congested teams and the characteristics of the code reviews they are involved in. Method: We have conducted a case study to start exploring how code review data can help us model team congestion, and understand whether the features of the code-review network, or the team type (platform vs product), can have a major impact on team congestion. Results: The results show that teams seem to experience varying levels of congestion based on pull request activity, with some indicating potential congestion. However, increased PR accumulation did not consistently lead to longer lead times, as seen in some teams where high PR backlogs did not significantly impact delivery cadence. Conclusions: Our findings suggest that while PR data can indicate potential congestion, its impact on lead time varies across teams. Both technical factors and unobserved contextual elements shape congestion. Deeper insights require combining repository metrics with qualitative inputs.