SMURF: A SVM-based Incremental Anti-pattern Detection Approach. Maiga, A., Ali, N., Bhattacharya, N., Saban�, A., Gu�h�neuc, Y., Antoniol, G., & Aimeur, E. In Oliveto, R. & Poshyvanyk, D., editors, Proceedings of the 19<sup>th</sup> Working Conference on Reverse Engineering (WCRE), pages 466–475, October, 2012. IEEE CS Press. 10 pages.
SMURF: A SVM-based Incremental Anti-pattern Detection Approach [pdf]Paper  abstract   bibtex   
In current, typical software development projects, hundreds of developers work asynchronously in space and time and 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 incrementally and on subsets of a system could reduce costs, effort, and resources by allowing practitioners to identify and take into account occurrences of anti-patterns as they find them during their development and maintenance activities. Researchers have proposed approaches to detect occurrences of anti-patterns but these approaches have currently four limitations: (1) they require extensive knowledge of anti-patterns, (2) they have limited precision and recall, (3) they are not incremental, and (4) they cannot be applied on subsets of systems. To overcome these limitations, we introduce SMURF, a novel approach to detect anti-patterns, based on a machine learning technique—support vector machines—and taking into account practitioners' feedback. Indeed, through an empirical study involving three systems and four anti-patterns, we showed that the accuracy of SMURF is greater than that of DETEX and BDTEX when detecting anti-patterns occurrences. We also showed that SMURF can be applied in both intra-system and inter-system configurations. Finally, we reported that SMURF accuracy improves when using practitioners' feedback.

Downloads: 0