Write a Blog >>
ICSE 2023
Sun 14 - Sat 20 May 2023 Melbourne, Australia
Wed 17 May 2023 14:30 - 14:45 at Meeting Room 105 - Debugging Chair(s): Jie M. Zhang

A Bug Inducing Commit (BIC) is a commit that introduces a software bug into the codebase. Knowing the relevant BIC for a given bug can provide valuable information for debugging as well as bug triaging. However, existing BIC identification techniques are either too expensive (because they require the failing tests to be executed against previous versions for bisection) or inapplicable at the debugging time (because they require post hoc artefacts such as bug reports or bug fixes). We propose Fonte, an efficient and accurate BIC identification technique that only requires test coverage. Fonte combines Fault Localisation (FL) with BIC identification and ranks commits based on the suspiciousness of the code elements that they modified. Fonte reduces the search space of BICs using failure coverage as well as a filter that detects commits that are merely style changes. Our empirical evaluation using 130 real-world BICs shows that Fonte significantly outperforms state-of-the-art BIC identification techniques based on Information Retrieval as well as neural code embedding models, achieving at least 39% higher MRR. We also report that the ranking scores produced by Fonte can be used to perform weighted bisection, further reducing the cost of BIC identification. Finally, we apply Fonte to a large-scale industry project with over 10M lines of code, and show that it can rank the actual BIC within the top five commits for 87% of the studied real batch-testing failures, and save the BIC inspection cost by 32% on average.

Wed 17 May

Displayed time zone: Hobart change

13:45 - 15:15
13:45
15m
Talk
ECSTATIC: An Extensible Framework for Testing and Debugging Configurable Static Analysis
Technical Track
Austin Mordahl University of Texas at Dallas, Zenong Zhang The University of Texas at Dallas, Dakota Soles The University of Texas at Dallas, Shiyi Wei University of Texas at Dallas
Pre-print
14:00
15m
Talk
Responsibility in Context: On Applicability of Slicing in Semantic Regression Analysis
Technical Track
Sahar Badihi University of British Columbia, Canada, Khaled Ahmed University of British Columbia (UBC), Yi Li Nanyang Technological University, Julia Rubin University of British Columbia, Canada
Pre-print
14:15
15m
Talk
Does the Stream API Benefit from Special Debugging Facilities? A Controlled Experiment on Loops and Streams with Specific Debuggers
Technical Track
Jan Reichl , Stefan Hanenberg University of Duisburg-Essen, Essen, Germany, Volker Gruhn University Duisburg-Essen
Pre-print
14:30
15m
Talk
Fonte: Finding Bug Inducing Commits from Failures
Technical Track
Gabin An KAIST, Jingun Hong SAP Labs, Naryeong Kim KAIST, Shin Yoo KAIST
Pre-print
14:45
15m
Talk
Do the Test Smells Assertion Roulette and Eager Test Impact Students’ Troubleshooting and Debugging Capabilities?
SEET - Software Engineering Education and Training
Wajdi Aljedaani University of North Texas, Mohamed Wiem Mkaouer Rochester Institute of Technology, Anthony Peruma University of Hawai‘i at Mānoa, Stephanie Ludi University of North Texas
Pre-print
15:00
7m
Talk
RexStepper: a Reference Debugger for JavaScript Regular Expressions
DEMO - Demonstrations
Luis Almeida IST, Miguel Gonzaga IST, José Fragoso Santos INESC-ID/Instituto Superior Técnico, Portugal , Rui Abreu University of Porto
15:07
7m
Talk
Toward Gaze-assisted Developer Tools
NIER - New Ideas and Emerging Results
Peng Kuang Lund University, Emma Söderberg Lund University, Diederick Niehorster Lund University, Martin Höst Lund University
Pre-print