Designing Modular Software: A Case Study in Introductory Statistics
Eric Hare, Andee Kaplan

TL;DR
This paper presents a framework for designing modular, web-based statistical software, demonstrated through a case study of the Shiny app intRo, emphasizing reproducibility and addressing challenges in reactive programming.
Contribution
It introduces a modular design framework for web-based statistical software and discusses integrating modular and reactive programming in a practical case study.
Findings
Successful implementation of a modular Shiny app for statistics
Identification of challenges in combining modular and reactive programming
Guidelines for ensuring reproducibility in modular web applications
Abstract
Modular programming is a development paradigm that emphasizes self-contained, flexible, and independent pieces of functionality. This practice allows new features to be seamlessly added when desired, and unwanted features to be removed, thus simplifying the user-facing view of the software. The recent rise of web-based software applications has presented new challenges for designing an extensible, modular software system. In this paper, we outline a framework for designing such a system, with a focus on reproducibility of the results. We present as a case study a Shiny-based web application called intRo, that allows the user to perform basic data analyses and statistical routines. Finally, we highlight some challenges we encountered, and how to address them, when combining modular programming concepts with reactive programming as used by Shiny.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsData Analysis with R · Statistics Education and Methodologies · Data Visualization and Analytics
