A high-level semantic approach to End-User Development in the Internet of Things. Issue 125 (May 2019) - Corno, Fulvio; De Russis, Luigi; Monge Roffarello, Alberto
Highlights: Investigate whether a high-level representation can help end-user better create trigger-action rules in the IoT. Present EUPOnt, a high-level semantic model for end-user development in the IoT. Propose an end-user development platform to execute high-level rules. Evaluate the suitability of the EUPont approach with a 30-people user study. Abstract: Various programming environments for End-User Development (EUD) allow the composition of Internet of Things (IoT) applications, i.e., connections between IoT objects to personalize their joint behavior. These environments, however, only support a one-to-one mapping between pairs of object instances, and adopt a low level of abstraction that forces users to be aware of every single technology they may encounter in their applications. As a consequence, numerous open questions remain: would a "higher level" of abstraction help users creating their IoT applications more effectively and efficiently compared with the contemporary low-level representation? Which representation would users prefer? How high-level IoT applications could be actually executed? To answer these questions, we introduce EUPont, a high-level semantic model for EUD in the IoT. EUPont allows the creation of high-level IoT applications, able to adapt to different contextual situations. By integrating the ontology in the architecture of an EUD platform, we demonstrate how the semantic capabilities of the model allow the execution of high-level IoT applications. Furthermore, we evaluate the approach in a user study with 30 participants, by comparing a Web interface for composing IoT applications powered by EUPont with the one employed by a widely used EUD platform. Results show that the high-level approach is understandable, and it allows users to create IoT applications more correctly and quickly than contemporary solutions.