PRADO: Predicting App Adoption by Learning the Correlation between Developer-Controllable Properties and User Behaviors

To survive and stand out from the fierce market competition nowadays, it is critical for app developers to know (desirably ahead of time) whether, how well, and why their apps would be adopted by users. Ideally, the adoption of an app could be predicted by factors that can be controlled by app developers in the development process, and factors that app developers are able to take actions on and improve according to the predictions. To this end, this paper proposes PRADO, an approach to measuring various aspects of user adoption, including app download and installation, uninstallation, and user ratings. PRADO employs advanced machine learning algorithms to predict user adoption based on how these metrics correlate to a comprehensive taxonomy of 108 developer-controllable features of the app. To evaluate PRADO, we use 9,824 free apps along with their behavioral data from 12.57 million Android users, demonstrating that user adoption of a new app can be accurately predicted. We also derive insights on which factors are statistically significant to user adoption, and suggest what kinds of actions can be possibly performed by developers in practice.

[1]  Ephraim R. McLean,et al.  The DeLone and McLean Model of Information Systems Success: A Ten-Year Update , 2003, J. Manag. Inf. Syst..

[2]  Yajin Zhou,et al.  Hey, You, Get Off of My Market: Detecting Malicious Apps in Official and Alternative Android Markets , 2012, NDSS.

[3]  Peter C. Rigby,et al.  The influence of App churn on App success and StackOverflow discussions , 2015, 2015 IEEE 22nd International Conference on Software Analysis, Evolution, and Reengineering (SANER).

[4]  Gabriele Bavota,et al.  The Impact of API Change- and Fault-Proneness on the User Ratings of Android Apps , 2015, IEEE Transactions on Software Engineering.

[5]  Jan Terje Karlsen,et al.  What Characterizes Successful It Projects , 2005, Int. J. Inf. Technol. Decis. Mak..

[6]  Steve Hanna,et al.  Android permissions demystified , 2011, CCS '11.

[7]  Tom Burr,et al.  Causation, Prediction, and Search , 2003, Technometrics.

[8]  Arthur E. Hoerl,et al.  Ridge Regression: Biased Estimation for Nonorthogonal Problems , 2000, Technometrics.

[9]  Xuanzhe Liu,et al.  PRADA: Prioritizing Android Devices for Apps by Mining Large-Scale Usage Data , 2016, 2016 IEEE/ACM 38th International Conference on Software Engineering (ICSE).

[10]  Ahmed E. Hassan,et al.  A Large-Scale Empirical Study on Software Reuse in Mobile Apps , 2014, IEEE Software.

[11]  Hinrich Schütze,et al.  Introduction to information retrieval , 2008 .

[12]  Robert C. Martin,et al.  OO Design Quality Metrics , 1997 .

[13]  Paul Coulton,et al.  Experimenting Through Mobile 'Apps' and 'App Stores' , 2011, Int. J. Mob. Hum. Comput. Interact..

[14]  Carl G. Davis,et al.  A Hierarchical Model for Object-Oriented Design Quality Assessment , 2002, IEEE Trans. Software Eng..

[15]  Maleknaz Nayebi,et al.  Release Practices for Mobile Apps -- What do Users and Developers Think? , 2016, 2016 IEEE 23rd International Conference on Software Analysis, Evolution, and Reengineering (SANER).

[16]  Xuanzhe Liu,et al.  Voting with Their Feet: Inferring User Preferences from App Management Activities , 2016, WWW.

[17]  Paul Johns,et al.  Exploring Cross-Device Web Use on PCs and Mobile Devices , 2009, INTERACT.

[18]  Neil F. Doherty,et al.  Institutional Repository The impact of inadequacies in the treatment of organizational issues on information systems development projects , 2018 .

[19]  Peter J. Bentley,et al.  Investigating Country Differences in Mobile App User Behavior and Challenges for Software Engineering , 2015, IEEE Transactions on Software Engineering.

[20]  E. Rogers,et al.  Diffusion of innovations , 1964, Encyclopedia of Sport Management.

[21]  Kaigui Bian,et al.  Characterizing Smartphone Usage Patterns from Millions of Android Users , 2015, Internet Measurement Conference.

