IEEE Transactions on Software Engineering · 2021 · 42 citations · 30 references
ComputingComputer ScienceInformation RetrievalSoftware EngineeringText AnalyticsSoftware DocumentationSoftware LocalizationSoftware MaintenanceAutomated Bug FindingBug FixingBug LocalizationBug TrackingCall Graph ConstructionHigh-recall SearchStatic Bug DetectionTextual Documentation
To assist developers with debugging and analyzing bug reports, researchers have proposed information retrieval-based bug localization (IRBL) approaches. IRBL approaches leverage the textual information in bug reports as queries to generate a ranked list of potential buggy files that may need further investigation. Although IRBL approaches have shown promising results, most prior research only leverages the textual information that is “visible” in bug reports, such as bug description or title. However, in addition to the textual description of the bug, developers also often attach logs in bug reports. Logs provide important information that can be used to re-construct the system execution paths when an issue happens and assist developers with debugging. In this paper, we propose an IRBL approach, Pathidea, which leverages logs in bug reports to re-construct execution paths and helps improve the results of bug localization. Pathidea uses static analysis to create a file-level call graph, and re-constructs the call paths from the reported logs. We evaluate Pathidea on eight open source systems, with a total of 1,273 bug reports that contain logs. We find that Pathidea achieves a high recall (up to 51.9 percent for Top@5). On average, Pathidea achieves an improvement that varies from 8 to 21 and 5 to 21 percent over BRTracer in terms of Mean Average Precision (MAP) and Mean Reciprocal Rank (MRR) across studied systems, respectively. Moreover, we find that the re-constructed execution paths can also complement other IRBL approaches by providing a 10 and 8 percent improvement in terms of MAP and MRR, respectively. Finally, we conduct a parameter sensitivity analysis and provide recommendations on setting the parameter values when applying Pathidea.
30
A Survey on Software Fault Localization
W. Eric Wong, Ruizhi Gao, Yihao Li et al. · IEEE Transactions on Software Engineering · 2016 · 1.1K citations
Introduction to the Practice of Statistics
Eric R. Ziegel, D. Moore, G. McCabe · Technometrics · 1994 · 821 citations
Jacek Śliwerski, Thomas Zimmermann, Andreas Zeller · ACM SIGSOFT Software Engineering Notes · 2005 · 803 citations
Nicolas Bettenburg, Sascha Just, Adrian Schröter et al. · 2008 · 603 citations