2014 IEEE International Conference on Software Maintenance and Evolution (ICSME) (2014)
Victoria, BC, Canada
Sept. 29, 2014 to Oct. 3, 2014
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/ICSME.2014.45
One of the perceived values of open source software is the idea that many eyes can increase code quality and reduce the amount of bugs. This perception, however, has been questioned by some due the lack of supporting evidence. This paper presents an empirical analysis focusing on the relationship between the utilization of open source components and their engineering quality. In this study, we determine the popularity of 2,406 Maven components by calculating their usage across 55,191 open source Java projects. As a proxy of code quality for a component, we calculate (i) its defect density using the set of bug patterns reported by Find Bugs, and (ii) 9 popular software quality metrics from the SQO-OSS quality model. We then look for correlations between (i) popularity and defect density, and (ii) popularity and software quality metrics. In most of the cases, no correlations were found. In cases where minor correlations exist, they are driven by component size. Statistically speaking, and using the methods in this study, the Maven repository does not seem to support the "many eyeballs" effect. We conjecture that the utilization of open source components is driven by factors other than their engineering quality, an interpretation that is supported by the findings in this study.
Measurement, Java, Computer bugs, Couplings, Correlation, Software quality, Complexity theory
H. Sajnani, V. Saini, J. Ossher and C. V. Lopes, "Is Popularity a Measure of Quality? An Analysis of Maven Components," 2014 IEEE International Conference on Software Maintenance and Evolution (ICSME), Victoria, BC, Canada, 2014, pp. 231-240.