设计模块化软件:以入门统计学为例的案例研究

Designing Modular Software: A Case Study in Introductory Statistics

Journal of Computational and Graphical Statistics · 2017
被引 8
ABS 3

中文导读

本文提出了一个设计可扩展模块化软件系统的框架,并以一个基于Shiny的统计教学网络应用intRo为案例,展示了如何结合模块化与响应式编程,强调结果的可重复性。

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 software's user interface. The recent rise of web-based software applications has presented new challenges for designing an extensible, modular software system. In this article, 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. Supplementary material for this article is available online.

模块化设计软件工程统计学教学网络应用