Linus's Law: More Eyes Fewer Flaws in Open Source Projects

  • Danilo Favato UFMG
  • Daniel Ishitani UFMG
  • Johnatan Oliveira UFMG
  • Eduardo Figueiredo UFMG

Resumo


Linus's Law states that "given enough eyeballs, all bugs are shallow". In other words, given a large enough number of developers, almost every programming flaw is characterized and fixed quickly. Although there is much debate about this subject, we still lack empirical evidence to support this law. Given that this theme has, and still is, motivating business decisions in software development, we investigate the implications of Linus's Law in two empirical studies on open source projects mined from GitHub. In the first pilot study, we mined seven popular Java projects from GitHub and investigated the correlation between committers and programming flaws in source code files. Results of this pilot study suggest a positive correlation between the number of developers and programming flaws. We cross-validate these results in a second study with almost one hundred Python projects from GitHub. In this second study, we analyzed the correlation between the number of forks - i.e., a proxy for number of developers - and programming flaws identified in projects. In both studies, programming flaws were detected by using static code analysis tools. As a result of the second study, we could not observe a correlation between the number of developers and the number of programming flaws in Python projects. From both studies we conclude that we were unable to find evidence to support the Linus's Law.
Palavras-chave: Linus's Law, Open Source Projects, Fewer Flaws
Publicado
28/10/2019
Como Citar

Selecione um Formato
FAVATO, Danilo; ISHITANI, Daniel; OLIVEIRA, Johnatan; FIGUEIREDO, Eduardo. Linus's Law: More Eyes Fewer Flaws in Open Source Projects. In: SIMPÓSIO BRASILEIRO DE QUALIDADE DE SOFTWARE (SBQS), 18. , 2019, Fortaleza. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2019 . p. 69-78.