高级检索

    神经网络在软件多故障定位中的应用研究

    Application of Artificial Neural Network in Software Multi-Faults Location

    • 摘要: 针对软件多故障定位问题,提出一种基于神经网络的多故障定位模型.通过故障相关性分析,计算故障定位使用的输入对每个故障的支持度分量.利用神经网络模型学习输入的覆盖位置与各故障间的关系,针对每个可能包含故障的位置,构建理想输入作为已学习神经网络的输入,计算出该位置包含各故障的支持度,最终对每个故障确定其按支持度排序的位置序列,从而完成多故障定位的任务.实验结果表明,较传统方法,该模型对各故障可疑位置具有很强的分辨能力,表现出较大的优越性,对于提高软件多故障调试效率有很大帮助.

       

      Abstract: There is no bug-free program because of the complexity of software. It is always challenging for programmers to effectively and efficiently debug program and remove bugs. Software fault location is one of the most expensive activities in program debugging. So there is a high requirement for automatic fault localization techniques that can guide programmers to the locations of faults with minimal or no human intervention. Various techniques have been proposed to meet this requirement. However, the interactions between multi-faults which have not been fully considered in previous studies make the fault location more complicated. In order to solve this problem, a novel neural-network-based multi-faults location model is proposed in this paper. By fault relation analysis, the model calculates the support degree of the input for each fault. And then it learns the relationship between the faults and the candidate locations of faults using the constructed neural network. Constructing an ideal input as the input of learned neural network, the model can calculate the suspicious degree of each candidate location of fault, then obtain the sequence sorting by the suspicious degree, and complete the task of multi-faults location. Experimental results show that compared with traditional methods, the proposed method has strong ability to distinguish fault locations and can improve the efficiency of software debugging for multi-faults.

       

    /

    返回文章
    返回