TY - GEN
T1 - Decoding Code Quality
T2 - 19th International Conference on Evaluation of Novel Approaches to Software Engineering, ENASE 2024
AU - Mohammad, Suzad
AU - Al Jobair, Abdullah
AU - Abedeen, Iftekharul
N1 - Publisher Copyright:
© 2024 by SCITEPRESS – Science and Technology Publications, Lda.
PY - 2024
Y1 - 2024
N2 - The popularity of web-based solutions has seen rapid growth in the last decade, which has raised the demand for JavaScript (JS) usage in personal projects and enterprise solutions. While the extensive demand for JS has elevated, studies have yet to be done on how JS development follows the rules and guides for writing code to meet quality standards. Consequently, we choose to investigate the practice of JS on different project sizes, the developers’ experience, and their impact on code quality and development. To achieve this goal, we perform the code quality analysis of 200 open-source JS projects from GitHub on 10 code quality metrics. We design our research study to examine the influence of project size on issue density, find relationships among 10 code metrics, how code quality changes with developer experience, and determine the capabilities of existing source code evaluation tools. Our findings reveal that issue density decreases with increasing developer experience and project size. In addition, our quantitative study suggests that with the increase in project size and line of code (LOC), project maintainability decreases, leading to more issues such as errors, complexity, code smell, and duplication. However, as developers become more experienced, they face fewer coding challenges, enhance code quality, and reduce code smell per line of code (LOC). Our study also offers valuable insights into the capabilities of the 6 tools mentioned above to advance code evaluation practices.
AB - The popularity of web-based solutions has seen rapid growth in the last decade, which has raised the demand for JavaScript (JS) usage in personal projects and enterprise solutions. While the extensive demand for JS has elevated, studies have yet to be done on how JS development follows the rules and guides for writing code to meet quality standards. Consequently, we choose to investigate the practice of JS on different project sizes, the developers’ experience, and their impact on code quality and development. To achieve this goal, we perform the code quality analysis of 200 open-source JS projects from GitHub on 10 code quality metrics. We design our research study to examine the influence of project size on issue density, find relationships among 10 code metrics, how code quality changes with developer experience, and determine the capabilities of existing source code evaluation tools. Our findings reveal that issue density decreases with increasing developer experience and project size. In addition, our quantitative study suggests that with the increase in project size and line of code (LOC), project maintainability decreases, leading to more issues such as errors, complexity, code smell, and duplication. However, as developers become more experienced, they face fewer coding challenges, enhance code quality, and reduce code smell per line of code (LOC). Our study also offers valuable insights into the capabilities of the 6 tools mentioned above to advance code evaluation practices.
KW - Code Duplication
KW - Code Quality
KW - Code Smell
KW - Cognitive Complexity
KW - Cyclomatic Complexity
KW - Developer Experience
KW - GitHub
KW - JavaScript
KW - Maintainability
KW - Open-Source Software
KW - Project Size
KW - Software Metric
UR - https://www.scopus.com/pages/publications/85193964303
U2 - 10.5220/0012618800003687
DO - 10.5220/0012618800003687
M3 - Conference contribution
AN - SCOPUS:85193964303
T3 - International Conference on Evaluation of Novel Approaches to Software Engineering, ENASE - Proceedings
SP - 63
EP - 74
BT - Proceedings of the 19th International Conference on Evaluation of Novel Approaches to Software Engineering, ENASE 2024
A2 - Kaindl, Hermann
A2 - Kaindl, Hermann
A2 - Kaindl, Hermann
A2 - Mannion, Mike
A2 - Maciaszek, Leszek
A2 - Maciaszek, Leszek
PB - Science and Technology Publications, Lda
Y2 - 28 April 2024 through 29 April 2024
ER -