Internet of Things (IoT) systems are rapidly gaining importance in the human society, providing a variety of services to improve the quality of our lives, involving complex and safety-critical tasks; therefore, assuring their quality is of paramount importance. Node-RED is a Web-based visual tool inspired by the flow-based programming paradigm, built on Node.js, and recently emerged to support the users in developing IoT systems in a simple manner. The community behind Node-RED is quite active and encourages artefacts sharing. Thus, the Node-RED flows developed and submitted to public usages should be easy to comprehend and integrate within already existing systems, also in preparation of future maintenance and testing activities. Unfortunately, no consolidated approaches or guidelines to develop comprehensible Node-RED flows currently exist. In this paper, we propose a set of guidelines to help the Node-RED developers in producing flows that are easy to comprehend and use. We have designed and conducted an experiment to evaluate the effect of the guidelines in Node-RED flows comprehension. Results show that the adoption of the guidelines significantly reduces the number of errors (p-value = 0.00903) and the time required to comprehend Node-RED flows (p-value = 0.04883).

A set of empirically validated development guidelines for improving Node-RED flows comprehension

Clerissi D.;Leotta M.;Ricca F.
2020-01-01

Abstract

Internet of Things (IoT) systems are rapidly gaining importance in the human society, providing a variety of services to improve the quality of our lives, involving complex and safety-critical tasks; therefore, assuring their quality is of paramount importance. Node-RED is a Web-based visual tool inspired by the flow-based programming paradigm, built on Node.js, and recently emerged to support the users in developing IoT systems in a simple manner. The community behind Node-RED is quite active and encourages artefacts sharing. Thus, the Node-RED flows developed and submitted to public usages should be easy to comprehend and integrate within already existing systems, also in preparation of future maintenance and testing activities. Unfortunately, no consolidated approaches or guidelines to develop comprehensible Node-RED flows currently exist. In this paper, we propose a set of guidelines to help the Node-RED developers in producing flows that are easy to comprehend and use. We have designed and conducted an experiment to evaluate the effect of the guidelines in Node-RED flows comprehension. Results show that the adoption of the guidelines significantly reduces the number of errors (p-value = 0.00903) and the time required to comprehend Node-RED flows (p-value = 0.04883).
File in questo prodotto:
Non ci sono file associati a questo prodotto.

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11567/1071101
 Attenzione

Attenzione! I dati visualizzati non sono stati sottoposti a validazione da parte dell'ateneo

Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 2
  • ???jsp.display-item.citation.isi??? ND
social impact