Support Vector Machines for Anti-pattern Detection. Maiga, A., Ali, N., Bhattacharya, N., Saban�, A., Gu�h�neuc, Y., Antoniol, G., & Aimeur, E. In Menzies, T. & Saeki, M., editors, Proceedings of the 27<sup>th</sup> Conference on Automated Software Engineering (ASE), pages 278–281, September, 2012. ACM Press. Short paper. 4 pages.
Support Vector Machines for Anti-pattern Detection [pdf]Paper  abstract   bibtex   
Developers may introduce anti-patterns in their software systems because of time pressure, lack of understanding, communication, and–or skills. Anti-patterns impede development and maintenance activities by making the source code more difficult to understand. Detecting anti-patterns in a whole software system may be infeasible because of the required parsing time and of the subsequent needed manual validation. Detecting anti-patterns on subsets of a system could reduce costs, effort, and resources. Researchers have proposed approaches to detect occurrences of anti-patterns but these approaches have currently some limitations: they require extensive knowledge of anti-patterns, they have limited precision and recall, and they cannot be applied on subsets of systems. To overcome these limitations, we introduce SVMDetect, a novel approach to detect anti-patterns, based on a machine learning technique—support vector machines. Indeed, through an empirical study involving three subject systems and four anti-patterns, we showed that the accuracy of SVMDetect is greater than of DETEX when detecting anti-patterns occurrences on a set of classes. Concerning, the whole system, SVMDetect is able to find more anti-patterns occurrences than DETEX.

Downloads: 0