Software debugging analysis based on developer behavior data
- PDF / 216,849 Bytes
- 3 Pages / 612.284 x 802.205 pts Page_size
- 75 Downloads / 190 Views
Software debugging analysis based on developer behavior data Bo YANG1 , Qian YU1 , Huai LIU2 , Yuze HE1 , Chao LIU 2
3
1 School of Information Science and Technology, North China University of Technology, Beijing 100144, China Department of Computer Science and Software Engineering, Swinburne University of Technology, Hawthorn VIC 3122, Australia 3 School of Computer Science and Engineering, Beihang University, Beijing 100191, China
c Higher Education Press 2020
1
Introduction
Software debugging is one of the most costly activities in software development process. It mainly consists of four core tasks, namely fault detection, fault localization, fault understanding and fault fixing. Among them, fault localization normally requires the longest time and the largest efforts [1]. However, the existing fault localization methods are based on the assumption of “perfect fault understanding”, which refers to that the developers fully understand the fault when they are only given the list of suspicious statements. In addition, some researchers [2, 3] doubted the effectiveness of fault localization methods, and they performed experimental studies that showed the unsatisfactory performance of some spectrum-based localization techniques. In this paper, we propose a software debugging analysis method based on developer behavior data. We particularly attempt to analyze the data collected during the debugging process and thus investigate the impact of spectrum-based fault localization on the efficiency of debugging. This study addresses two major technical challenges: (1) what information about developer’s behavior is critical for improving automated software debugging; and (2) how to collect developer’s debugging behavior data without any interruption and conduct a comparative analysis between different developers. After practicing and analyzing a variety of manual debugging methods, it is shown that the behavior information generated by different developers during the debugging process show a certain degree of similarity. Such similarity can in turn help speed up the debugging process. This paper makes the following three contributions: • We define a hierarchical information structure for the collection of developer behavior data, based on which a software debugging analysis method is developed and implemented in an Eclipse plug-in DebugInfo (Section 2). • Experimental studies are conducted, with the purpose of explaining the reasons behind the unsatisfactory performance of spectrum-based fault localization in software debugging (Section 3). Received May 18, 2019; accepted December 10, 2019 E-mail: [email protected]
• We carry out a qualitative comparative study of the proposed method and related research, and give a vision for improving the performance of software debugging (Section 4).
2 Software debugging analysis based on developer behaviors A variety of information can be collected to represent the debugging behaviors of developers, such as the breakpoint, the numbers of debugging iterations, and the variables being
Data Loading...