On Using GUI Interaction Data to Improve Text Retrieval-based Bug Localization
One of the most important tasks related to managing bug reports is \textit{localizing faults} so that a fixes can be applied. As such, prior work has aimed to automate this task of bug localization by formulating it as an information retrieval problem, where potentially buggy files are retrieved and ranked according to their textual similarity with a given bug report. However, there is often a notable \textit{semantic gap} between the information contained in bug reports and identifiers or natural language contained within source code files. For user-facing software, there is currently a key source of information that could aid in bug localization, but has not been thoroughly investigated – information from the graphical user interface (GUI).
In this paper, we investigate the hypothesis that, for end user-facing applications, connecting information in a bug report with information from the GUI, and using this to aid in retrieving potentially buggy files, can improve upon existing techniques for text retrieval-based bug localization. To examine this phenomenon, we conduct a comprehensive empirical study that augments four baseline text-retrieval techniques for bug localization with GUI interaction information from a reproduction scenario to (i) filter out potentially irrelevant files, (ii) boost potentially relevant files, and (iii) reformulate text-retrieval queries. To carry out our study, we source the current largest dataset of fully-localized and reproducible real bugs for Android apps, with corresponding bug reports, consisting of 80 bug reports from 39 popular open-source apps. Our results illustrate that augmenting traditional techniques with GUI information leads to a marked increase in effectiveness across multiple metrics, including a relative increase in Hits@10 of 18-13%. Additionally, through further analysis, we find that our studied augmentations largely complement existing techniques, pushing additional buggy files into the top-10 results while generally preserving top ranked files from the baseline techniques.
Thu 18 AprDisplayed time zone: Lisbon change
11:00 - 12:30 | Evolution 2Research Track / Journal-first Papers / Software Engineering Education and Training at Amália Rodrigues Chair(s): Massimiliano Di Penta University of Sannio, Italy | ||
11:00 15mTalk | On Using GUI Interaction Data to Improve Text Retrieval-based Bug Localization Research Track Junayed Mahmud George Mason University, Nadeeshan De Silva William & Mary, Safwat Ali Khan George Mason University, Seyed Hooman Mostafavi George Mason University, S M Hasan Mansur George Mason University, Oscar Chaparro William & Mary, Andrian (Andi) Marcus The University of Texas at Dallas, Kevin Moran University of Central Florida | ||
11:15 15mTalk | DEMISTIFY: Identifying On-device Machine Learning Models Stealing and Reuse Vulnerabilities in Mobile Apps Research Track Pengcheng Ren Shandong University, Chaoshun Zuo Ohio State University, Xiaofeng Liu Shandong University, Wenrui Diao Shandong University, Qingchuan Zhao City University of Hong Kong, Shanqing Guo Shandong University | ||
11:30 15mTalk | How do Developers Talk about GitHub Actions? Evidence from Online Software Development Community Research Track Yang Zhang National University of Defense Technology, China, Yiwen Wu National University of Defense Technology, Tingting Chen College of Computer, National University of Defense Technology, Tao Wang National University of Defense Technology, Hui Liu Beijing Institute of Technology, Huaimin Wang | ||
11:45 15mPaper | Design principles for generating and presenting automated formative feedback on code quality using software metrics Software Engineering Education and Training Eddy van den Aker Zuyd University of Applied Science, Ebrahim Rahimi Open University, the Netherlands | ||
12:00 7mTalk | Automatic Specialization of Third-Party Java Dependencies Journal-first Papers César Soto-Valero KTH, Deepika Tiwari KTH Royal Institute of Technology, Tim Toady Programming Republic of Perl, Benoit Baudry KTH | ||
12:07 7mTalk | Discovering Reusable Functional Features in Legacy Object-Oriented Systems Journal-first Papers Hafedh Mili Université du Québec à Montréal, Imen Benzarti École de technologie supérieure, Amel Elkharraz Collège de Bois-de-Boulogne, Ghizlane El Boussaidi École de Technologie Supérieure, Yann-Gaël Guéhéneuc Concordia University and Polytechnique Montréal, Petko Valchev Université du Québec à Montréal |