A Hybrid Approach to Investigate Anti-pattern from Source Code
Mehenaz Afrin, Salma Akter Asma, Nazneen Akhter, Jaheed Hasan Ridoy, Sazida Sharmila Sauda, Kazi Abu Taher · 2022
Poor software design introduced anti-patterns in the design phase. It reduces the rate of maintainability and re-usability of the software. To investigate anti-patterns in the early stage, an automated detection system is needed. Hence, in this work, an automated hybrid anti-pattern detection system is proposed. The hybrid model comprises of Artificial Neural Network (ANN) and Support Vector Machine (SVM) by utilizing a data scaling technique. This model executes over three available open-source java projects ArgoUML, Azureus, and Xerces for detecting four kinds of anti-patterns such as Blob, Functional Decomposition (FD), Swiss Army Knife (SAK), and Spaghetti Code (SC). This approach performs better than other approaches like SMURF and SVM with SMOTE in terms of precision and recall. On the Xerces project, this approach brings a 99.88% performance level in terms of accuracy with 96.31% precision and 100% recall.