Debugging as Evidence-Driven Reasoning: Visualization Opportunities in Data-Intensive Programming

Authors

Yongbo Chen (Tulane University), Yan Zhu (Tulane University), Rebecca Faust (Tulane University)

Presentation

Session
Tools of the Trade
Time
Thursday, Nov 12, 13:09 – 13:18 (US/Eastern) · session 13:00 – 14:30
Location
Hall Essex center

Keywords

Human-Subjects Qualitative Studies; Computing: Software, Networks, Security, Performance Engr., Distr. Systems, Databases ; Data Analysis, Reasoning, Problem Solving, and Decision Making

Abstract

Visualization has been recognized as a valuable means of supporting debugging by externalizing runtime behavior that would otherwise remain hidden or scattered. However, most visual debugging research has focused on traditional software development settings, leaving the distinct challenges of data-intensive workflows largely uncharacterized. To build visual debugging support for these settings, we first need to characterize how practitioners debug in these settings and translate their challenges into concrete visualization opportunities. To this end, we conducted semi-structured interviews with nine participants from diverse data-intensive domains and analyzed the data using thematic analysis. Our analysis reveals three cross-cutting challenges: assembling fragmented evidence, detecting expected--observed discrepancies, and tracing state evolution across workflow components. We distill these challenges into three concrete requirements that current debuggers support only partially but that visualization is well suited to address: cross-artifact evidence alignment, expectation-grounded comparison, and traceable state evolution. Together, these requirements begin to characterize a design space for future visual debugging research in data-intensive programming.

For Practitioners

This paper is for data practitioners who write or inspect code but are not primarily software engineers. They include data scientists, analysts, and engineers, as well as computational researchers and business or financial analysts who work in notebooks, SQL, and scripting environments. For them, debugging is often about whether outputs can be trusted, not just whether code runs. They can apply it in two ways. First, it gives them language for their own practice: the three patterns we describe (assembling fragmented evidence, reasoning from expected–observed discrepancies, and tracing data state across tools) name difficulties they regularly run into but seldom put into words. Second, it shows where current tools fall short and what future visualization and AI-assisted support could offer.