Previsão de vazamento de recursos em aplicações Android usando Aprendizado de Máquina - Lima, Josias Gomes (2024)
Quando as aplicações móveis adquirem recursos do dispositivo (como câmera, reprodutor de mídia e sensores) sem liberá-los da maneira adequada e em tempo hábil, ocorre uma falha chamada vazamento de recursos. Esse tipo de falha pode causar problemas sérios, como degradação de desempenho do dispositivo ou falha do sistema. Este trabalho propõe a abordagem LeakPred para auxiliar desenvolvedores na identificação de componentes que tenham vazamentos de recursos. Um conjunto de seis métricas relacionadas ao tempo de vida dos recursos ou da aplicação foi selecionado para a caracterização dos componentes. Seis técnicas de aprendizado de máquina foram analisadas para identificar componentes com vazamentos a partir dessas métricas. Os resultados sugerem que a abordagem LeakPred, associada com técnicas de classificação, é capaz de identificar vazamento de recursos, sendo que dois modelos, k-Vizinhos Mais Próximos e rede neural profunda, obtiveram, respectivamente, acurácias de 87,84% e 87,75%. A abordagem LeakPred foi comparada com 5 ferramentas do estado da arte, a saber, Android Lint, FindBugs, Infer, Checker Framework e EcoAndroid, superando todas em taxa de identificação de componentes com vazamentos de recursos.