OfflineManager - uma biblioteca Android para suporte offline em aplicativos
Autor(a) principal: | |
---|---|
Data de Publicação: | 2017 |
Tipo de documento: | Dissertação |
Idioma: | por |
Título da fonte: | Repositório Institucional da UFSCAR |
Texto Completo: | https://repositorio.ufscar.br/handle/ufscar/10138 |
Resumo: | With the expansion of mobile computing, caused by the popularization of smartphones, tablets and application stores, and the increase in the inter-connectivity between devices and servers, many questions arise in the software engineering scenario. As most applications work with a back-end server over the Internet, one such question involves offline application usage, because in many occasions network connectivity is not available. This question can be solved in many ways, including storage of the requests, caching, data synchronization, among others. There are solutions both in the industry and academy that attempt to solve this problem, however two challenges remain: to solve the problem in a way that covers many software layers, including interface and usability issues; and to support any step in the development cycle without great implementation effort, facilitating adaptation and refactoring of existing applications. This dissertation presents an Android library built to help developers provide offline functionality on their apps, while trying to solving these two challenges. To do that, the library, called OfflineManager, was built to be easily installed and utilized, and offers different ways to treat each call to the back-end, both in case of Internet connection missing, or in case of an unavailable server. It also offers feedback messages, and a point of interaction via pop-up. To evaluate the library, four evaluation methods were used: specialist opinion, implantation on a real project, comparative experiment with users, and heuristic evaluation. All four evaluations conducted showed results indication that the library attends its purpose and caters for the two challenges presented, being that the first two evaluations analyzed implementation and development aspects, while the last two analyzed interface and usability aspects. Evaluations showed that the library is easy to install, use and comprehend, that the treatments offered are sufficient and that it improves app usability in an offline scenario. Although, some threats to validity can be listed, indicating that there is room for improvement in the way they were conducted. Finally some improvements can be presented as future work in order to improve the library, expand the experiments taken, and to consolidate guidelines for the library utilization. |
id |
SCAR_11fbdaca3111b9962efc459451645539 |
---|---|
oai_identifier_str |
oai:repositorio.ufscar.br:ufscar/10138 |
network_acronym_str |
SCAR |
network_name_str |
Repositório Institucional da UFSCAR |
repository_id_str |
4322 |
spelling |
Fernandes, SidartaLucrédio, Danielhttp://lattes.cnpq.br/9090396559596221http://lattes.cnpq.br/93821110284425511f983a38-1e7c-490f-8d3f-bfec1378cd2c2018-06-06T17:26:06Z2018-06-06T17:26:06Z2017-08-22FERNANDES, Sidarta. OfflineManager - uma biblioteca Android para suporte offline em aplicativos. 2017. Dissertação (Mestrado em Ciência da Computação) – Universidade Federal de São Carlos, São Carlos, 2017. Disponível em: https://repositorio.ufscar.br/handle/ufscar/10138.https://repositorio.ufscar.br/handle/ufscar/10138With the expansion of mobile computing, caused by the popularization of smartphones, tablets and application stores, and the increase in the inter-connectivity between devices and servers, many questions arise in the software engineering scenario. As most applications work with a back-end server over the Internet, one such question involves offline application usage, because in many occasions network connectivity is not available. This question can be solved in many ways, including storage of the requests, caching, data synchronization, among others. There are solutions both in the industry and academy that attempt to solve this problem, however two challenges remain: to solve the problem in a way that covers many software layers, including interface and usability issues; and to support any step in the development cycle without great implementation effort, facilitating adaptation and refactoring of existing applications. This dissertation presents an Android library built to help developers provide offline functionality on their apps, while trying to solving these two challenges. To do that, the library, called OfflineManager, was built to be easily installed and utilized, and offers different ways to treat each call to the back-end, both in case of Internet connection missing, or in case of an unavailable server. It also offers feedback messages, and a point of interaction via pop-up. To evaluate the library, four evaluation methods were used: specialist opinion, implantation on a real project, comparative experiment with users, and heuristic evaluation. All four evaluations conducted showed results indication that the library attends its purpose and caters for the two challenges presented, being that the first two evaluations analyzed implementation and development aspects, while the last two analyzed interface and usability aspects. Evaluations showed that the library is easy to install, use and comprehend, that the treatments offered are sufficient and that it improves app usability in an offline scenario. Although, some threats to validity can be listed, indicating that there is room for improvement in the way they were conducted. Finally some improvements can be presented as future work in order to improve the library, expand the experiments taken, and to consolidate guidelines for the library utilization.Com a expansão da computação móvel, na forma da popularização de smartphones, tablets e também das lojas de aplicativos, e do aumento da interconectividade entre os dispositivos e servidores, diversas questões surgem no cenário da engenharia de software voltado para esse mercado. A medida que grande parte dos aplicativos opera com um servidor de back-end na Internet, uma questão que se destaca é a utilização de aplicativos em modo offline, pois em diversas ocasiões conexão com a rede não é fator garantido. Essa questão pode ser abordada de diversas formas, entre elas armazenamento das requisições, caching, sincronização de dados, dentre outras, e existem soluções no mercado e na academia que tentam auxiliar no tratamento desse problema, porém ainda assim existem dois desafios em aberto que precisam ser tratados: resolver o problema de forma a tratar as diversas camadas de software, incluindo a interface e questões de usabilidade, e possibilitar a resolução em qualquer etapa do ciclo de desenvolvimento sem que seja necessário grande esforço de implementação, facilitando a adaptação e a refatoração. Essa pesquisa de mestrado apresenta a construção de uma biblioteca chamada OfflineManager, para a plataforma Android, para auxiliar no tratamento das questões de uso em modo offline em aplicativos. A biblioteca foi construída para ser fácil de instalar, utilizar, e também permite a escolha dos modos de tratamento, de forma que o desenvolvedor possa configurar o comportamento para cada chamada ao back-end em sua aplicação, em cenário de falta de conexão tanto com a Internet, quanto com o servidor em questão. Além disso, os tratamentos oferecidos se estendem para a camada de interface, na forma de feedbacks informativos ou pop-up de confirmação. Para avaliar a biblioteca proposta, foram utilizados 4 metodologias diferentes: avaliação por opinião de especialista, aplicação da biblioteca em um projeto real, experimento com usuários e avaliação heurística. As quatro avaliações tiveram resultados satisfatórios sendo que as duas primeiras avaliaram conceitos técnicos e de implementação, e as duas últimas avaliaram conceitos de usabilidade. Ajudaram também na confecção de um conjunto de protodiretrizes para a escolha dos modos de tratamento, e mostraram que a biblioteca OfflineManager atinge o objetivo de fornecer tratamento para uso em modo offline, tratando a camada de interface de forma a melhorar a usabilidade, ajudando também no atendimento de algumas heurísticas de usabilidade. Algumas ameaças a validade podem ser listadas para as avaliações propostas, bem como trabalhos futuros que foram identificados durante o processo, baseados nas limitações apresentadas pela solução proposta. Dentre eles, podem ser mencionados tanto melhorias na biblioteca em si, como possibilidade de customização maior dos feedbacks, quanto expansão das avaliações realizadas, a fim de aprimorar os processos utilizados, ou firmar diretrizes consolidadas para utilização da biblioteca.Não recebi financiamentoporUniversidade Federal de São CarlosCâmpus São CarlosPrograma de Pós-Graduação em Ciência da Computação - PPGCCUFSCarFuncionamento offlineDesenvolvimento móvelBiblioteca AndroidOffline useMobile developmentAndroid libraryCIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::ENGENHARIA DE SOFTWAREOfflineManager - uma biblioteca Android para suporte offline em aplicativosOfflineManager - an Android library for offline support on mobile applicationsinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisOnline600600912fe828-c7e3-45b9-a9c1-9479310c8672info:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFSCARinstname:Universidade Federal de São Carlos (UFSCAR)instacron:UFSCARORIGINALDissertacao_Sidarta.pdfDissertacao_Sidarta.pdfdissertação mestrado - Sidarta Fernandesapplication/pdf5555150https://repositorio.ufscar.br/bitstream/ufscar/10138/1/Dissertacao_Sidarta.pdf8be5097c56b66ef4a37374f9c7a3748dMD51carta-autorizacao-publicacao.pdfcarta-autorizacao-publicacao.pdfCarta de autorização de publicaçãoapplication/pdf99533https://repositorio.ufscar.br/bitstream/ufscar/10138/2/carta-autorizacao-publicacao.pdf37588984046b856f1a8456c3652ef7c0MD52LICENSElicense.txtlicense.txttext/plain; charset=utf-81957https://repositorio.ufscar.br/bitstream/ufscar/10138/3/license.txtae0398b6f8b235e40ad82cba6c50031dMD53TEXTDissertacao_Sidarta.pdf.txtDissertacao_Sidarta.pdf.txtExtracted texttext/plain321731https://repositorio.ufscar.br/bitstream/ufscar/10138/4/Dissertacao_Sidarta.pdf.txt46c43ced0205a09e1b2f7c00deb646e5MD54carta-autorizacao-publicacao.pdf.txtcarta-autorizacao-publicacao.pdf.txtExtracted texttext/plain1389https://repositorio.ufscar.br/bitstream/ufscar/10138/5/carta-autorizacao-publicacao.pdf.txt5e204f5cc0dfbc95cc74a47aa3490c9fMD55THUMBNAILDissertacao_Sidarta.pdf.jpgDissertacao_Sidarta.pdf.jpgIM Thumbnailimage/jpeg4914https://repositorio.ufscar.br/bitstream/ufscar/10138/6/Dissertacao_Sidarta.pdf.jpg082e95dba6d5afbbf42703f8f3eaa6b1MD56carta-autorizacao-publicacao.pdf.jpgcarta-autorizacao-publicacao.pdf.jpgIM Thumbnailimage/jpeg5358https://repositorio.ufscar.br/bitstream/ufscar/10138/7/carta-autorizacao-publicacao.pdf.jpg3e78ec445d14d8ae6e43c271ac89a25eMD57ufscar/101382023-09-18 18:31:43.028oai:repositorio.ufscar.br:ufscar/10138TElDRU7Dh0EgREUgRElTVFJJQlVJw4fDg08gTsODTy1FWENMVVNJVkEKCkNvbSBhIGFwcmVzZW50YcOnw6NvIGRlc3RhIGxpY2Vuw6dhLCB2b2PDqiAobyBhdXRvciAoZXMpIG91IG8gdGl0dWxhciBkb3MgZGlyZWl0b3MgZGUgYXV0b3IpIGNvbmNlZGUgw6AgVW5pdmVyc2lkYWRlCkZlZGVyYWwgZGUgU8OjbyBDYXJsb3MgbyBkaXJlaXRvIG7Do28tZXhjbHVzaXZvIGRlIHJlcHJvZHV6aXIsICB0cmFkdXppciAoY29uZm9ybWUgZGVmaW5pZG8gYWJhaXhvKSwgZS9vdQpkaXN0cmlidWlyIGEgc3VhIHRlc2Ugb3UgZGlzc2VydGHDp8OjbyAoaW5jbHVpbmRvIG8gcmVzdW1vKSBwb3IgdG9kbyBvIG11bmRvIG5vIGZvcm1hdG8gaW1wcmVzc28gZSBlbGV0csO0bmljbyBlCmVtIHF1YWxxdWVyIG1laW8sIGluY2x1aW5kbyBvcyBmb3JtYXRvcyDDoXVkaW8gb3UgdsOtZGVvLgoKVm9jw6ogY29uY29yZGEgcXVlIGEgVUZTQ2FyIHBvZGUsIHNlbSBhbHRlcmFyIG8gY29udGXDumRvLCB0cmFuc3BvciBhIHN1YSB0ZXNlIG91IGRpc3NlcnRhw6fDo28KcGFyYSBxdWFscXVlciBtZWlvIG91IGZvcm1hdG8gcGFyYSBmaW5zIGRlIHByZXNlcnZhw6fDo28uCgpWb2PDqiB0YW1iw6ltIGNvbmNvcmRhIHF1ZSBhIFVGU0NhciBwb2RlIG1hbnRlciBtYWlzIGRlIHVtYSBjw7NwaWEgYSBzdWEgdGVzZSBvdQpkaXNzZXJ0YcOnw6NvIHBhcmEgZmlucyBkZSBzZWd1cmFuw6dhLCBiYWNrLXVwIGUgcHJlc2VydmHDp8Ojby4KClZvY8OqIGRlY2xhcmEgcXVlIGEgc3VhIHRlc2Ugb3UgZGlzc2VydGHDp8OjbyDDqSBvcmlnaW5hbCBlIHF1ZSB2b2PDqiB0ZW0gbyBwb2RlciBkZSBjb25jZWRlciBvcyBkaXJlaXRvcyBjb250aWRvcwpuZXN0YSBsaWNlbsOnYS4gVm9jw6ogdGFtYsOpbSBkZWNsYXJhIHF1ZSBvIGRlcMOzc2l0byBkYSBzdWEgdGVzZSBvdSBkaXNzZXJ0YcOnw6NvIG7Do28sIHF1ZSBzZWphIGRlIHNldQpjb25oZWNpbWVudG8sIGluZnJpbmdlIGRpcmVpdG9zIGF1dG9yYWlzIGRlIG5pbmd1w6ltLgoKQ2FzbyBhIHN1YSB0ZXNlIG91IGRpc3NlcnRhw6fDo28gY29udGVuaGEgbWF0ZXJpYWwgcXVlIHZvY8OqIG7Do28gcG9zc3VpIGEgdGl0dWxhcmlkYWRlIGRvcyBkaXJlaXRvcyBhdXRvcmFpcywgdm9jw6oKZGVjbGFyYSBxdWUgb2J0ZXZlIGEgcGVybWlzc8OjbyBpcnJlc3RyaXRhIGRvIGRldGVudG9yIGRvcyBkaXJlaXRvcyBhdXRvcmFpcyBwYXJhIGNvbmNlZGVyIMOgIFVGU0NhcgpvcyBkaXJlaXRvcyBhcHJlc2VudGFkb3MgbmVzdGEgbGljZW7Dp2EsIGUgcXVlIGVzc2UgbWF0ZXJpYWwgZGUgcHJvcHJpZWRhZGUgZGUgdGVyY2Vpcm9zIGVzdMOhIGNsYXJhbWVudGUKaWRlbnRpZmljYWRvIGUgcmVjb25oZWNpZG8gbm8gdGV4dG8gb3Ugbm8gY29udGXDumRvIGRhIHRlc2Ugb3UgZGlzc2VydGHDp8OjbyBvcmEgZGVwb3NpdGFkYS4KCkNBU08gQSBURVNFIE9VIERJU1NFUlRBw4fDg08gT1JBIERFUE9TSVRBREEgVEVOSEEgU0lETyBSRVNVTFRBRE8gREUgVU0gUEFUUk9Dw41OSU8gT1UKQVBPSU8gREUgVU1BIEFHw4pOQ0lBIERFIEZPTUVOVE8gT1UgT1VUUk8gT1JHQU5JU01PIFFVRSBOw4NPIFNFSkEgQSBVRlNDYXIsClZPQ8OKIERFQ0xBUkEgUVVFIFJFU1BFSVRPVSBUT0RPUyBFIFFVQUlTUVVFUiBESVJFSVRPUyBERSBSRVZJU8ODTyBDT01PClRBTULDiU0gQVMgREVNQUlTIE9CUklHQcOHw5VFUyBFWElHSURBUyBQT1IgQ09OVFJBVE8gT1UgQUNPUkRPLgoKQSBVRlNDYXIgc2UgY29tcHJvbWV0ZSBhIGlkZW50aWZpY2FyIGNsYXJhbWVudGUgbyBzZXUgbm9tZSAocykgb3UgbyhzKSBub21lKHMpIGRvKHMpCmRldGVudG9yKGVzKSBkb3MgZGlyZWl0b3MgYXV0b3JhaXMgZGEgdGVzZSBvdSBkaXNzZXJ0YcOnw6NvLCBlIG7Do28gZmFyw6EgcXVhbHF1ZXIgYWx0ZXJhw6fDo28sIGFsw6ltIGRhcXVlbGFzCmNvbmNlZGlkYXMgcG9yIGVzdGEgbGljZW7Dp2EuCg==Repositório InstitucionalPUBhttps://repositorio.ufscar.br/oai/requestopendoar:43222023-09-18T18:31:43Repositório Institucional da UFSCAR - Universidade Federal de São Carlos (UFSCAR)false |
dc.title.por.fl_str_mv |
OfflineManager - uma biblioteca Android para suporte offline em aplicativos |
dc.title.alternative.eng.fl_str_mv |
OfflineManager - an Android library for offline support on mobile applications |
title |
OfflineManager - uma biblioteca Android para suporte offline em aplicativos |
spellingShingle |
OfflineManager - uma biblioteca Android para suporte offline em aplicativos Fernandes, Sidarta Funcionamento offline Desenvolvimento móvel Biblioteca Android Offline use Mobile development Android library CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::ENGENHARIA DE SOFTWARE |
title_short |
OfflineManager - uma biblioteca Android para suporte offline em aplicativos |
title_full |
OfflineManager - uma biblioteca Android para suporte offline em aplicativos |
title_fullStr |
OfflineManager - uma biblioteca Android para suporte offline em aplicativos |
title_full_unstemmed |
OfflineManager - uma biblioteca Android para suporte offline em aplicativos |
title_sort |
OfflineManager - uma biblioteca Android para suporte offline em aplicativos |
author |
Fernandes, Sidarta |
author_facet |
Fernandes, Sidarta |
author_role |
author |
dc.contributor.authorlattes.por.fl_str_mv |
http://lattes.cnpq.br/9382111028442551 |
dc.contributor.author.fl_str_mv |
Fernandes, Sidarta |
dc.contributor.advisor1.fl_str_mv |
Lucrédio, Daniel |
dc.contributor.advisor1Lattes.fl_str_mv |
http://lattes.cnpq.br/9090396559596221 |
dc.contributor.authorID.fl_str_mv |
1f983a38-1e7c-490f-8d3f-bfec1378cd2c |
contributor_str_mv |
Lucrédio, Daniel |
dc.subject.por.fl_str_mv |
Funcionamento offline Desenvolvimento móvel Biblioteca Android |
topic |
Funcionamento offline Desenvolvimento móvel Biblioteca Android Offline use Mobile development Android library CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::ENGENHARIA DE SOFTWARE |
dc.subject.eng.fl_str_mv |
Offline use Mobile development Android library |
dc.subject.cnpq.fl_str_mv |
CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::ENGENHARIA DE SOFTWARE |
description |
With the expansion of mobile computing, caused by the popularization of smartphones, tablets and application stores, and the increase in the inter-connectivity between devices and servers, many questions arise in the software engineering scenario. As most applications work with a back-end server over the Internet, one such question involves offline application usage, because in many occasions network connectivity is not available. This question can be solved in many ways, including storage of the requests, caching, data synchronization, among others. There are solutions both in the industry and academy that attempt to solve this problem, however two challenges remain: to solve the problem in a way that covers many software layers, including interface and usability issues; and to support any step in the development cycle without great implementation effort, facilitating adaptation and refactoring of existing applications. This dissertation presents an Android library built to help developers provide offline functionality on their apps, while trying to solving these two challenges. To do that, the library, called OfflineManager, was built to be easily installed and utilized, and offers different ways to treat each call to the back-end, both in case of Internet connection missing, or in case of an unavailable server. It also offers feedback messages, and a point of interaction via pop-up. To evaluate the library, four evaluation methods were used: specialist opinion, implantation on a real project, comparative experiment with users, and heuristic evaluation. All four evaluations conducted showed results indication that the library attends its purpose and caters for the two challenges presented, being that the first two evaluations analyzed implementation and development aspects, while the last two analyzed interface and usability aspects. Evaluations showed that the library is easy to install, use and comprehend, that the treatments offered are sufficient and that it improves app usability in an offline scenario. Although, some threats to validity can be listed, indicating that there is room for improvement in the way they were conducted. Finally some improvements can be presented as future work in order to improve the library, expand the experiments taken, and to consolidate guidelines for the library utilization. |
publishDate |
2017 |
dc.date.issued.fl_str_mv |
2017-08-22 |
dc.date.accessioned.fl_str_mv |
2018-06-06T17:26:06Z |
dc.date.available.fl_str_mv |
2018-06-06T17:26:06Z |
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 |
FERNANDES, Sidarta. OfflineManager - uma biblioteca Android para suporte offline em aplicativos. 2017. Dissertação (Mestrado em Ciência da Computação) – Universidade Federal de São Carlos, São Carlos, 2017. Disponível em: https://repositorio.ufscar.br/handle/ufscar/10138. |
dc.identifier.uri.fl_str_mv |
https://repositorio.ufscar.br/handle/ufscar/10138 |
identifier_str_mv |
FERNANDES, Sidarta. OfflineManager - uma biblioteca Android para suporte offline em aplicativos. 2017. Dissertação (Mestrado em Ciência da Computação) – Universidade Federal de São Carlos, São Carlos, 2017. Disponível em: https://repositorio.ufscar.br/handle/ufscar/10138. |
url |
https://repositorio.ufscar.br/handle/ufscar/10138 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.relation.confidence.fl_str_mv |
600 600 |
dc.relation.authority.fl_str_mv |
912fe828-c7e3-45b9-a9c1-9479310c8672 |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.publisher.none.fl_str_mv |
Universidade Federal de São Carlos Câmpus São Carlos |
dc.publisher.program.fl_str_mv |
Programa de Pós-Graduação em Ciência da Computação - PPGCC |
dc.publisher.initials.fl_str_mv |
UFSCar |
publisher.none.fl_str_mv |
Universidade Federal de São Carlos Câmpus São Carlos |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFSCAR instname:Universidade Federal de São Carlos (UFSCAR) instacron:UFSCAR |
instname_str |
Universidade Federal de São Carlos (UFSCAR) |
instacron_str |
UFSCAR |
institution |
UFSCAR |
reponame_str |
Repositório Institucional da UFSCAR |
collection |
Repositório Institucional da UFSCAR |
bitstream.url.fl_str_mv |
https://repositorio.ufscar.br/bitstream/ufscar/10138/1/Dissertacao_Sidarta.pdf https://repositorio.ufscar.br/bitstream/ufscar/10138/2/carta-autorizacao-publicacao.pdf https://repositorio.ufscar.br/bitstream/ufscar/10138/3/license.txt https://repositorio.ufscar.br/bitstream/ufscar/10138/4/Dissertacao_Sidarta.pdf.txt https://repositorio.ufscar.br/bitstream/ufscar/10138/5/carta-autorizacao-publicacao.pdf.txt https://repositorio.ufscar.br/bitstream/ufscar/10138/6/Dissertacao_Sidarta.pdf.jpg https://repositorio.ufscar.br/bitstream/ufscar/10138/7/carta-autorizacao-publicacao.pdf.jpg |
bitstream.checksum.fl_str_mv |
8be5097c56b66ef4a37374f9c7a3748d 37588984046b856f1a8456c3652ef7c0 ae0398b6f8b235e40ad82cba6c50031d 46c43ced0205a09e1b2f7c00deb646e5 5e204f5cc0dfbc95cc74a47aa3490c9f 082e95dba6d5afbbf42703f8f3eaa6b1 3e78ec445d14d8ae6e43c271ac89a25e |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositório Institucional da UFSCAR - Universidade Federal de São Carlos (UFSCAR) |
repository.mail.fl_str_mv |
|
_version_ |
1802136342775201792 |