Rasmus Hallevåg, Jesper Olsson:
Modeling and Analyzing Developer Collaboration to Guide Data Driven Decisions,
summary,
report, August 2019.
Abstract:
In a software development context a high number of decisions have to be made. For many of these decisions the insight of experts in the area is the deciding factor but the manual work to understand the context of a problem can potentially take a large amount of time for these experts and might not be entirely accurate due to human biases and heuristics. With such problems utilizing automatically mined metrics could be of aid. Finding new metrics that affect performance and quality can also lead to more relevant information being presented.
If team organization should follow the concept of collective code ownership or if the knowledge should be more stratified is a common debate in the software world. Creating an accurate representation of development structure and comparing it to performance metrics could help answer the debate and inform practices which would improve development. Two research questions have been formulated in this thesis to best explore this subject, namely if developer structure could be modeled and if there are some correlation between it and metrics relating to throughput or complexity.
As modern version control systems store a large amount of metadata, extracting and presenting the information stored could help investigate the research questions and potentially aid data driven decisions.
This was done through the creation of a prototype gathering and displaying representations of collaboration with other metrics. Some findings such as having more than 5 developers leading to more complex code was observable. However, further work continuing the research may be necessary to create and validate an accurate model.