M. Kessentini, H. Sahraoui, M. Boukadoum, M. Wimmer: Search-Based Design Defects Detection by Example, Proceedings of the 14th International Conference on Fundamental Approaches to Software Engineering (FASE'11), Saarbrücken, 26.03.2011 - 03.04.2011, in: Proceedings of the 14th International Conference on Fundamental Approaches to Software Engineering (FASE'11), Springer, LNCS 6603 (2011), ISBN: 978-3-642-19810-6, pages 401 - 415. paper
We propose an automated approach to detect various types of design defects in source code. Our approach allows to automatically find detection rules, thus relieving the designer from doing so manually. Rules are defined as combinations of metrics/thresholds that better conform to known instances of design defects (defect examples). In our setting, we use and compare between different heuristic search algorithms for rule extraction: Harmony Search, Particle Swarm Optimization, and Simulated Annealing. We evaluate our approach by finding potential defects in two open-source systems. For all these systems, we found, in average, more than 75% of known defects, a better result when compared to a state-of-the-art approach, where the detection rules are manually or semi-automatically specified.