Mining the Relationship Between Anti-patterns Dependencies and Fault-proneness. Jaafar, F., Gu�h�neuc, Y., Hamel, S., & Khomh, F. In Oliveto, R. & Robbes, R., editors, Proceedings of the 20<sup>th</sup> Working Conference on Reverse Engineering (WCRE), October, 2013. IEEE CS Press. 10 pages.
Mining the Relationship Between Anti-patterns Dependencies and Fault-proneness [pdf]Paper  abstract   bibtex   
Anti-patterns describe poor solutions to design and implementation problems which are claimed to make object oriented systems hard to maintain. Anti-patterns indicate weaknesses in design that may slow down development or increase the risk of faults or failures in the future. Classes in anti-patterns have some dependencies, such as static relationships, that may propagate potential problems to other classes. To the best of our knowledge, the relationship between anti-patterns dependencies (with non anti-patterns classes) and faults has yet to be studied in details. This paper presents the results of an empirical study aimed at analysing anti-patterns dependencies in three open source software systems, namely ArgoUML, JFreeChart, and XerecesJ. We show that, in almost all releases of the three systems, classes having dependencies with anti-patterns are more fault-prone than others. We also report other observations about these dependencies such as their impact on fault prediction. Software organizations could make use of these knowledge about anti-patterns dependencies to better focus their testing and reviews activities toward the most risky classes, \eg classes with fault-prone dependencies with anti-patterns.

Downloads: 0