Debugging Data Flows in Reactive Programs

Conference Paper (2018)
Author(s)

Herman Banken (Student TU Delft)

H.J.M. Meijer (TU Delft - Web Information Systems)

Gousios Gousios (TU Delft - Software Engineering)

Research Group
Software Engineering
Copyright
© 2018 Herman Banken, H.J.M. Meijer, G. Gousios
DOI related publication
https://doi.org/10.1145/3180155.3180156
More Info
expand_more
Publication Year
2018
Language
English
Copyright
© 2018 Herman Banken, H.J.M. Meijer, G. Gousios
Research Group
Software Engineering
ISBN (print)
978-1-4503-5638-1
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 style of programming that provides developers with a set of abstractions that facilitate event handling and stream processing. Traditional debug tools lack support for Reactive Programming, leading developers to fallback to the most rudimentary debug tool available: logging to the console. In this paper, we present the design and implementation of RxFiddle, a visualization and debugging tool targeted to Rx, the most popular form of Reactive Programming. RxFiddle visualizes the dependencies and structure of the data flow, as well as the data inside the flow. We evaluate RxFiddle with an experiment involving 111 developers. The results show that RxFiddle can help developers finish debugging tasks faster than with traditional debugging tools.