Software Open Access

Debugging Data-Flows in Reactive Programs

Banken, Herman J

Thesis supervisor(s)

Meijer, Erik; Gousios, Georgios; van Deursen, Arie; de Vries, Joost

Reactive Programming is a way of programming designed to provide developers with the right abstractions for creating systems that use streams of data. Traditional debug tools lack support for the abstractions provided, causing developers to fallback to the most rudimentary debug tool available: printf-debugging.

In this work, we design a visualization and debugging tool for Reactive Programming, that aids comprehension and debugging of reactive systems, by visualizing the dependencies and structure of the data flow, and the data inside the flow. We present RxFiddle, a platform for the visualization as well as the required instrumentation for RxJS in the ReactiveX-family of Reactive Programming libraries. Evaluation based on an experiment with 111 subjects, shows that RxFiddle can outperform traditional debugging in terms of debug time required.

Files (9.3 MB)
Name Size
1.4 MB Download
7.8 MB Download
All versions This version
Views 4141
Downloads 1616
Data volume 35.5 MB35.5 MB
Unique views 4040
Unique downloads 1515


Cite as