Quality-Aware Reactive Programming for the Internet of Things - Fundamentals of Software Engineering Access content directly
Conference Papers Year : 2017

Quality-Aware Reactive Programming for the Internet of Things


The reactive paradigm recently became very popular in user-interface development: updates — such as the ones from the mouse, keyboard, or from the network — can trigger a chain of computations organised in a dependency graph, letting the underlying engine control the scheduling of these computations. In the context of the Internet of Things (IoT), typical applications deploy components in distributed nodes and link their interfaces, employing a publish-subscribe architecture. The paradigm for Distributed Reactive Programming marries these two concepts, treating each distributed component as a reactive computation. However, existing approaches either require expensive synchronisation mechanisms or they do not support pipelining, i.e., allowing multiple “waves” of updates to be executed in parallel.We propose Quarp (Quality-Aware Reactive Programming), a scalable and light-weight mechanism aimed at the IoT to orchestrate components triggered by updates of data-producing components or of aggregating components. This mechanism appends meta-information to messages between components capturing the context of the data, used to dynamically monitor and guarantee useful properties of the dynamic applications. These include the so-called glitch freedom, time synchronisation, and geographical proximity. We formalise Quarp using a simple operational semantics, provide concrete examples of useful instances of contexts, and situate our approach in the realm of distributed reactive programming.
Fichier principal
Vignette du fichier
459025_1_En_12_Chapter.pdf (486.65 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-01760858 , version 1 (06-04-2018)





José Proença, Carlos Baquero. Quality-Aware Reactive Programming for the Internet of Things. 7th International Conference on Fundamentals of Software Engineering (FSEN), Apr 2017, Teheran, Iran. pp.180-195, ⟨10.1007/978-3-319-68972-2_12⟩. ⟨hal-01760858⟩
79 View
35 Download



Gmail Facebook X LinkedIn More