Helping Developers Find Debugging Hypotheses Using General Bug Descriptions and Code Analysis Techniques
Software developers often have a difficult time debugging their code and fixing defects that cause software to behave incorrectly. When initially faced with a defect, if developers are able to formulate a correct hypothesis, debugging is usually quick. However developers often struggle to find correct hypotheses on their own. In our work, we are investigating a new approach to debugging: a tool which generates suggested hypotheses for developers to investigate. To explore this approach, we built a Chrome Developer Tools extension named Hypothesizer. Hypothesizer generates a list of relevant hypotheses based on natural language processing of the developer’s description of the defect and ranks their relevance based on analysis of the code. In the future we hope to scale Hypothesizer and allow it to automatically generate relevant hypotheses as it encounters new defects. Ultimately, we believe our work has the potential to provide developers a much easier way to debug by identifying potential hypotheses for them when they experience bugs in their code.
Copyright (c) 2022 SAIGAUTAM BONAM, Abdulaziz Alaboudi, Thomas D. LaToza
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.