License: Creative Commons Attribution 4.0 International license (CC BY 4.0)
When quoting this document, please refer to the following
DOI: 10.4230/DARTS.7.2.13
URN: urn:nbn:de:0030-drops-140371
URL: http://dagstuhl.sunsite.rwth-aachen.de/volltexte/2021/14037/
Go back to Dagstuhl Artifacts Series


Maj, Petr ; Siek¹, Konrad ; Kovalenko, Alexander ; Vitek, Jan

CodeDJ: Reproducible Queries over Large-Scale Software Repositories (Artifact)

pdf-format:
DARTS-7-2-13.pdf (0.6 MB)


Abstract

Analyzing massive code bases is a staple of modern software engineering research – a welcome side-effect of the advent of large-scale software repositories such as GitHub. Selecting which projects one should analyze is a labor-intensive process, and a process that can lead to biased results if the selection is not representative of the population of interest. One issue faced by researchers is that the interface exposed by software repositories only allows the most basic of queries. CodeDJ is an infrastructure for querying repositories composed of a persistent datastore, constantly updated with data acquired from GitHub, and an in-memory database with a Rust query interface. CodeDJ supports reproducibility, historical queries are answered deterministically using past states of the datastore; thus researchers can reproduce published results. To illustrate the benefits of CodeDJ, we identify biases in the data of a published study and, by repeating the analysis with new data, we demonstrate that the study’s conclusions were sensitive to the choice of projects.

BibTeX - Entry

@Article{maj_et_al:DARTS.7.2.13,
  author =	{Maj, Petr and Siek¹, Konrad and Kovalenko, Alexander and Vitek, Jan},
  title =	{{CodeDJ: Reproducible Queries over Large-Scale Software Repositories (Artifact)}},
  pages =	{13:1--13:4},
  journal =	{Dagstuhl Artifacts Series},
  ISSN =	{2509-8195},
  year =	{2021},
  volume =	{7},
  number =	{2},
  editor =	{Maj, Petr and Siek¹, Konrad and Kovalenko, Alexander and Vitek, Jan},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/opus/volltexte/2021/14037},
  URN =		{urn:nbn:de:0030-drops-140371},
  doi =		{10.4230/DARTS.7.2.13},
  annote =	{Keywords: Software, Mining Code Repositories, Source Code Analysis}
}

Keywords: Software, Mining Code Repositories, Source Code Analysis
Collection: DARTS, Volume 7, Issue 2, Special Issue of the 35th European Conference on Object-Oriented Programming (ECOOP 2021)
Related Scholarly Article: https://doi.org/10.4230/LIPIcs.ECOOP.2021.6
Issue Date: 2021
Date of publication: 06.07.2021


DROPS-Home | Fulltext Search | Imprint | Privacy Published by LZI