No-Code Shadow Things Deployment for the IoT

The Internet of Things (IoT) has brought Internet connectivity to devices from different domains and with different constraints. This, however, requires system developers to have a deep understanding of the individual devices’ functionalities to achieve a successful integration. The Thing Description (TD) standard from the World Wide Web Consortium (W3C) is able to describe such device capabilities in a machine and human-readable format. While this standardization effort already provides many benefits to developers, the lack of easy-to-deploy virtual device instances introduces issues such as an increased risk for errors during the integration phase of IoT systems.In this paper, we introduce a novel method to create virtual instances of IoT devices based on their TD that act like the real device, which we call the Shadow Thing Method (STM). In the development and deployment stages of IoT systems, STM can be applied to deploy an instance to act as a smart proxy to address different problems, while requiring no programming experience or effort. We show for three different use cases that in addition to the simulation benefits, STM brings scalability, reliability, and safety to the existing IoT systems, making the adoption of IoT feasible for a wider audience.

[1]  Matthias Kovatsch,et al.  Sequential Behavioral Modeling for Scalable IoT Devices and Systems , 2018, 2018 Forum on Specification & Design Languages (FDL).

[2]  Hassib Belhaj Hassine,et al.  Virtual-Thing: Thing Description based Virtualization , 2019, ArXiv.

[3]  Noël Crespi,et al.  DPWSim: A simulation toolkit for IoT applications using devices profile for web services , 2014, 2014 IEEE World Forum on Internet of Things (WF-IoT).

[4]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[5]  Marty Humphrey,et al.  Experiences Creating a Framework for Smart Traffic Control Using AWS IOT , 2016, 2016 IEEE/ACM 9th International Conference on Utility and Cloud Computing (UCC).