Chen Whai-En, Lin Yi-Bing, Yen Tai-Hsiang, Peng Syuan-Ru, Lin Yun-Wei
Department of Computer Science and Information Engineering, Asia University, Taichung City 413305, Taiwan.
China Medical School, College of Humanities and Sciences, Taichung City 40402, Taiwan.
Sensors (Basel). 2022 Jun 30;22(13):4942. doi: 10.3390/s22134942.
The deployment of a client-server-based distributed intelligent system involves application development in both the network domain and the device domain. In the network domain, an application server (typically in the cloud) is deployed to execute the network applications. In the device domain, several Internet of Things (IoT) devices may be configured as, for example, wireless sensor networks (WSNs), and interact with each other through the application server. Developing the network and the device applications are tedious tasks that are the major costs for building a distributed intelligent system. To resolve this issue, a low-code or no-code (LCNC) approach has been purposed to automate code generation. As traditional LCNC solutions are highly generic, they tend to generate excess code and instructions, which will lack efficiency in terms of storage and processing. Fortunately, optimization of automated code generation can be achieved for IoT by taking advantage of the IoT characteristics. An IoT-based distributed intelligent system consists of the device domain (IoT devices) and the network domain (IoT server). The software of an IoT device in the device domain consists of the Device Application (DA) and the Sensor Application (SA). Most IoT LCNC approaches provide code generation in the network domain. Very few approaches automatically generate the DA code. To our knowledge, no approach supports the SA code generation. In this paper, we propose DeviceTalk, an LCNC environment for the DA and the SA code development. DeviceTalk automatically generates the code for IoT devices to speed up the software development in the device domain for a distributed intelligent system. We propose the DeviceTalk architecture, design and implementation of the code generation mechanism for the IoT devices. Then, we show how a developer can use the DeviceTalk Graphical User Interface (GUI) to exercise LCNC development of the device software.
基于客户端-服务器的分布式智能系统的部署涉及网络域和设备域中的应用程序开发。在网络域中,部署应用服务器(通常在云端)以执行网络应用程序。在设备域中,多个物联网(IoT)设备可以配置为例如无线传感器网络(WSN),并通过应用服务器相互交互。开发网络和设备应用程序是繁琐的任务,也是构建分布式智能系统的主要成本。为了解决这个问题,已经提出了一种低代码或无代码(LCNC)方法来实现代码生成自动化。由于传统的LCNC解决方案非常通用,它们往往会生成过多的代码和指令,这在存储和处理方面会缺乏效率。幸运的是,利用物联网的特性可以实现物联网自动化代码生成的优化。基于物联网的分布式智能系统由设备域(物联网设备)和网络域(物联网服务器)组成。设备域中物联网设备的软件由设备应用程序(DA)和传感器应用程序(SA)组成。大多数物联网LCNC方法在网络域中提供代码生成。很少有方法能自动生成DA代码。据我们所知,没有方法支持SA代码生成。在本文中,我们提出了DeviceTalk,这是一种用于DA和SA代码开发的LCNC环境。DeviceTalk自动为物联网设备生成代码,以加快分布式智能系统设备域中的软件开发。我们提出了DeviceTalk架构、物联网设备代码生成机制的设计和实现。然后,我们展示了开发人员如何使用DeviceTalk图形用户界面(GUI)进行设备软件的LCNC开发。