Experimental evaluation of program slicing for fault localization

被引:51
作者
Kusumoto S. [1 ]
Nishimatsu A. [1 ]
Nishie K. [1 ]
Inoue K. [1 ]
机构
[1] Dept. of Informatics and Math. Sci., Grad. School of Engineering Science, Osaka University, Toyonaka, Osaka 560-8531
关键词
Empirical evaluation; Fault localization; Measurement; Program slice; Tool;
D O I
10.1023/A:1014823126938
中图分类号
学科分类号
摘要
Debugging large and complex software systems requires significant effort since it is very difficult to localize and identify faults. Program slicing has been proposed to efficiently localize faults in the program. Despite the fact that a number of debug systems using program slicing, have been developed, the usefulness of this method to fault localization has not been sufficiently evaluated. This paper aims to experimentally evaluate the usefulness of the program slicing method to fault localization. In order to conduct the experiment, we first developed a debug tool based on program slicing, after which two experimental projects were conducted, in which subjects (debuggers) were divided into two groups. A program that includes several faults is given to each subject of the group. Each subject in Group 1 localizes the faults by using the slicing-based method, whereas in Group 2 each subject localizes the faults by using the conventional debugger-based method. Finally, the effectiveness of program slicing is analyzed by comparing the data collected from both groups. As the results of these experiments, we confirm that the program slicing method is indeed useful to localize program faults.
引用
收藏
页码:49 / 76
页数:27
相关论文
共 28 条
[1]  
Agrawal H., Horgan J.R., Dynamic program slicing, Proceedings of ACM SIGPLAN'90 Conference on Programming Language Design and Implementation, pp. 246-256, (1990)
[2]  
Agrawal H., Demillo R.A., Spafford E.H., Debugging with dynamic slicing and back-tracking, Software: Practice and Experience, 23, 6, pp. 589-616, (1993)
[3]  
Ashida Y., Ohata F., Inoue K., Slicing methods using static and dynamic information, Proceedings of the sixth Asia Pacific Software Engineering Conference, pp. 344-350, (1999)
[4]  
Basili V.R., Evolving and packaging reading technologies, Journal of Systems and Software, 38, 1, pp. 3-12, (1997)
[5]  
Basili V.R., Caldiera G., Rombach H.D., Goal question metric paradigm, Encyclopedia of Software Engineering, 1, pp. 528-532, (1994)
[6]  
Collofello J.S., Woodfield S.N., Evaluating the effectiveness of reliability-assurance techniques, Journal of Systems and Software, 9, 3, pp. 191-195, (1989)
[7]  
Frakes W.B., Fox C.J., Nejmeh B.A., Software Engineering in the UNIX/C Environment, (1991)
[8]  
Fritzson P., Gyimothy T., Kamkar M., Shahmehri N., Generalized algorithmic debugging and testing, Proceedings of ACM SIGPLAN'91 Conference on Programming Language Design and Implementation, pp. 317-326, (1991)
[9]  
Humphrey W.S., Managing the Software Process, (1989)
[10]  
IEEE Standard Glossary of Software Engineering Terminology, (1990)