TU Darmstadt / ULB / TUbiblio

An Empirical Study on Reactive Programming

Dinser, Moritz (2021)
An Empirical Study on Reactive Programming.
Technische Universität Darmstadt
doi: 10.26083/tuprints-00019901
Bachelorarbeit, Erstveröffentlichung, Verlagsversion

Kurzbeschreibung (Abstract)

In recent years, interactive applications have increased in popularity. However, due to the lack of fitting programming abstractions in this domain, developing these applications is challenging. While multiple reactive programming languages have been proposed addressing these challenges, empirical studies evaluating the usability of these languages are still uncommon. With this study we present an empirical evaluation of the usability and intuitivity of one of these proposed languages: REScala, a Scala library for functional reactive programming. The goal of our study is to validate claimed advantages of REScala, ascertain what improvements to the language could be beneficial and how these improvements could be achieved. During the study we observed 9 participants working with the REScala library following the think aloud approach. Our results show that after overcoming initial challenges, participants showed a quick learning effect and, in the end, understood the basic concepts of REScala and wrote valid REScala code. We therefore conclude that REScala doesn't present more difficulties compared to learning any other new programming concept while providing multiple benefits for reactive programming, such as increased composability, enforced consistency and fault tolerance. Based on our results, we also provide a set of improvements, we observed helpful, in order to overcome initial challenges when learning REScala.

Typ des Eintrags: Bachelorarbeit
Erschienen: 2021
Autor(en): Dinser, Moritz
Art des Eintrags: Erstveröffentlichung
Titel: An Empirical Study on Reactive Programming
Sprache: Englisch
Referenten: Mezini, Prof. Dr. Mira ; Mogk, M.Sc. Ragnar
Publikationsjahr: 2021
Ort: Darmstadt
Kollation: 43 Seiten
DOI: 10.26083/tuprints-00019901
URL / URN: https://tuprints.ulb.tu-darmstadt.de/19901
Kurzbeschreibung (Abstract):

In recent years, interactive applications have increased in popularity. However, due to the lack of fitting programming abstractions in this domain, developing these applications is challenging. While multiple reactive programming languages have been proposed addressing these challenges, empirical studies evaluating the usability of these languages are still uncommon. With this study we present an empirical evaluation of the usability and intuitivity of one of these proposed languages: REScala, a Scala library for functional reactive programming. The goal of our study is to validate claimed advantages of REScala, ascertain what improvements to the language could be beneficial and how these improvements could be achieved. During the study we observed 9 participants working with the REScala library following the think aloud approach. Our results show that after overcoming initial challenges, participants showed a quick learning effect and, in the end, understood the basic concepts of REScala and wrote valid REScala code. We therefore conclude that REScala doesn't present more difficulties compared to learning any other new programming concept while providing multiple benefits for reactive programming, such as increased composability, enforced consistency and fault tolerance. Based on our results, we also provide a set of improvements, we observed helpful, in order to overcome initial challenges when learning REScala.

Status: Verlagsversion
URN: urn:nbn:de:tuda-tuprints-199016
Sachgruppe der Dewey Dezimalklassifikatin (DDC): 000 Allgemeines, Informatik, Informationswissenschaft > 004 Informatik
Fachbereich(e)/-gebiet(e): 20 Fachbereich Informatik
20 Fachbereich Informatik > Softwaretechnik
Hinterlegungsdatum: 25 Nov 2021 13:32
Letzte Änderung: 29 Nov 2021 09:56
PPN:
Referenten: Mezini, Prof. Dr. Mira ; Mogk, M.Sc. Ragnar
Export:
Suche nach Titel in: TUfind oder in Google
Frage zum Eintrag Frage zum Eintrag

Optionen (nur für Redakteure)
Redaktionelle Details anzeigen Redaktionelle Details anzeigen