Engineering efficient exception handling for android applications
Autor(a) principal: | |
---|---|
Data de Publicação: | 2021 |
Tipo de documento: | Tese |
Idioma: | por |
Título da fonte: | Repositório Institucional da UFRN |
Texto Completo: | https://repositorio.ufrn.br/handle/123456789/44621 |
Resumo: | 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 eficiente 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-off 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. |
id |
UFRN_2ae1c00a9e9125c96ae4e850b9b9c4f1 |
---|---|
oai_identifier_str |
oai:https://repositorio.ufrn.br:123456789/44621 |
network_acronym_str |
UFRN |
network_name_str |
Repositório Institucional da UFRN |
repository_id_str |
|
spelling |
Oliveira, Juliana de Araújohttp://lattes.cnpq.br/4635320220484649Barbosa, Eiji Adachi Medeiroshttp://lattes.cnpq.br/8833409749475821Lima Filho, Fernando José Castor dehttp://lattes.cnpq.br/7310046838140771Coelho, Roberta de Souzahttp://lattes.cnpq.br/9854634275938452Carvalho, Windson Viana dehttp://lattes.cnpq.br/1744732999336375Cacho, Nelio Alessandro Azevedo2021-10-18T18:39:43Z2021-10-18T18:39:43Z2021-05-31OLIVEIRA, Juliana de Araújo. Engineering efficient exception handling for android applications. 2021. 152f. Tese (Doutorado em Ciência da Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2021.https://repositorio.ufrn.br/handle/123456789/44621A 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 eficiente 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-off 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.The popularity of the Android platform can be attributed to their ability to run apps that leverage the many capabilities of mobile devices. Android applications are mostly written in Java, however they are very different from standard Java applications, with different abstractions, multiple entry points, and also have a different form of communication between components. These differences in the structure of Android applications have had negative effects on the user experience in terms of low robustness. In terms of robustness, the exception handling mechanism for the Android platform has two main problems: (1) the “Terminate ALL" approach and (2) a lack of a holistic view on exceptional behavior. Exception handling is strongly related to program robustness. In addition to robustness, energy consumption and performance are other non-functional requirements that need to be taken into account during development. These three requirements can directly affect the quality of the user experience and the quality of the functioning of the applications. In this context this work proposes a general methodology to efficient engineering of Android applications and an EHM called DroidEH to support the methodology and to improve the robustness of Android applications. Studies have been carried out to understand the impact of exception handling on the robustness and energy consumption of Android applications. The evaluation of the methodology showed that it is satisfactory in achieving the objective of allowing the developer to make decisions taking into account these non-functional requirements and to determine through the trade-off between these requirements, different operation modes that can be implemented in the application using the DroidEH. Furthermore, it was observed that the use of DroidEH in applications can enhance their robustness.Universidade Federal do Rio Grande do NortePROGRAMA DE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃOUFRNBrasilComputaçãoTratamento de exceçãoAndroidRobustezVisão holísticaConsumo de energiaEngineering efficient exception handling for android applicationsinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisinfo:eu-repo/semantics/openAccessporreponame:Repositório Institucional da UFRNinstname:Universidade Federal do Rio Grande do Norte (UFRN)instacron:UFRNORIGINALEngineeringefficientexception_Oliveira_2021.pdfapplication/pdf2991195https://repositorio.ufrn.br/bitstream/123456789/44621/1/Engineeringefficientexception_Oliveira_2021.pdf55da4e68eed7d5073928034b63609e50MD51123456789/446212022-05-02 13:01:38.216oai:https://repositorio.ufrn.br:123456789/44621Repositório de PublicaçõesPUBhttp://repositorio.ufrn.br/oai/opendoar:2022-05-02T16:01:38Repositório Institucional da UFRN - Universidade Federal do Rio Grande do Norte (UFRN)false |
dc.title.pt_BR.fl_str_mv |
Engineering efficient exception handling for android applications |
title |
Engineering efficient exception handling for android applications |
spellingShingle |
Engineering efficient exception handling for android applications Oliveira, Juliana de Araújo Computação Tratamento de exceção Android Robustez Visão holística Consumo de energia |
title_short |
Engineering efficient exception handling for android applications |
title_full |
Engineering efficient exception handling for android applications |
title_fullStr |
Engineering efficient exception handling for android applications |
title_full_unstemmed |
Engineering efficient exception handling for android applications |
title_sort |
Engineering efficient exception handling for android applications |
author |
Oliveira, Juliana de Araújo |
author_facet |
Oliveira, Juliana de Araújo |
author_role |
author |
dc.contributor.advisorLattes.pt_BR.fl_str_mv |
http://lattes.cnpq.br/4635320220484649 |
dc.contributor.referees1.none.fl_str_mv |
Barbosa, Eiji Adachi Medeiros |
dc.contributor.referees1Lattes.pt_BR.fl_str_mv |
http://lattes.cnpq.br/8833409749475821 |
dc.contributor.referees2.none.fl_str_mv |
Lima Filho, Fernando José Castor de |
dc.contributor.referees2Lattes.pt_BR.fl_str_mv |
http://lattes.cnpq.br/7310046838140771 |
dc.contributor.referees3.none.fl_str_mv |
Coelho, Roberta de Souza |
dc.contributor.referees3Lattes.pt_BR.fl_str_mv |
http://lattes.cnpq.br/9854634275938452 |
dc.contributor.referees4.none.fl_str_mv |
Carvalho, Windson Viana de |
dc.contributor.referees4Lattes.pt_BR.fl_str_mv |
http://lattes.cnpq.br/1744732999336375 |
dc.contributor.author.fl_str_mv |
Oliveira, Juliana de Araújo |
dc.contributor.advisor1.fl_str_mv |
Cacho, Nelio Alessandro Azevedo |
contributor_str_mv |
Cacho, Nelio Alessandro Azevedo |
dc.subject.por.fl_str_mv |
Computação Tratamento de exceção Android Robustez Visão holística Consumo de energia |
topic |
Computação Tratamento de exceção Android Robustez Visão holística Consumo de energia |
description |
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 eficiente 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-off 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. |
publishDate |
2021 |
dc.date.accessioned.fl_str_mv |
2021-10-18T18:39:43Z |
dc.date.available.fl_str_mv |
2021-10-18T18:39:43Z |
dc.date.issued.fl_str_mv |
2021-05-31 |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/doctoralThesis |
format |
doctoralThesis |
status_str |
publishedVersion |
dc.identifier.citation.fl_str_mv |
OLIVEIRA, Juliana de Araújo. Engineering efficient exception handling for android applications. 2021. 152f. Tese (Doutorado em Ciência da Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2021. |
dc.identifier.uri.fl_str_mv |
https://repositorio.ufrn.br/handle/123456789/44621 |
identifier_str_mv |
OLIVEIRA, Juliana de Araújo. Engineering efficient exception handling for android applications. 2021. 152f. Tese (Doutorado em Ciência da Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2021. |
url |
https://repositorio.ufrn.br/handle/123456789/44621 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.publisher.none.fl_str_mv |
Universidade Federal do Rio Grande do Norte |
dc.publisher.program.fl_str_mv |
PROGRAMA DE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃO |
dc.publisher.initials.fl_str_mv |
UFRN |
dc.publisher.country.fl_str_mv |
Brasil |
publisher.none.fl_str_mv |
Universidade Federal do Rio Grande do Norte |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFRN instname:Universidade Federal do Rio Grande do Norte (UFRN) instacron:UFRN |
instname_str |
Universidade Federal do Rio Grande do Norte (UFRN) |
instacron_str |
UFRN |
institution |
UFRN |
reponame_str |
Repositório Institucional da UFRN |
collection |
Repositório Institucional da UFRN |
bitstream.url.fl_str_mv |
https://repositorio.ufrn.br/bitstream/123456789/44621/1/Engineeringefficientexception_Oliveira_2021.pdf |
bitstream.checksum.fl_str_mv |
55da4e68eed7d5073928034b63609e50 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 |
repository.name.fl_str_mv |
Repositório Institucional da UFRN - Universidade Federal do Rio Grande do Norte (UFRN) |
repository.mail.fl_str_mv |
|
_version_ |
1802117634687238144 |