An IoT application development using IoTSuite
This work addresses the problem of complex IoT development for developers, but it appears incremental as it builds on existing tools and methods.
The paper tackles the challenge of IoT application development by introducing IoTSuite, a tool suite designed to reduce the burden across development stages, and demonstrates its use on various IoT applications tested with multiple technologies like Android, Raspberry Pi, and cloud services.
Application development in the Internet of Things (IoT) is challenging because it involves dealing with issues that attribute to different life-cycle phases. First, the application logic has to be analyzed and then separated into a set of distributed tasks for an underlying network. Then, the tasks have to be implemented for the specific hardware. Moreover, we take different IoT applications and present development of these applications using IoTSuite. In this paper, we introduce a design and implementation of ToolSuite, a suite of tools, for reducing burden of each stage of IoT application development process. We take different class of IoT applications, largely found in the IoT literature, and demonstrate these IoT application development using IoTSuite. These applications have been tested on several IoT technologies such as Android, Raspberry PI, Arduino, and JavaSE-enabled devices, Messaging protocols such as MQTT, CoAP, WebSocket, Server technologies such as Node.js, Relational database such as MySQL, and Microsoft Azure Cloud services.