Analisando o tratamento de exceções em aplicações android

Detalhes bibliográficos
Autor(a) principal: Queiroz, Francisco Diogo Oliveira de
Data de Publicação: 2016
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da UFRN
Texto Completo: https://repositorio.ufrn.br/jspui/handle/123456789/22069
Resumo: Com a ascensão da tecnologia móvel nos últimos anos, dispositivos como smartphones e tablets têm se tornado parte integral da vida das pessoas. Como telefones tradicionais, os smartphones podem ser utilizados para realizar chamadas e mandar mensagens de texto, mas é a possibilidade de fornecer variados tipos de aplicações que os tornam tão atrativos para seus usuários. Neste contexto, aplicações Android tem se tornado cada vez mais populares; e no mesmo ritmo em que cresce o número de aplicações disponíveis, também cresce o número de usuários afetados pelos crashes de tais aplicações. Para poder lidar com tais condições excepcionais, o código para lançamento e captura de exceções não é uma parte opcional mas uma parte fundamental de tais aplicações. Porém, o que se tem observado é que o código projetado para tratar estas condições excepcionais pode muitas vezes ser a causa de crashes (e.g., exceções não capturadas). Até o momento nenhum estudo investigou as principais características do código de tratamento de exceções (TE) de aplicações Android. Este trabalho apresenta um conjunto de estudos complementares para melhor entender as características do código de TE de aplicações Android assim como identificar a visão dos desenvolvedores a respeito destas características. Neste trabalho foram realizados três estudos: (i) um estudo exploratório onde foram inspecionados o código de TE de 15 aplicações Android populares (o que no total correspondeu a 3490 blocos try-catch-finally); e (ii) dois estudos qualitativos baseados em técnicas de Teoria Fundamentada em Dados - nestes foram aplicados surveys a 28 desenvolvedores Android e 47 especialistas Android para levantar a opinião dos mesmos sobre boas e más praticas no desenvolvimento do tratamento de exceções no ambiente Android. Durante estes estudos observamos um grande número de exceções sendo silenciadas no código de apps. Também observamos que poucas aplicações enviavam informações as informações sobre as exceções uncaught para servidores de crash report.
id UFRN_caabcdab25dbcffd81bebaa93263fe4e
oai_identifier_str oai:https://repositorio.ufrn.br:123456789/22069
network_acronym_str UFRN
network_name_str Repositório Institucional da UFRN
repository_id_str
spelling Queiroz, Francisco Diogo Oliveira dehttp://lattes.cnpq.br/4142453806695605http://lattes.cnpq.br/9854634275938452Figueira Filho, Fernando Marqueshttp://lattes.cnpq.br/6874649375434646Cacho, Nelio Alessandro Azevedohttp://lattes.cnpq.br/4635320220484649Almeida, Rodrigo Bonifácio dehttp://lattes.cnpq.br/0368311142108150Coelho, Roberta de Souza2017-02-23T00:25:27Z2017-02-23T00:25:27Z2016-08-17QUEIROZ, Francisco Diogo Oliveira de. Analisando o tratamento de exceções em aplicações android. 2016. 72f. Dissertação (Mestrado em Sistemas e Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2016.https://repositorio.ufrn.br/jspui/handle/123456789/22069Com a ascensão da tecnologia móvel nos últimos anos, dispositivos como smartphones e tablets têm se tornado parte integral da vida das pessoas. Como telefones tradicionais, os smartphones podem ser utilizados para realizar chamadas e mandar mensagens de texto, mas é a possibilidade de fornecer variados tipos de aplicações que os tornam tão atrativos para seus usuários. Neste contexto, aplicações Android tem se tornado cada vez mais populares; e no mesmo ritmo em que cresce o número de aplicações disponíveis, também cresce o número de usuários afetados pelos crashes de tais aplicações. Para poder lidar com tais condições excepcionais, o código para lançamento e captura de exceções não é uma parte opcional mas uma parte fundamental de tais aplicações. Porém, o que se tem observado é que o código projetado para tratar estas condições excepcionais pode muitas vezes ser a causa de crashes (e.g., exceções não capturadas). Até o momento nenhum estudo investigou as principais características do código de tratamento de exceções (TE) de aplicações Android. Este trabalho apresenta um conjunto de estudos complementares para melhor entender as características do código de TE de aplicações Android assim como identificar a visão dos desenvolvedores a respeito destas características. Neste trabalho foram realizados três estudos: (i) um estudo exploratório onde foram inspecionados o código de TE de 15 aplicações Android populares (o que no total correspondeu a 3490 blocos try-catch-finally); e (ii) dois estudos qualitativos baseados em técnicas de Teoria Fundamentada em Dados - nestes foram aplicados surveys a 28 desenvolvedores Android e 47 especialistas Android para levantar a opinião dos mesmos sobre boas e más praticas no desenvolvimento do tratamento de exceções no ambiente Android. Durante estes estudos observamos um grande número de exceções sendo silenciadas no código de apps. Também observamos que poucas aplicações enviavam informações as informações sobre as exceções uncaught para servidores de crash report.Along the recent years, we have witnessed an astonishing increase in the number mobile applications being developed and some of them becoming largely used. Such applications extend phones capabilities far beyond of the basic calls. In the same rate the number of a users increase, also increases the number of users affected by application faults and crashes. In this contexto, Android apps are becoming more and more popular. The number of such apps is astonishingly increasing in a daily rate, as well as the number of users affected by their crashes. Android apps as other Java apps may crash due to faults on the exception handling (EH) code (e.g. uncaught exceptions). Techniques for exception detection and handling are not an optional add-on but a fundamental part of such apps. Yet, no study has investigated the main characteristics of the EH code of mobile apps nor the developers perspective about the good and bad practices of EH in such context. In this work we conducted three complementary studies: (i) one that inspected the EH code of 15 popular Android apps (which overall comprises of 3490 try-catch-finally blocks); and two qualitative studies based an Grounded Theory techniques, on which two surveys were applied to 28 Adndroid developers and 47 Android experts respectively, to get their opinion about the good and bad practices of EH development in Android environment. Some outcomes of the studies show a high occurrence of exception swallowing and only few apps sending exception information to a remote server – both considered by Android experts as bad practices that negatively impact the app robustness.porCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAOTratamento de exceçõesDesenvolvimento androidSurveyEstudo exploratórioAnalisando o tratamento de exceções em aplicações androidAnalyzing exception handling in android applicationsinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisPROGRAMA DE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃOUFRNBrasilinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFRNinstname:Universidade Federal do Rio Grande do Norte (UFRN)instacron:UFRNORIGINALFranciscoDiogoOliveiraDeQueiroz_DISSERT.pdfFranciscoDiogoOliveiraDeQueiroz_DISSERT.pdfapplication/pdf2377209https://repositorio.ufrn.br/bitstream/123456789/22069/1/FranciscoDiogoOliveiraDeQueiroz_DISSERT.pdfbfb0610f9386f2c712b9d1db62505309MD51TEXTFranciscoDiogoOliveiraDeQueiroz_DISSERT.pdf.txtFranciscoDiogoOliveiraDeQueiroz_DISSERT.pdf.txtExtracted texttext/plain326725https://repositorio.ufrn.br/bitstream/123456789/22069/4/FranciscoDiogoOliveiraDeQueiroz_DISSERT.pdf.txt59b679c787c02a7ddf047ffffffef7ddMD54THUMBNAILFranciscoDiogoOliveiraDeQueiroz_DISSERT.pdf.jpgFranciscoDiogoOliveiraDeQueiroz_DISSERT.pdf.jpgIM Thumbnailimage/jpeg3158https://repositorio.ufrn.br/bitstream/123456789/22069/5/FranciscoDiogoOliveiraDeQueiroz_DISSERT.pdf.jpgc764386e7f1f515c790bbc478e779594MD55123456789/220692017-11-03 21:50:09.341oai:https://repositorio.ufrn.br:123456789/22069Repositório de PublicaçõesPUBhttp://repositorio.ufrn.br/oai/opendoar:2017-11-04T00:50:09Repositório Institucional da UFRN - Universidade Federal do Rio Grande do Norte (UFRN)false
dc.title.pt_BR.fl_str_mv Analisando o tratamento de exceções em aplicações android
dc.title.alternative.pt_BR.fl_str_mv Analyzing exception handling in android applications
title Analisando o tratamento de exceções em aplicações android
spellingShingle Analisando o tratamento de exceções em aplicações android
Queiroz, Francisco Diogo Oliveira de
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO
Tratamento de exceções
Desenvolvimento android
Survey
Estudo exploratório
title_short Analisando o tratamento de exceções em aplicações android
title_full Analisando o tratamento de exceções em aplicações android
title_fullStr Analisando o tratamento de exceções em aplicações android
title_full_unstemmed Analisando o tratamento de exceções em aplicações android
title_sort Analisando o tratamento de exceções em aplicações android
author Queiroz, Francisco Diogo Oliveira de
author_facet Queiroz, Francisco Diogo Oliveira de
author_role author
dc.contributor.authorID.pt_BR.fl_str_mv
dc.contributor.authorLattes.none.fl_str_mv http://lattes.cnpq.br/4142453806695605
dc.contributor.advisorID.pt_BR.fl_str_mv
dc.contributor.advisorLattes.none.fl_str_mv http://lattes.cnpq.br/9854634275938452
dc.contributor.referees1.none.fl_str_mv Figueira Filho, Fernando Marques
dc.contributor.referees1ID.pt_BR.fl_str_mv
dc.contributor.referees1Lattes.none.fl_str_mv http://lattes.cnpq.br/6874649375434646
dc.contributor.referees2.none.fl_str_mv Cacho, Nelio Alessandro Azevedo
dc.contributor.referees2ID.pt_BR.fl_str_mv
dc.contributor.referees2Lattes.none.fl_str_mv http://lattes.cnpq.br/4635320220484649
dc.contributor.referees3.none.fl_str_mv Almeida, Rodrigo Bonifácio de
dc.contributor.referees3ID.pt_BR.fl_str_mv
dc.contributor.referees3Lattes.none.fl_str_mv http://lattes.cnpq.br/0368311142108150
dc.contributor.author.fl_str_mv Queiroz, Francisco Diogo Oliveira de
dc.contributor.advisor1.fl_str_mv Coelho, Roberta de Souza
contributor_str_mv Coelho, Roberta de Souza
dc.subject.cnpq.fl_str_mv CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO
topic CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO
Tratamento de exceções
Desenvolvimento android
Survey
Estudo exploratório
dc.subject.por.fl_str_mv Tratamento de exceções
Desenvolvimento android
Survey
Estudo exploratório
description Com a ascensão da tecnologia móvel nos últimos anos, dispositivos como smartphones e tablets têm se tornado parte integral da vida das pessoas. Como telefones tradicionais, os smartphones podem ser utilizados para realizar chamadas e mandar mensagens de texto, mas é a possibilidade de fornecer variados tipos de aplicações que os tornam tão atrativos para seus usuários. Neste contexto, aplicações Android tem se tornado cada vez mais populares; e no mesmo ritmo em que cresce o número de aplicações disponíveis, também cresce o número de usuários afetados pelos crashes de tais aplicações. Para poder lidar com tais condições excepcionais, o código para lançamento e captura de exceções não é uma parte opcional mas uma parte fundamental de tais aplicações. Porém, o que se tem observado é que o código projetado para tratar estas condições excepcionais pode muitas vezes ser a causa de crashes (e.g., exceções não capturadas). Até o momento nenhum estudo investigou as principais características do código de tratamento de exceções (TE) de aplicações Android. Este trabalho apresenta um conjunto de estudos complementares para melhor entender as características do código de TE de aplicações Android assim como identificar a visão dos desenvolvedores a respeito destas características. Neste trabalho foram realizados três estudos: (i) um estudo exploratório onde foram inspecionados o código de TE de 15 aplicações Android populares (o que no total correspondeu a 3490 blocos try-catch-finally); e (ii) dois estudos qualitativos baseados em técnicas de Teoria Fundamentada em Dados - nestes foram aplicados surveys a 28 desenvolvedores Android e 47 especialistas Android para levantar a opinião dos mesmos sobre boas e más praticas no desenvolvimento do tratamento de exceções no ambiente Android. Durante estes estudos observamos um grande número de exceções sendo silenciadas no código de apps. Também observamos que poucas aplicações enviavam informações as informações sobre as exceções uncaught para servidores de crash report.
publishDate 2016
dc.date.issued.fl_str_mv 2016-08-17
dc.date.accessioned.fl_str_mv 2017-02-23T00:25:27Z
dc.date.available.fl_str_mv 2017-02-23T00:25:27Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.citation.fl_str_mv QUEIROZ, Francisco Diogo Oliveira de. Analisando o tratamento de exceções em aplicações android. 2016. 72f. Dissertação (Mestrado em Sistemas e Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2016.
dc.identifier.uri.fl_str_mv https://repositorio.ufrn.br/jspui/handle/123456789/22069
identifier_str_mv QUEIROZ, Francisco Diogo Oliveira de. Analisando o tratamento de exceções em aplicações android. 2016. 72f. Dissertação (Mestrado em Sistemas e Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2016.
url https://repositorio.ufrn.br/jspui/handle/123456789/22069
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.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
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/22069/1/FranciscoDiogoOliveiraDeQueiroz_DISSERT.pdf
https://repositorio.ufrn.br/bitstream/123456789/22069/4/FranciscoDiogoOliveiraDeQueiroz_DISSERT.pdf.txt
https://repositorio.ufrn.br/bitstream/123456789/22069/5/FranciscoDiogoOliveiraDeQueiroz_DISSERT.pdf.jpg
bitstream.checksum.fl_str_mv bfb0610f9386f2c712b9d1db62505309
59b679c787c02a7ddf047ffffffef7dd
c764386e7f1f515c790bbc478e779594
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
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_ 1802117562598686720