arrow
Return

The AbU Language: IoT Distributed Programming Made Easy

delete2022-01-01
delete3
delete
OA
AI
M
Michele Pasqua *
M
Massimo Comuzzo
M
Marino Miculan
DOI:10.1109/ACCESS.2022.3230287delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
Event-driven programming based on Event-Condition-Action (ECA) rules allows users to define complex automation routines in a simple, declarative way; for this reason, in recent years ECA rules have been adopted by the majority of companies in the Internet of Things (IoT) industry as a promising paradigm for implementing ubiquitous and pervasive systems. Unfortunately, programming simplicity comes to a price: most implementations of ECA rules are bound to a strongly centralized communication infrastructure, that poses serious limitations on the application scenarios for the IoT, due to scalability, security and availability issues. To mitigate these issues, recent works introduced abstractions for communication and coordination of ensembles of IoT devices in a decentralized setting, effectively moving the computation towards the edge of the network without sacrificing the programming simplicity prerogative of ECA rules. In particular, Attribute-based memory Updates is a communication model transparently enhancing ECA rules-based systems with an interaction mechanism where communication is similar to broadcast but actual receivers are selected on the spot, by means of predicates (i.e., properties) over devices attributes. In this paper, we introduce AbU-dsl, a Domain Specific Language for the IoT that compiles on top of an implementation of Attribute-based memory Updates. In this way, AbU-dsl provides a practical development interface, based on ECA rules, to effectively program IoT devices in a fully decentralized setting, by exploiting a full-fledged attribute-based interaction model. Thus, programmers can specify interactions between devices in a declarative way, abstracting from details such as devices identity, number, or even their existence, without the need for a central controlling service.
Keywords:
IoT programming
ECA rules
attribute-based memory updates
distributed systems
edge computing
domain specific language

Journal

IEEE Access cover
IEEE Access
IF:
3.6
Papers:
9.8W
Citations:
29.4W

Organization

U
University of Verona
Scholars:
1.9W
Papers: 1.4W
Citations: 1.5W
U
University of Udine
Scholars:
8.3K
Papers: 6.8K
Citations: 6.7K
Cited Papers

Cited Papers

Application of Low-Pressure Plasma Pretreatment in Silk Fabric Degumming Process
err2008-10-23
err0
PREAI
errJia-Jie Long; Hong-Wei Wang; Tong-Qing Lu; Ren-Cheng Tang; Ya-wei Zhu
errShare
errSave
errShare
errSave
Friendly Fire: Cross-app Interactions in IoT Platforms
err2021-04-01
err6
errOAAI
errBalliu, Musard; Merro, Massimo; Pasqua, Michele; Shcherbakov, Mikhail
errShare
errSave
Past Victimizations and Dating Violence Perpetration in Adolescence
err2011-10-10
err0
PREAI
errSophie Boivin; Francine Lavoie; Martine Hébert; Marie-Hélène Gagné
errShare
errSave
Long‐lasting bladder overactivity and bladder afferent hyperexcitability in rats with chemically‐induced prostatic inflammation
err2019-03-22
err0
errOAAI
errJianshu Ni; Shinsuke Mizoguchi; Kyrie Bernardi; Takahisa Suzuki; Masahiro Kurobe; Eiichiro Takaoka; Zhou Wang; Donald B. DeFranco; Pradeep Tyagi; Baojun Gu; Naoki Yoshimura
errShare
errSave
err
IF0
err
err0
PREAI
err
errShare
errSave
errShare
errSave
researcher View more