Answering Developer Questions with Annotated Agent-Discovered Program Traces
Authors
Developers often find themselves asking questions that cut across a code base. Answering these questions requires gathering relevant facts and tracing flow through the program. Yet today’s tools offer limited support for answering these questions. Developers can either use imprecise AI tools that ignore flow or flow-tracing tools that impose a great number of choices. In this paper, we introduce a new kind of tool that answers questions better by bringing together elements of both AI and flow. We instantiate this idea in Trailblazer, a system underpinned by an AI agent that simulates an information forager, iteratively tracing program dependencies in search of answers. Then, Trailblazer packages information it found into an answer digest, which includes interactive, annotated traces of exploration. These traces can be stepped through to help developers orient to the code and find where the answer is distributed within it. In a lab study, Trailblazer helped participants answer questions more efficiently and gain greater familiarity with program flow than an AI question answering baseline. This shows how AI agents can leverage program flow to bring additional structure and clarity to its answers.
Research Questions / Practical Problems
Question signals indexed for this paper.
- 67%
Understanding and Supporting Knowledge Decomposition for Machine Teaching
DIS '20· Human-LLM Collaboration +1
- 67%
Facilitating Knowledge Sharing from Domain Experts to Data Scientists for Building NLP Models
IUI '21· Human-LLM Collaboration +1
- 67%
Mallard: Turn the Web into a Contextualized Prototyping Environment for Machine Learning
UIST '19· Human-LLM Collaboration +1
Based on Jaccard similarity of research subtopics & professions (≥60%)