Supplementary website
Supplementary Website
Mining software repositories is a popular means to gain insights into a software project’s evolution, monitor project health, support decisions and derive best practices. Tools supporting the mining process are commonly applied by researchers and practitioners, but their limitations and agreement are often not well understood.
This study investigates some threats to validity in complex tool pipelines for evolutionary software analyses and evaluates the tools’ agreement in terms of data, study outcomes and conclusions for the same research questions.
We conduct a lightweight literature review to select three studies on collaboration and coordination, software maintenance and software quality from high-ranked venues, which we formally replicate with four independent, systematically selected mining tools to quantitatively and qualitatively compare the extracted data, analysis results and conclusions.
We find that numerous technical details in tool design and implementation accumulate along the complex mining pipelines and can cause substantial differences in the extracted baseline data, its derivatives, subsequent results of statistical analyses and, under specific circumstances, conclusions.
Users must carefully choose tools and evaluate their limitations to assess the scope of validity in an adequate way. Reusing tools is recommended. Researchers and tool authors can promote reusability and help reducing uncertainties by reproduction packages and comparative studies following our approach.
Visit our git repository to get a copy of the reproduction setup including the tool snapshots of Codeface, git2net, GrimoireLab and Kaiaulu as well as all scripts for data extraction, processing, study reproduction, results comparison and visualisation.
For analyses covering multiple subject projects or experiments, we provide supplementary material which is not included in the publication.
The annotated tools table can be found here (raw data: tools.xlsx)
The annotated venue lists can be found here:
Study counts for the categories are summarised here (raw data: plot_summary.csv)
The agreement plots for all subject projects and analysis ranges are available here.
Example:

The agreement plots for all subject projects and analysis ranges are available here.
Example:

The agreement plots for all subject projects and analysis ranges are available here.
Example:

Correlation matrix (adjacency version):

Correlation matrix (edgelist version):

Linear and quadratic models (adjacency version):

Linear and quadratic models (edgelist version):

Linear and quadratic models with control variables (adjacency version):

Linear and quadratic models with control variables (edgelist version):

Correlation between turnover and bug density (with lines of code counted for all files identified by cloc):

Correlation table (with lines of code counted for files identified by cloc and the MSR tool):
