Busca avançada
Ano de início
Entree

Uma infraestrutura para integração contínua em sistemas de IoT utilizando uma abordagem DevOps

Processo: 19/09773-9
Linha de fomento:Bolsas no Brasil - Iniciação Científica
Vigência (Início): 01 de junho de 2019
Vigência (Término): 30 de novembro de 2019
Área do conhecimento:Ciências Exatas e da Terra - Ciência da Computação
Convênio/Acordo: MCTI/MC
Pesquisador responsável:Alfredo Goldman vel Lejbman
Beneficiário:Marcelo Schmitt
Instituição-sede: Instituto de Matemática e Estatística (IME). Universidade de São Paulo (USP). São Paulo , SP, Brasil
Vinculado ao auxílio:15/24485-9 - Internet do futuro aplicada a cidades inteligentes, AP.TEM
Assunto(s):Cidades inteligentes   Internet das coisas   DevOps   Sensores   Sistemas operacionais

Resumo

Vários serviços de cidades inteligentes são altamente dependentes de sensores gerenciados por dispositivos de IoT que coletam, armazenam, distribuem e processam dados obtidos do ambiente urbano de interesse. Nesse cenário, é notável a heterogeneidade dos dispositivos utilizados para gerenciar os sensores e a heterogeneidade dos próprios sensores. Contudo, é notável também o fato de aplicações de cidades inteligentes serem muito homogêneas no quesito sistema operacional (SO), uma vez que o GNU/Linux é utilizado em cerca de 70% das aplicações nesse contexto segundo pesquisa da Eclipse Foundation. Assumindo um cenário em que a segurança das pessoas pode depender do correto funcionamento dos serviços de cidades inteligentes, é crucial que cada um dos componentes da aplicação (SO, dispositivos, sensores, etc.) seja devidamente testado e homologado antes de entrar em operação. Uma das práticas comuns da indústria de software para verificação de corretude é a utilização de testes automatizados em plataformas de integração contínua. Infraestruturas de integração contínua (CI) são amplamente adotadas pela indústria, sendo alvo de constantes evoluções; graças a ferramentas como Travis e Gitlab CI, notamos uma popularização na adoção de técnicas de integração contínua por parte de diversos projetos. Apesar dos enormes avanços nesse campo e a sua aparente maturidade adquirida nos últimos anos, notamos que softwares base (p.ex., SOs e compiladores) ainda carecem de avanços nessa área. Em especial, quando observamos o desenvolvimento de SOs, sistemas embarcados, aplicações de missão crítica, e aplicações em cidades inteligentes, fica evidente a falta ou a dificuldade de se ter suporte tanto em testes quanto em automação.