English

Supporting the Comprehension of Data Analysis Scripts

Software Engineering 2026-04-20 v1

Abstract

A lot of research relies on data analysis scripts to process, clean, and visualize data. However, recent studies show that these scripts are often hard to comprehend and maintain, hindering reproducibility and reuse, accompanied by a lack of tool support for handling such scripts. In this work, we focus on the R programming language, addressing this problem by presenting flowR as an extension for the common data analysis IDEs Positron and VS Code. Alongside a previously presented static backward program slicer, flowR provides an overview of data analysis scripts, interactive graph visualizations, linting, and inline value annotations to support data analysts. FlowR incrementally analyzes R projects by intertwining interprocedural data- and control-flow analyses to build a comprehensive dataflow graph, incorporating R's dynamic and explorative features. Additionally, flowR offers a plugin system and interfaces, allowing the integration of further analyses, such as new linting rules or custom visualizations. Requiring an average of 576ms to calculate the full dataflow graph of real-world projects, this enables near real-time feedback. The demonstration video is available at https://youtu.be/hJzr-r-NmMg . For the full source code and extensive documentation, refer to https://github.com/flowr-analysis/flowr . To try the docker image, use `docker run --rm -it eagleoutice/flowr`.

Cite

@article{arxiv.2604.15963,
  title  = {Supporting the Comprehension of Data Analysis Scripts},
  author = {Florian Sihler and Oliver Gerstl and Lars Pfrenger and Julian Schubert and Matthias Tichy},
  journal= {arXiv preprint arXiv:2604.15963},
  year   = {2026}
}

Comments

Accepted as part of the FSE Companion 2026 on the Tool Demonstration track. This is the version with the appendix

R2 v1 2026-07-01T12:14:15.630Z