Science of Computer Programming • Vol 240
Causal program dependence analysis
September 2024 • Seongmin Lee, David Binkley, Robert Feldt, Nicolas Gold, Shin Yoo
Discovering how program components affect one another plays a fundamental role in aiding engineers comprehend and maintain a software system. Despite the fact that the degree to which one program component depends upon another can vary in strength, traditional dependence analysis typically ignores such nuance. To account for this nuance in dependence-based analysis, we propose Causal Program Dependence Analysis (CPDA), a framework based on causal inference that captures the degree (or strength) of the dependence b…