Nokia Bell Labs, Nozay (FRANCE)
CONVECS project-team, Inria Grenoble - Rhône-Alpes and LIG, Grenoble (FRANCE)
Internet of Things
Mozilla Web of Things
CADP (Construction and Analysis of Distributed Processes)
The Internet of Things (IoT) originally refers to everything connected
via the internet. It recently evolved to represent physical devices
and software objects deployed on lightweight nodes that communicate
with each other and results in new added-value applications built on
top of those devices and objects. The growth of the connected device
market and its central role in many application areas (healthcare,
transportation, agriculture, manufacturing, smarthomes and cities,
etc.) has turned IoT at the heart of the digital economy. The advent
of IoT has introduced a number of challenges, such as security,
privacy, platform heterogeneity, lack of universal standards, device
autonomy, and application design.
This work proposes an approach to support end-users when designing IoT applications that are not simplistic, thus cannot be built by simple rules or existing recipes using popular tools like IFTTT. The approach includes a composition language, which allows one to write not only event-action rules, but also to compose these rules to impose an order of execution between two rules, a choice among several rules or a simultaneous execution of several rules. The writing of a composition expression is achieved using a user-friendly interface newly implemented, which does not require a high-level of domain expertise. Since building such advanced compositions can be error-prone (e.g., resulting into erroneous or deadlocking executions), the approach also provides analysis techniques for automatically detecting errors in the composition. Last but not least, the approach supports not only the design of the application, but also its deployment.
The whole approach was implemented using three different components gathered under the name MOZART (Mozilla and Advanced Rule Triggers). First, the Mozilla Web of Things (WoT) platform was extended by developing an interface to support advanced compositions. This interface also enables users to perform the subsequent steps, i.e., design, analysis, and deployment. Second, the analysis part is achieved by encoding the objects and composition expression into LNT and by invoking the verification tools available in the CADP toolbox. Third, application deployment is managed by an execution engine built on top of the Mozilla WebThings platform.
The MOZART tool was proposed for supporting end-users when designing
new IoT applications using available objects and devices. The tool was
evaluated by carrying out an extensive number of experiments involving
the deployment of advanced compositions, which indicated that users
can build verified home automation applications easily and in a
reasonable amount of time (a few minutes).
Ajay Krishna, Michel Le Pallec, Alejandro Martinez, Radu Mateescu,
and Gwen Salaün.
"MOZART: Design and Deployment of Advanced IoT Applications".
Companion Proceedings of the Web Conference WWW'2020 (Taipei, Taiwan),
pp. 163-166, April 2020.
Available on-line at: https://hal.inria.fr/hal-02554029/en
or from the CADP Web site in PDF or PostScript
Inria Grenoble - Rhône-Alpes / CONVECS
655 Avenue de l'Europe
38330 Montbonnot Saint-Martin
Email: Gwen.Salaun at inria.fr
|Further remarks:||This tool, amongst others, is described on the CADP Web site: http://cadp.inria.fr/software|