Assisting the Requirements Definition and Modeling of IoT applications through the ReqM4IoT tool - Nascimento, Rodrigo; Silva, Bruno; Avelino, Guilherme; Viana, Davi (Anais do Simpósio Brasileiro de Qualidade de Software (SBQS); 2024: Anais do XXIII Simpósio Brasileiro de Qualidade de Software, 2024)
The Internet of Things (IoT) represents a computational paradigm where connected devices share a common communication network to interact and provide various applications. In this context, the challenges for IoT and Software Engineering arise from the drive to create smart applications in various domains, such as smart cities, homes, and hospitals. Requirements analysis and software modeling are steps in building IoT systems that aim to ensure a good specification of the system. However, the literature lacks a well-established set of practices for these phases of IoT system development, especially regarding requirements analysis and system modeling. This results in a significant gap in knowledge and standardization of processes. Therefore, a solution that supports these stages of the IoT system development lifecycle is needed. This paper presents ReqM4IoT, a tool that integrates two previously developed techniques: ReqMLSCity, a specific technique for requirements analysis for IoT, and SysIoTML, a specific technique for software modeling for IoT. With this solution, the quality of the software can benefit significantly from using ReqM4IoT, as suggested by the initial evaluation conducted in this work. The evaluation involved five participants with different levels of experience but with a common knowledge base in Software Engineering and IoT. The experiment aimed to evaluate the feasibility, usefulness, and ease of use of the tool in the development of IoT applications. The results indicated that the tool is useful and the participants were able to effectively solve the proposed problem. Although the evaluation pointed out opportunities for improvement, these insights pave the way for further enhancement of ReqM4IoT.