Iterative self-organizing clustering for software multiple-fault localisation
摘要
Spectrum-based software fault localization methods perform well in single-fault scenarios, but encounter significant challenges in multi-fault scenarios. These challenges include difficulties in measuring test case similarity, instability caused by random clustering initialization, and the limitations of fixed cluster numbers in capturing complex fault distributions. To resolve these issues, we propose an Iterative Self-Organizing Clustering Method for Multi Fault Localization (ISOMFL). ISOMFL constructs vector representations of failed test cases and refines the Footrule distance metric to better distinguish differences between test cases. It also utilizes a dissimilarity matrix to identify optimal initial cluster centers, reducing the impact of random initialization. Furthermore, the method dynamically adjusts the number of clusters through a self-organizing mechanism, ensuring that clustering results more accurately reflect the actual fault distribution. Experimental evaluations on six fault projects from the SIR and Faults4J databases demonstrate that ISOMFL achieves consistently competitive multi-fault localisation performance compared with existing approaches, while exhibiting more robust and stable behavior across diverse fault distributions. To support reproducibility, the source code is publicly available at https://github.com/jrd12138/ISOMFL.git.