A framework to simplify the development process of IoT-based applications
Internet of Things, Framework, Simplification, Development, Application, Virtualization
The recent years have been marked by a growing advance in embedded computing, sensing technologies, and connected devices. Such advance has had a significant and expressive impact on innovative paradigms such as the Internet of Things (IoT), which believes that intelligent objects capable of connecting in the network can cooperate with each other to achieve a common goal. Such growth has leveraged supplier initiatives to produce protocols and communication standards that would enable such cooperation. However, the considerable diversity of devices and consequently protocols that have emerged have made this process difficult, creating numerous challenges, including heterogeneity and interoperability. These challenges have made the IoT application development process a complex and costly task, since the capabilities of these protocols and standards aimed at discovering the devices on the network, communication among them, have become quite specific for each device, forcing the developer to create complex integration strategies to deal with this limitation. In this way, this work proposes a framework that will seek to simplify the process of development of IoT applications through device virtualization, so that heterogeneous aspects connected to devices will be abstracted by this virtualization, and common operations of protocols such as the discovery of devices and communication with them will be abstracted through a common interface between them, integrating them and reducing the impacts of the heterogeneous characteristics