Contexto: A Internet das Coisas (IoT) é um termo que se refere à integração de diferentes dispositivos e tecnologias, permitindo a interação entre eles para oferecer uma variedade de serviços. No entanto, o desenvolvimento de sistemas baseados em IoT apresenta desafios devido às particularidades exigidas desses sistemas. Objetivo: Nesse sentido, foram propostas duas técnicas de elicitação de requisitos: Mapa da Sensorina e Mind IoT, para auxiliar engenheiros de requisitos durante o processo de desenvolvimento de sistemas IoT. Método: Para chegar a essas técnicas, adotou-se uma abordagem iterativa baseada em estudos experimentais realizados em ambientes acadêmicos, para adquirir evidências e definir as técnicas. Resultados: Os estudos indicam a viabilidade de aplicação das técnicas propostas e mostram que elas são adequadas para elicitar requisitos IoT. A análise foi baseada nas percepções dos participantes convidados, que avaliaram a utilidade e facilidade de uso das técnicas nos cenários em que foram aplicadas. Essas percepções são fundamentais para verificar se as técnicas são viáveis, na prática. Conclusões: Dessa forma, este trabalho contribui para o avanço do conhecimento na área de requisitos de sistemas IoT, fornecendo técnicas para a elicitação de requisitos IoT. A utilização das técnicas pode auxiliar os engenheiros de requisitos a lidar com as particularidades e complexidades inerentes aos sistemas IoT.
A metodologia adotada nesta pesquisa, conforme mostra a Figura1, é uma adaptação da abordagem proposta por Shull, Caver e Travassos (2001), e é composta por quatro etapas, que contemplam a definição, avaliação e refinamento das técnicas.
(1) Estudo Exploratório: para gerar as primeiras impressões sobre o uso das técnicas de DT durante o desenvolvimento de sistemas IoT. Este estudo foi realizado para identificar (potenciais) tendências e benefícios de uso das técnicas de DT durante a elicitação de requisitos IoT. Os resultados desta etapa foram publicados nos anais do XXI Simpósio Brasileiro de Qualidade de Software (SBQS), de 2022 (SOUZA et al. 2022).
.
(2) Proposta Inicial das Técnicas: propomos duas técnicas de elicitação de requisitos com base nos resultados obtidos na etapa (1) e considerando as particularidades IoT apresentadas no trabalho de Motta et al., 2023: o Mapa da Sensorina e o Mind IoT. Ambas as técnicas são centradas nos usuários. O Mapa da Sensorina consiste em criar um mapa que representa atores sensores que compõem o sistema IoT, para mapear as interações desses atores no sistema, e entender como as informações são coletadas, processadas e utilizadas pelo sistema. O Mind IoT busca apresentar de forma visual as necessidades dos usuários e identificar possíveis soluções considerando as particularidades dos sistemas IoT.
(3) Proposta das Técnicas: propomos duas técnicas de elicitação de requisitos com base nos resultados obtidos na etapa (1) e considerando as particularidades IoT apresentadas no trabalho de Motta, Oliveira e Travassos (2023): o Mapa da Sensorina e o Mind IoT. Ambas as técnicas são centradas nos usuários. O Mapa da Sensorina consiste em criar um mapa que representa atores sensores que compõem o sistema IoT, para mapear as interações desses atores no sistema, e entender como as informações são coletadas, processadas e utilizadas pelo sistema. O Mind IoT busca apresentar de forma visual as necessidades dos usuários e identificar possíveis soluções considerando as particularidades dos sistemas IoT.
(3) Estudo de Viabilidade: foi realizado um estudo para avaliar a facilidade de uso das técnicas. Os resultados do estudo indicaram que o Mapa da Sensorina e o Mind IoT são efetivos na identificação de requisitos para IoT. Além disso, a análise de feedback proporcionou insights valiosos para possíveis melhorias nas técnicas.
(4) Refinamento das Técnicas: após a realização do estudo de viabilidade, as técnicas propostas foram revisadas e aprimoradas, com base nos resultados obtidos e nas percepções dos participantes em relação ao uso das técnicas durante a elicitação. Assim, as técnicas foram refinadas e surgiram novas questões de pesquisa a serem exploradas em outro estudo experimental.
(5) Estudo de Observação: após o refinamento das técnicas, foi realizado um estudo em âmbito acadêmico e observado pelos participantes, para evitar que a abordagem seja utilizada de forma precoce em âmbito industrial. Através dessa observação, foram coletados dados sobre como as técnicas são utilizadas.
(6) Refinamento das Técnicas: com base nos resultados do estudo de observação e na análise realizada para avaliar se as técnicas alcançaram seus objetivos, concluiu-se que não era necessário efetuar modificações no Mapa da Sensorina. Em vez disso, as alterações foram direcionadas para aprimorar a usabilidade do Mind IoT durante o processo de elicitação de requisitos.
O objetivo é mapear as interações entre os sensores presentes no sistema, identificando as informações coletadas e as ações possíveis a partir desses dados.
O Mind IoT deve apoiar engenheiros(as) de software a organizar informações visualmente e ajudar a identificar informações específicas que poderiam passar despercebidas ou ausentes.
Para apoiar o uso do Mind IoT, disponibilizamos alguns artefatos de apoio: (i) o glossário possui algumas descrições dos termos do template e exemplos de como preencher; e um (ii) exemplo preenchido da técnica.