[22]  Atanas Rountev,et al.  Testing for poor responsiveness in android applications , 2013, 2013 1st International Workshop on the Engineering of Mobile-Enabled Systems (MOBS).

[23]  Shirley Gregor,et al.  User participation in decision support systems development: Influencing system outcomes , 2004, Eur. J. Inf. Syst..

[24]  A. Zeller,et al.  Predicting Defects for Eclipse , 2007, Third International Workshop on Predictor Models in Software Engineering (PROMISE'07: ICSE Workshops 2007).

[25]  Miryung Kim,et al.  An Empirical Study of API Stability and Adoption in the Android Ecosystem , 2013, 2013 IEEE International Conference on Software Maintenance.

[26]  Mario Linares Vásquez,et al.  Revisiting Android reuse studies in the context of code obfuscation and library usages , 2014, MSR 2014.

[27]  Martin C. Rinard,et al.  Battery-aware transformations in mobile applications , 2016, 2016 31st IEEE/ACM International Conference on Automated Software Engineering (ASE).

[28]  Gabriele Bavota,et al.  Release Planning of Mobile Apps Based on User Reviews , 2016, 2016 IEEE/ACM 38th International Conference on Software Engineering (ICSE).

[29]  Yuanyuan Zhang,et al.  App store mining and analysis: MSR for app stores , 2012, 2012 9th IEEE Working Conference on Mining Software Repositories (MSR).

[30]  Kalle Lyytinen,et al.  Information systems failures—a survey and classification of the empirical literature , 1988 .

[31]  Ying Zou,et al.  An Exploratory Study on the Relation between User Interface Complexity and the Perceived Quality , 2014, ICWE.

[32]  David Lo,et al.  What are the characteristics of high-rated apps? A case study on free Android Applications , 2015, 2015 IEEE International Conference on Software Maintenance and Evolution (ICSME).

[33]  Anas N. Al-Rabadi,et al.  A comparison of modified reconstructability analysis and Ashenhurst‐Curtis decomposition of Boolean functions , 2004 .

[34]  Ning Chen,et al.  AR-miner: mining informative reviews for developers from mobile app marketplace , 2014, ICSE.

[35]  Diomidis Spinellis,et al.  Undocumented and unchecked: exceptions that spell trouble , 2014, MSR 2014.

[36]  Jacky Swan,et al.  There’s More to Information Systems Development than Structured Approaches: Information Requirements Analysis as a Socially Mediated Process , 2000, Requirements Engineering.

[37]  Yepang Liu,et al.  Taming Android fragmentation: Characterizing and detecting compatibility issues for Android apps , 2016, 2016 31st IEEE/ACM International Conference on Automated Software Engineering (ASE).

[38]  R. Tibshirani Regression Shrinkage and Selection via the Lasso , 1996 .

[39]  Ramanath Subramanyam,et al.  Empirical Analysis of CK Metrics for Object-Oriented Design Complexity: Implications for Software Defects , 2003, IEEE Trans. Software Eng..

[40]  Xuanzhe Liu,et al.  Understanding Diverse Usage Patterns from Large-Scale Appstore-Service Profiles , 2017, IEEE Transactions on Software Engineering.

[41]  Leo Breiman,et al.  Random Forests , 2001, Machine Learning.

[42]  Haoyu Wang,et al.  LibRadar: Fast and Accurate Detection of Third-Party Libraries in Android Apps , 2016, 2016 IEEE/ACM 38th International Conference on Software Engineering Companion (ICSE-C).

[43]  John C. Tang,et al.  Mobile taskflow in context: a screenshot study of smartphone usage , 2010, CHI.

[44]  Christos Faloutsos,et al.  Why people hate your app: making sense of user feedback in a mobile app store , 2013, KDD.

[45]  Chris F. Kemerer,et al.  A Metrics Suite for Object Oriented Design , 2015, IEEE Trans. Software Eng..

[46]  Pern Hui Chia,et al.  Is this app safe?: a large scale study on application permissions and risk signals , 2012, WWW.

[47]  Eric Shaw A Survey of Android App Quality Using Third Party Markets , 2014 .