Carnegie Mellon University
Browse

Rethinking Debugging and Debuggers

Download (123.7 kB)
conference contribution
posted on 2022-06-02, 19:02 authored by Abdulaziz Alaboudi, Thomas D. LaToza

What is debugging? Despite dozens of studies of debugging, many important questions remain. Most existing studies are limited in focusing on studying debugging in the lab or through log data, leaving less known about how debugging occurs in everyday work. To fill this gap, we first identified a new source of data — livestreamed programming — with which to examine debugging in the field. Using this data, we then examined the activities developers do when debugging and the relationship between debugging and programming. This revealed many interesting findings. For example, navigation constitutes only 15% of debugging time, while editing and running code constitute a majority of time. These studies suggest that creating understanding of the issue and fix is central to the debugging process, a process shaped by how developers formulate and test hypotheses. We believe there is an important opportunity to create a new form of hypothesis-based debugger, which makes debugging hypotheses an explicit part of debugging tools which can be shared, queried against code, and drive views of code.

Funding

National Science Foundation Grant CCF-1845508

History

Date

2021-11-09

Usage metrics

    Licence

    Exports

    RefWorks
    BibTeX
    Ref. manager
    Endnote
    DataCite
    NLM
    DC