Impact of Co-Occurrences of Code Smells and Design Patterns on Internal Code Quality Attributes
Journal article, 2025
The structural features of a code section that may indicate a more serious issue with the design of a system or code are known as code smells. Design patterns, on the other hand, are meant to describe the best reusable solution for creating object-oriented software systems. Even though design patterns and code smells are very different, they may co-occur. In fact, there may be a significant connection among the two, which requires further research. This study aims to (i) identify design patterns and code smells in web gaming code, (ii) investigate the co-occurrence of the two, and (iii) analyze the effects of these co-occurrences on internal quality aspects of code. An experiment is carried out on JavaScript (JS) web games utilizing machine learning classifiers to investigate the influence of co-occurrence on potential code smells and design patterns to evaluate games from a quality perspective. Moreover, statistical testing is performed to identify the impact of co-occurrences of code smells and design patterns on internal quality attributes. After examining the data, we determined that random forest is the most effective classifier, achieving an accuracy of 99.126% and 98.99% for both experimental situations, respectively. Moreover, on applying the Wilcoxon signed rank test, we found that co-occurrence has no impact on the coupling and complexity of web games codes, whereas there is a significant impact of co-occurrence on cohesion, size, and inheritance. Our results may guide developers in writing efficient games code to add to this swiftly growing market.
Quality control
Artificial intelligence
Computer software reusability
Statistical tests
Computer games
Learning systems
Object oriented programming