ICSE 2025
Sat 26 April - Sun 4 May 2025 Ottawa, Ontario, Canada
Fri 2 May 2025 17:00 - 17:15 at 205 - Testing and QA 6 Chair(s): Majid Babaei

Debugging is a vital and time-consuming process in software engineering. Recently, researchers have begun using neuroimaging to understand the cognitive bases of programming tasks by measuring patterns of neural activity. While exciting, prior studies have only examined small sub-steps in isolation, such as comprehending a method without writing any code or writing a method from scratch without reading any already-existing code. We propose a simple multi-stage debugging model in which programmers transition between Task Comprehension, Fault Localization, Code Editing, Compiling, and Output Comprehension activities. We conduct a human study of $n=28$ participants using a combination of functional near-infrared spectroscopy and standard coding measurements (e.g., time taken, tests passed, etc.). Critically, we find that our proposed debugging stages are both neurally and behaviorally distinct. To the best of our knowledge, this is the first neurally-justified cognitive model of debugging. At the same time, there is significant interest in understanding how programmers from different backgrounds, such as those grappling with challenges in English prose comprehension, are impacted by code features when debugging. We use our cognitive model of debugging to investigate the role of one such feature: identifier construction. Specifically, we investigate how features of identifier construction impact neural activity while debugging by participants with and without reading difficulties. While we find significant differences in cognitive load as a function of morphology and expertise, we do not find significant differences in end-to-end programming outcomes (e.g., time, correctness, etc.). This nuanced result suggests that prior findings on the cognitive importance of identifier naming in isolated sub-steps may not generalize to end-to-end debugging. Finally, in a result relevant to broadening participation in computing, we find no behavioral outcome differences for participants with reading difficulties.

Fri 2 May

Displayed time zone: Eastern Time (US & Canada) change

16:00 - 17:30
Testing and QA 6Journal-first Papers / Research Track / Demonstrations at 205
Chair(s): Majid Babaei McGill University
16:00
15m
Talk
Characterizing Timeout Builds in Continuous Integration
Journal-first Papers
Nimmi Weeraddana University of Waterloo, Mahmoud Alfadel University of Calgary, Shane McIntosh University of Waterloo
16:15
15m
Talk
GeMTest: A General Metamorphic Testing FrameworkArtifact-FunctionalArtifact-AvailableArtifact-Reusable
Demonstrations
Simon Speth Technical University of Munich, Alexander Pretschner TU Munich
Pre-print
16:30
15m
Talk
Mole: Efficient Crash Reproduction in Android Applications With Enforcing Necessary UI Events
Journal-first Papers
Maryam Masoudian Sharif University of Technology, Hong Kong University of Science and Technology (HKUST), Heqing Huang City University of Hong Kong, Morteza Amini Sharif University of Technology, Charles Zhang Hong Kong University of Science and Technology
16:45
15m
Talk
History-Driven Fuzzing for Deep Learning Libraries
Journal-first Papers
Nima Shiri Harzevili York University, Mohammad Mahdi Mohajer York University, Moshi Wei York University, Hung Viet Pham York University, Song Wang York University
17:00
15m
Talk
Towards a Cognitive Model of Dynamic Debugging: Does Identifier Construction Matter?
Journal-first Papers
Danniell Hu University of Michigan, Priscila Santiesteban University of Michigan, Madeline Endres University of Massachusetts Amherst, Westley Weimer University of Michigan
17:15
15m
Talk
Janus: Detecting Rendering Bugs in Web Browsers via Visual Delta Consistency
Research Track
Chijin Zhou Tsinghua University, Quan Zhang Tsinghua University, Bingzhou Qian National University of Defense Technology, Yu Jiang Tsinghua University