TU Darmstadt / ULB / TUbiblio

Debugging for reactive programming

Salvaneschi, Guido and Mezini, Mira :
Debugging for reactive programming.
ICSE '16 Proceedings of the 38th International Conference on Software Engineering ACM
[Conference or Workshop Item] , (2016)

Abstract

Reactive programming is a recent programming technique that provides dedicated language abstractions for reactive software. Reactive programming relieves developers from manually updating outputs when the inputs of a computation change, it overcomes a number of well-know issues of the Observer design pattern, and it makes programs more comprehensible. Unfortunately, complementing the new paradigm with proper tools is a vastly unexplored area. Hence, as of now, developers can embrace reactive programming only at the cost of a more challenging development process. In this paper, we investigate a primary issue in the field: debugging programs in the reactive style. We analyze the problem of debugging reactive programs, show that the reactive style requires a paradigm shift in the concepts needed for debugging, and propose RP Debugging, a methodology for effectively debugging reactive programs. These ideas are implemented in Reactive Inspector, a debugger for reactive programs integrated with the Eclipse Scala IDE. Evaluation based on a controlled experiment shows that RP Debugging outperforms traditional debugging techniques.

Item Type: Conference or Workshop Item
Erschienen: 2016
Creators: Salvaneschi, Guido and Mezini, Mira
Title: Debugging for reactive programming
Language: German
Abstract:

Reactive programming is a recent programming technique that provides dedicated language abstractions for reactive software. Reactive programming relieves developers from manually updating outputs when the inputs of a computation change, it overcomes a number of well-know issues of the Observer design pattern, and it makes programs more comprehensible. Unfortunately, complementing the new paradigm with proper tools is a vastly unexplored area. Hence, as of now, developers can embrace reactive programming only at the cost of a more challenging development process. In this paper, we investigate a primary issue in the field: debugging programs in the reactive style. We analyze the problem of debugging reactive programs, show that the reactive style requires a paradigm shift in the concepts needed for debugging, and propose RP Debugging, a methodology for effectively debugging reactive programs. These ideas are implemented in Reactive Inspector, a debugger for reactive programs integrated with the Eclipse Scala IDE. Evaluation based on a controlled experiment shows that RP Debugging outperforms traditional debugging techniques.

Title of Book: ICSE '16 Proceedings of the 38th International Conference on Software Engineering
Number: 38
Publisher: ACM
Uncontrolled Keywords: Debugging, Programming, Reactive power, Runtime, Observers, Libraries, Data models
Divisions: Profile Areas
Profile Areas > Cybersecurity (CYSEC)
Event Location: Austin, TX
Date Deposited: 14 Aug 2017 13:04
DOI: 10.1145/2884781.2884815
Identification Number: TUD-CS-2016-14774
Export:

Optionen (nur für Redakteure)

View Item View Item