Use este identificador para citar ou linkar para este item:
https://repositorio.ufpe.br/handle/123456789/46787
Compartilhe esta página
Registro completo de metadados
Campo DC | Valor | Idioma |
---|---|---|
dc.contributor.advisor | MIRANDA, Breno Alexandro Ferreira de | - |
dc.contributor.author | FREITAS, Davi Simões | - |
dc.date.accessioned | 2022-09-29T16:21:30Z | - |
dc.date.available | 2022-09-29T16:21:30Z | - |
dc.date.issued | 2022-08-23 | - |
dc.identifier.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. | pt_BR |
dc.identifier.uri | https://repositorio.ufpe.br/handle/123456789/46787 | - |
dc.description.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. | pt_BR |
dc.language.iso | por | pt_BR |
dc.publisher | Universidade Federal de Pernambuco | pt_BR |
dc.rights | openAccess | pt_BR |
dc.rights.uri | http://creativecommons.org/licenses/by-nc-nd/3.0/br/ | * |
dc.subject | Engenharia de software | pt_BR |
dc.subject | Teste de software | pt_BR |
dc.subject | Robótica | pt_BR |
dc.title | Uma infraestrutura assistida por robô para detecção de perda de dados em aplicativos Android | pt_BR |
dc.type | masterThesis | pt_BR |
dc.contributor.advisor-co | IYODA, Juliano Manabu | - |
dc.contributor.authorLattes | http://lattes.cnpq.br/2745492621875141 | pt_BR |
dc.publisher.initials | UFPE | pt_BR |
dc.publisher.country | Brasil | pt_BR |
dc.degree.level | mestrado | pt_BR |
dc.contributor.advisorLattes | http://lattes.cnpq.br/0311224988123909 | pt_BR |
dc.publisher.program | Programa de Pos Graduacao em Ciencia da Computacao | pt_BR |
dc.description.abstractx | When an Android application is interrupted by a call or changes the device’s orientation (from portrait to landscape or vice versa), the operating system may need to destroy and recreate the activity. Ideally, data and application state should be saved (before destruction) and restored (after recreated) to avoid data loss. Unfortunately, the Android operating sys- tem does not manage these scenarios natively, and application developers explicitly need to save and restore application data. Otherwise, users may experience data loss failures (i.e., information that was present before the outage is lost after the activity is recreated). Recent work (RIGANELLI et al., 2020) has proposed an automated approach to detecting data loss in Android applications: test cases are generated to explore the application’s interface, and during exploration, the application is interrupted by triggering, via software, a rotation on the screen. Screenshots and application data before and after rotation are compared to see if data is lost. Such a proposal, however, is i) unrealistic and ii) invasive. Unrealistic because the change in screen orientation is triggered via software — and not by sensors as would happen in a real scenario, and invasive because commands are sent via communication with the device via USB cable or simulated device. This work proposes the use of a handcrafted robotic arm to provide a more realistic testing environment: the events of destruction and recreation of activities are triggered by the physical rotation of the smartphone. The proposed infrastructure also allows sending commands without the need to physically connect the device via a USB cable, an essential step towards a realistic and non-invasive solution. To assess the feasibility of using the proposed infrastructure, an empirical evaluation was performed considering 77 Android applications, and 341 data loss failures were identified. All identified failures were reported to the developers, and of the 201 bugs that have already been analyzed, 180 (89,55%) have been confirmed by the developers. | pt_BR |
dc.contributor.advisor-coLattes | http://lattes.cnpq.br/0005349558315095 | pt_BR |
Aparece nas coleções: | Dissertações de Mestrado - Ciência da Computação |
Arquivos associados a este item:
Arquivo | Descrição | Tamanho | Formato | |
---|---|---|---|---|
DISSERTAÇÃO Davi Simões Freitas.pdf | 10,13 MB | Adobe PDF | ![]() Visualizar/Abrir |
Este arquivo é protegido por direitos autorais |
Este item está licenciada sob uma Licença Creative Commons