Projetando de Forma Eficiente o Código de Tratamento de Exceções em Aplicativos Android
Tratamento de Exceção, Android, Robustez, Visão Holística.
A popularidade da plataforma Android pode ser atribuída à capacidade de executar aplicativos que potencializam os diversos recursos dos dispositivos móveis. Os aplicativos Android são em sua maioria escritos em Java, no entanto, eles são muito diferentes dos aplicativos Java padrão, com diferentes abstrações, vários pontos de entrada e também têm uma forma diferente de comunicação entre os componentes. Estas diferenças na estrutura de aplicações Android têm produzido efeitos negativos na experiência do usuário em termos de baixa robustez. Em termos de robustez, o mecanismo de tratamento de exceções para a plataforma Android tem dois problemas principais: (1) a abordagem Terminate ALL" e (2) a falta de uma visão holística do comportamento excepcional. O tratamento de exceções está fortemente relacionado à robustez do programa. Além da robustez, o consumo de energia e o desempenho são outros requisitos não funcionais que precisam ser levados em consideração durante o desenvolvimento. Esses três requisitos podem afetar diretamente a qualidade da experiência do usuário e a qualidade do funcionamento dos aplicativos. Neste contexto este trabalho propõe uma metodologia geral para engenharia eciente de aplicativos Android e um EHM denominado DroidEH para suportar a metodologia e melhorar a robustez de aplicativos Android. Estudos foram realizados para entender o impacto do tratamento de exceções na robustez e no consumo de energia dos aplicativos Android. A avaliação da metodologia mostrou que ela é satisfatória para atingir o objetivo de permitir ao desenvolvedor tomar decisões levando em consideração esses requisitos não funcionais e determinar através do trade-o entre esses requisitos, diferentes modos de operação que podem ser implementados no aplicativo usando o DroidEH. Além disso, foi observado que uso do DroidEH em aplicativos pode aumentar sua robustez.