Estabelecimento de uma arquitetura de referência para Sistemas Ciber-físicos autoadaptativos - Camargo, Marcos Paulo de Oliveira (2023)
Nos últimos anos, sistemas de computação têm emergido em diversos setores da sociedade. Do ponto de vista tecnológico, diversos sistemas têm sido beneficiados com o apoio de tecnologias como IoT (do inglês, Internet of Things), Cloud Computing, entre outras. Dentre as classes de sistemas existentes na literatura, os Sistemas Ciber-Físicos (do inglês, Cyber Physical Systems -- CPS) possui uma posição de destaque na comunidade científica e iniciativa privada por caracterizar a interação de entidades computacionais com processos físicos, dispondo de serviços de processamento e armazenamento localizados na Internet. Contudo, por lidarem com problemas de incertezas de requisitos na fase de design e mudanças em tempo de execução, um novo conjunto de dificuldades é emergido. Diante desse contexto, origina-se uma nova classe de sistemas denominada Sistemas Ciber-Físicos Autoadaptativos (do inglês, Self-adaptive Cyber Physical Systems -- Self-CPS). Em linhas gerais, um Self-CPS combina as características dos CPSs com mecanismos autoadaptativos capazes de reconhecer as mudanças do sistema e de contexto e propor soluções de natureza estrutural, comportamental e/ou relacionado ao ambiente de execução com a finalidade de manter seu estado de execução sem (ou com o mínimo de) intervenção humana. Nesse sentido, tem-se observado que os Self-CPS têm sido desenvolvidos sem a sistematização de conhecimento e boas práticas de engenharia. Visando obter uma visão geral acerca dos Self-CPS, foi conduzida uma investigação da literatura adotando a técnica de mapeamento sistemático (do inglês, Systematic Mapping Study -- SMS) em relação aos estudos secundários, expondo as principais contribuições e os objetos de investigação de cada estudo. Em um segundo momento, foi realizada uma investigação acerca dos estudos primários que propuseram modelos/arquiteturas de referência para Self-CPS. A partir dos resultados oriundos do mapeamento sistemático realizado, ficou perceptível a inexistência de uma abordagem sistemática que apoie o desenvolvimento de tais modelos/arquiteturas de referência, além de não lidar com os interesses de autoproteção e observabilidade. Diante do exposto, o principal objetivo desta dissertação é sistematizar o conhecimento obtido em uma arquitetura de referência que integre abordagens de autoadaptação, autoproteção, observabilidade e as melhores práticas de Engenharia de Software. Além disso, pode-se destacar também que apresentar um panorama detalhado a respeito do estágio atual sobre modelos e arquiteturas de referência também é um objetivo deste trabalho. Por fim, como forma de avaliar a arquitetura de referência proposta, um estudo de caso voltado ao domínio da saúde foi conduzido, uma vez que foi evidenciado uma carência na literatura sobre trabalhos que apresentam soluções baseadas em (Self-)CPS aplicadas a este domínio. Para averiguar a qualidade da arquitetura proposta, uma inspeção baseada em checklist foi conduzida, analisando se os requisitos arquiteturais propostos foram alcançados.