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...
Main Author: | |
---|---|
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 |