Mobile app development : challenges and opportunities for automated support

Mobile app development is a relatively new phenomenon that is increasing rapidly due to the ubiquity and popularity of smartphones among end-users. As with any new domain, mobile app development has its own set of new challenges. The work presented in this dissertation has focused on improving the s...

Full description

Bibliographic Details
Main Author: Erfani Joorabchi, Mona
Language:English
Published: University of British Columbia 2016
Online Access:http://hdl.handle.net/2429/57542
id ndltd-UBC-oai-circle.library.ubc.ca-2429-57542
record_format oai_dc
spelling ndltd-UBC-oai-circle.library.ubc.ca-2429-575422018-01-05T17:28:52Z Mobile app development : challenges and opportunities for automated support Erfani Joorabchi, Mona Mobile app development is a relatively new phenomenon that is increasing rapidly due to the ubiquity and popularity of smartphones among end-users. As with any new domain, mobile app development has its own set of new challenges. The work presented in this dissertation has focused on improving the state-of-the-art by understanding the current practices and challenges in mobile app development as well as proposing a new set of techniques and tools based on the identified challenges. To understand the current practices, real challenges and issues in mobile development, we first conducted an explorative field study, in which we interviewed 12 senior mobile developers from nine different companies, followed by a semi-structured survey, with 188 respondents from the mobile development community. Next, we mined and quantitatively and qualitatively analyzed 32K non-reproducible bug reports in one industrial and five open-source bug repositories. Then, we performed a large-scale comparative study of 80K iOS and Android app-pairs and 1.7M reviews by mining the Google Play and Apple app stores. Based on the identified challenges, we first proposed a reverse engineering technique that automatically analyzes a given iOS mobile app and generates a state model of the app. Finally, we proposed an automated technique for detecting inconsistencies in the same mobile app implemented for iOS and Android platforms. To measure the effectiveness of the proposed techniques, we evaluated our methods using various industrial and open-source mobile apps. The evaluation results point to the effectiveness of the proposed model generation and mapping techniques in terms of accuracy and inconsistency detection capability. Applied Science, Faculty of Electrical and Computer Engineering, Department of Graduate 2016-04-11T16:52:10Z 2016-04-12T02:07:01 2016 2016-05 Text Thesis/Dissertation http://hdl.handle.net/2429/57542 eng Attribution-NonCommercial-NoDerivatives 4.0 International http://creativecommons.org/licenses/by-nc-nd/4.0/ University of British Columbia
collection NDLTD
language English
sources NDLTD
description Mobile app development is a relatively new phenomenon that is increasing rapidly due to the ubiquity and popularity of smartphones among end-users. As with any new domain, mobile app development has its own set of new challenges. The work presented in this dissertation has focused on improving the state-of-the-art by understanding the current practices and challenges in mobile app development as well as proposing a new set of techniques and tools based on the identified challenges. To understand the current practices, real challenges and issues in mobile development, we first conducted an explorative field study, in which we interviewed 12 senior mobile developers from nine different companies, followed by a semi-structured survey, with 188 respondents from the mobile development community. Next, we mined and quantitatively and qualitatively analyzed 32K non-reproducible bug reports in one industrial and five open-source bug repositories. Then, we performed a large-scale comparative study of 80K iOS and Android app-pairs and 1.7M reviews by mining the Google Play and Apple app stores. Based on the identified challenges, we first proposed a reverse engineering technique that automatically analyzes a given iOS mobile app and generates a state model of the app. Finally, we proposed an automated technique for detecting inconsistencies in the same mobile app implemented for iOS and Android platforms. To measure the effectiveness of the proposed techniques, we evaluated our methods using various industrial and open-source mobile apps. The evaluation results point to the effectiveness of the proposed model generation and mapping techniques in terms of accuracy and inconsistency detection capability. === Applied Science, Faculty of === Electrical and Computer Engineering, Department of === Graduate
author Erfani Joorabchi, Mona
spellingShingle Erfani Joorabchi, Mona
Mobile app development : challenges and opportunities for automated support
author_facet Erfani Joorabchi, Mona
author_sort Erfani Joorabchi, Mona
title Mobile app development : challenges and opportunities for automated support
title_short Mobile app development : challenges and opportunities for automated support
title_full Mobile app development : challenges and opportunities for automated support
title_fullStr Mobile app development : challenges and opportunities for automated support
title_full_unstemmed Mobile app development : challenges and opportunities for automated support
title_sort mobile app development : challenges and opportunities for automated support
publisher University of British Columbia
publishDate 2016
url http://hdl.handle.net/2429/57542
work_keys_str_mv AT erfanijoorabchimona mobileappdevelopmentchallengesandopportunitiesforautomatedsupport
_version_ 1718585145426968576