Debugging Data-Flows in Reactive Programs

Master Thesis (2017)
Author(s)

H.J. Banken (TU Delft - Electrical Engineering, Mathematics and Computer Science)

Contributor(s)

Erik Meijer – Mentor

Gousios Gousios – Mentor

A. Van Deursen – Graduation committee member

Joost de Vries – Mentor

Faculty
Electrical Engineering, Mathematics and Computer Science
Copyright
© 2017 Herman Banken
More Info
expand_more
Publication Year
2017
Language
English
Copyright
© 2017 Herman Banken
Graduation Date
05-07-2017
Awarding Institution
Delft University of Technology
Programme
['Computer Science | Software Technology']
Sponsors
Ordina
Related content

Project source code

https://github.com/hermanbanken/RxFiddle/

Project page

https://rxfiddle.net
Faculty
Electrical Engineering, Mathematics and Computer Science
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

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

License info not available