<p>Empirical research targeting software quality resulted in a consistent body of work, especially with the help of automated tools that allow researchers to mine large amounts of data. However, we find that many of these efforts provide cross-sectional or only short-term longitudinal analyses. Furthermore, they are often focused on a single and in most cases statically typed language such as Java. In the present paper, we aim to broaden the horizon of existing efforts by exploring the composition, distribution, and evolution of source code quality issues in complex, open-source Python projects. We employ the SonarQube static analysis tool on a dataset comprised of 3656 individual releases of 57 Python projects. We explore the impact of these issues on software maintainability, reliability, and security. We investigate the evolution of these issues over the long term and compare our results with those in the literature. We compare our findings with existing research targeting both Python and Java; for the latter, we investigate the impact the development language has on the type and distribution of detected issues. Our study data are published and open source to help replicate our investigation and contribute to building open and large-scale data sets for research.</p>

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

A long-term exploratory study of source code quality issues in open-source Python projects

  • Liviu-Marian Berciu,
  • Simona Claudia Motogna,
  • Arthur-Jozsef Molnar

摘要

Empirical research targeting software quality resulted in a consistent body of work, especially with the help of automated tools that allow researchers to mine large amounts of data. However, we find that many of these efforts provide cross-sectional or only short-term longitudinal analyses. Furthermore, they are often focused on a single and in most cases statically typed language such as Java. In the present paper, we aim to broaden the horizon of existing efforts by exploring the composition, distribution, and evolution of source code quality issues in complex, open-source Python projects. We employ the SonarQube static analysis tool on a dataset comprised of 3656 individual releases of 57 Python projects. We explore the impact of these issues on software maintainability, reliability, and security. We investigate the evolution of these issues over the long term and compare our results with those in the literature. We compare our findings with existing research targeting both Python and Java; for the latter, we investigate the impact the development language has on the type and distribution of detected issues. Our study data are published and open source to help replicate our investigation and contribute to building open and large-scale data sets for research.