Please use this identifier to cite or link to this item:
https://repositorio.ufpe.br/handle/123456789/46787
Share on
Title: | Uma infraestrutura assistida por robô para detecção de perda de dados em aplicativos Android |
Authors: | FREITAS, Davi Simões |
Keywords: | Engenharia de software; Teste de software; Robótica |
Issue Date: | 23-Aug-2022 |
Publisher: | Universidade Federal de Pernambuco |
Citation: | FREITAS, Davi Simões. Uma infraestrutura assistida por robô para detecção de perda de dados em aplicativos Android. 2022. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal de Pernambuco, Recife, 2022. |
Abstract: | Quando uma aplicação Android é interrompida por uma chamada ou quando a orientação do dispositivo é alterada (de retrato para paisagem ou vice-versa), o sistema operacional pode precisar destruir e recriar a atividade. Idealmente os dados e o estado da aplicação deveriam ser salvos (antes da destruição) e restaurados (após a recriação) para evitar perda de dados. Infelizmente, o sistema operacional Android não gerencia estes cenários nativamente e os desenvolvedores de aplicativos precisam explicitamente salvar e restaurar os dados da aplicação. Caso contrário, os usuários podem observar falhas de perda de dados (i.e., informações que estavam presentes antes da interrupção são perdidas após a recriação da atividade). Um trabalho recente (RIGANELLI et al., 2020) propôs uma abordagem automatizada para a detecção de perda de dados em aplicativos Android: casos de teste são gerados para explorar a interface do aplicativo e, durante a exploração, a aplicação é interrompida a partir do acionamento, via software, de uma rotação na tela. Capturas de tela e os dados do aplicativo antes e depois da rotação são comparados para verificar se dados foram perdidos. Tal proposta, entretanto, é i) pouco realista e ii) invasiva. Pouco realista porque a alteração na orientação da tela é acionada via software –— e não pelos sensores como aconteceria em um cenário real; e invasiva porque os comandos são enviados através de comunicação com o dispositivo via cabo USB ou dispositivo simulado. Este trabalho propõe a utilização de um braço robótico artesanal para proporcionar um ambiente de testes mais realista: os eventos de destruição e recriação das atividades são acionados pela rotação física do smartphone. A infraestrutura proposta também permite o envio de comandos sem a necessidade de conexão física com o dispositivo via cabo USB, um passo importante na direção de uma solução realista e não-invasiva. Para avaliar a viabilidade de utilização da infraestrutura proposta, uma avaliação empírica foi realizada considerando 77 aplicativos Android e 341 falhas de perda de dados foram identificadas. Todas as falhas identificadas foram reportadas aos desenvolvedores e, das 201 falhas que já foram analisadas, 180 (89,55%) foram confirmadas pelos desenvolvedores. |
URI: | https://repositorio.ufpe.br/handle/123456789/46787 |
Appears in Collections: | Dissertações de Mestrado - Ciência da Computação |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
DISSERTAÇÃO Davi Simões Freitas.pdf | 10,13 MB | Adobe PDF | ![]() View/Open |
This item is protected by original copyright |
This item is licensed under a Creative Commons License