Authors:
(1) LI LI, Beihang University, China;
(2) XIANG GAO, Beihang University, China;
(3) HAILONG SUN, Beihang University, China;
(4) CHUNMING HU, Beihang University, China;
(5) XIAOYU SUN, The Australian National University, Australia;
(6) HAOYU WANG, Huazhong University of Science and Technology, China;
(7) HAIPENG CAI, Washington State University, Pullman, USA;
(8) TING SU, East China Normal University, China;
(9) XIAPU LUO, The Hong Kong Polytechnic University, China;
(10) TEGAWENDÉ F. BISSYANDÉ, University of Luxembourg, Luxembourg;
(11) JACQUES KLEIN, University of Luxembourg, Luxembourg;
(12) JOHN GRUNDY, Monash University, Australia;
(13) TAO XIE, Peking University, China;
(14) HAIBO CHEN, Shanghai Jiao Tong University, China;
(15) HUAIMIN WANG, National University of Defense Technology, China.
The State Of OpenHarmony Ecosystem
Overview Of Mobile Software Engineering
It has been evidenced that summarizing the research roadmap for a given topic is important as it highlights various research opportunities that communicate broad research goals to the community, connects researchers working on individual projects to larger impact opportunities, and helps professional societies and practitioners focus on more strategic goals. Following this guidance, in this work, we propose to the community a research roadmap about software engineering for OpenHarmony, aiming at creating a synergy for the various stakeholders to work together to make OpenHarmony a successful mobile platform. Specifically, we have summarized the status quo of OpenHarmony software engineering research, for which we show OpenHarmony research is still in its early stage. We then highlight the research opportunities by summarizing the gap between OpenHarmony research and Mobile software engineering research, which is summarized through a survey of literature review papers. After that, we briefly discuss the challenges in order to fill such a gap.
[1] Naveed Ahmad, Aimal Rextin, and Um E Kulsoom. 2018. Perspectives on usability guidelines for smartphone applications: An empirical investigation and systematic literature review. Information and Software Technology 94 (2018), 130–149.
[2] Afnan A. Al-Subaihin, Federica Sarro, Sue Black, Licia Capra, and Mark Harman. 2021. App Store Effects on Software Engineering Practices. IEEE Transactions on Software Engineering 47, 2 (2021), 300–319. https://doi.org/10.1109/TSE. 2019.2891715
[3] Malek Al-Zewairi, Mariam Biltawi, Wael Etaiwi, Adnan Shaout, et al. 2017. Agile software development methodologies: Survey of surveys. Journal of Computer and Communications 5, 05 (2017), 74.
[4] Mughees Ali, Saif Ur Rehman Khan, and Shahid Hussain. 2021. Self-adaptation in smartphone applications: Current state-of-the-art techniques, challenges, and future directions. Data & Knowledge Engineering 136 (2021), 101929.
[5] Domenico Amalfitano, Anna Rita Fasolino, Porfirio Tramontana, Salvatore De Carmine, and Atif M Memon. 2012. Using GUI ripping for automated testing of Android applications. In Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering. 258–261.
[6] Simone Aonzo, Gabriel Claudiu Georgiu, Luca Verderame, and Alessio Merlo. 2020. Obfuscapk: An open-source black-box obfuscation tool for Android apps. SoftwareX 11 (2020), 100403.
[7] Steven Arzt, Siegfried Rasthofer, Christian Fritz, Eric Bodden, Alexandre Bartel, Jacques Klein, Yves Le Traon, Damien Octeau, and Patrick McDaniel. 2014. Flowdroid: Precise context, flow, field, object-sensitive and lifecycle-aware taint analysis for android apps. Acm Sigplan Notices 49, 6 (2014), 259–269.
[8] Kathy Wain Yee Au, Yi Fan Zhou, Zhen Huang, and David Lie. 2012. Pscout: analyzing the android permission specification. In Proceedings of the 2012 ACM conference on Computer and communications security. 217–228.
[9] Marco Autili, Ivano Malavolta, Alexander Perucci, Gian Luca Scoccia, and Roberto Verdecchia. 2021. Software engineering techniques for statically analyzing mobile apps: research trends, characteristics, and potential for industrial adoption. Journal of Internet Services and Applications 12 (2021), 1–60.
[10] Tanzirul Azim and Iulian Neamtiu. 2013. Targeted and depth-first exploration for systematic testing of android apps. In Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications. 641–660.
[11] Konstantia Barmpatsalou, Tiago Cruz, Edmundo Monteiro, and Paulo Simoes. 2018. Current and future trends in mobile device forensics: A survey. ACM Computing Surveys (CSUR) 51, 3 (2018), 1–31.
[12] Alexandre Bartel, Jacques Klein, Yves Le Traon, and Martin Monperrus. 2012. Dexpler: converting android dalvik bytecode to jimple for static analysis with soot. In Proceedings of the ACM SIGPLAN International Workshop on State of the Art in Java Program analysis. 27–38.
[13] Alexandre Bartel, Jacques Klein, Martin Monperrus, and Yves Le Traon. 2014. Static Analysis for Extracting Permission Checks of a Large Scale Framework: The Challenges And Solutions for Analyzing Android. IEEE Transactions on Software Engineering (TSE) (2014).
[14] Alastair R Beresford, Andrew Rice, Nicholas Skehin, and Ripduman Sohan. 2011. Mockdroid: trading privacy for application functionality on smartphones. In Proceedings of the 12th workshop on mobile computing systems and applications. 49–54.
[15] Andreas Biørn-Hansen, Tor-Morten Grønli, and Gheorghita Ghinea. 2018. A survey and taxonomy of core concepts and research challenges in cross-platform mobile development. ACM Computing Surveys (CSUR) 51, 5 (2018), 1–34.
[16] Pearl Brereton, Barbara A Kitchenham, David Budgen, Mark Turner, and Mohamed Khalil. 2007. Lessons from applying the systematic literature review process within the software engineering domain. Journal of systems and software 80, 4 (2007), 571–583.
[17] Sara Bunian, Kai Li, Chaima Jemmali, Casper Harteveld, Yun Fu, and Magy Seif Seif El-Nasr. 2021. Vins: Visual search for mobile user interface design. In Proceedings of the 2021 CHI Conference on Human Factors in Computing Systems. 1–14.
[18] Marimuthu C., K. Chandrasekaran, and Sridhar Chimalakonda. 2020. Energy Diagnosis of Android Applications: A Thematic Taxonomy and Survey. ACM Comput. Surv. 53, 6, Article 117 (dec 2020), 36 pages. https://doi.org/10.1145/ 3417986
[19] Qing Cao and Tarek Abdelzaher. 2006. LiteOS: a lightweight operating system for C++ software development in sensor networks. In Proceedings of the 4th international conference on Embedded networked sensor systems. 361–362.
[20] Angelos Chatzimparmpas, Rafael M Martins, Ilir Jusufi, and Andreas Kerren. 2020. A survey of surveys on the use of visualization for interpreting machine learning models. Information Visualization 19, 3 (2020), 207–233.
[21] Tinggui Chen, Chu Zhang, Jianjun Yang, and Guodong Cong. 2022. Grounded Theory-Based User Needs Mining and Its Impact on APP Downloads: Exampled With WeChat APP. Frontiers in Psychology 13 (2022), 875310.
[22] Betty HC Cheng, Rogério de Lemos, Holger Giese, Paola Inverardi, and Jeff Magee. [n. d.]. Software Engineering for Self-Adaptive Systems: A Research Roadmap. ([n. d.]).
[23] Valerio Costamagna and Cong Zheng. 2016. Artdroid: A virtual-method hooking framework on android art runtime.. In IMPS@ ESSoS. 20–28.
[24] Jonathan Crussell, Clint Gibler, and Hao Chen. 2013. Andarwin: Scalable detection of semantically similar android applications. In Computer Security–ESORICS 2013: 18th European Symposium on Research in Computer Security, Egham, UK, September 9-13, 2013. Proceedings 18. Springer, 182–199.
[25] Rogério De Lemos, Holger Giese, Hausi A Müller, Mary Shaw, Jesper Andersson, Marin Litoiu, Bradley Schmerl, Gabriel Tamura, Norha M Villegas, Thomas Vogel, et al. 2013. Software engineering for self-adaptive systems: A second research roadmap. In Software Engineering for Self-Adaptive Systems II: International Seminar, Dagstuhl Castle, Germany, October 24-29, 2010 Revised Selected and Invited Papers. Springer, 1–32.
[26] Omar De Munk and Ivano Malavolta. 2021. Measurement-based experiments on the mobile web: A systematic mapping study. Evaluation and Assessment in Software Engineering (2021), 191–200.
[27] Paula Delgado-Santos, Giuseppe Stragapede, Ruben Tolosana, Richard Guest, Farzin Deravi, and Ruben Vera-Rodriguez. 2022. A Survey of Privacy Vulnerabilities of Mobile Device Sensors. ACM Comput. Surv. 54, 11s, Article 224 (sep 2022), 30 pages. https://doi.org/10.1145/3510579
[28] Feng Dong, Haoyu Wang, Li Li, Yao Guo, Guoai Xu, and Shaodong Zhang. 2018. How Do Mobile Apps Violate the Behavioral Policy of Advertisement Libraries?. In The 19th Workshop on Mobile Computing Systems and Applications (HotMobile 2018).
[29] Shuaike Dong, Menghao Li, Wenrui Diao, Xiangyu Liu, Jian Liu, Zhou Li, Fenghao Xu, Kai Chen, Xiaofeng Wang, and Kehuan Zhang. 2018. Understanding android obfuscation techniques: A large-scale investigation in the wild. In Security and Privacy in Communication Networks: 14th International Conference, SecureComm 2018, Singapore, Singapore, August 8-10, 2018, Proceedings, Part I. Springer, 172–192.
[30] Fahimeh Ebrahimi, Miroslav Tushev, and Anas Mahmoud. 2021. Mobile app privacy in software engineering research: A systematic mapping study. Information and Software Technology 133 (2021), 106466. https://doi.org/10.1016/j.infsof. 2020.106466
[31] Manuel Egele, Christopher Kruegel, Engin Kirda, and Giovanni Vigna. 2011. Pios: Detecting privacy leaks in ios applications.. In NDSS. 177–183.
[32] William Enck, Peter Gilbert, Seungyeop Han, Vasant Tendulkar, Byung-Gon Chun, Landon P Cox, Jaeyeon Jung, Patrick McDaniel, and Anmol N Sheth. 2014. Taintdroid: an information-flow tracking system for realtime privacy monitoring on smartphones. ACM Transactions on Computer Systems (TOCS) 32, 2 (2014), 1–29.
[33] Ming Fan, Le Yu, Sen Chen, Hao Zhou, Xiapu Luo, Shuyue Li, Yang Liu, Jun Liu, and Ting Liu. 2020. An Empirical Evaluation of GDPR Compliance Violations in Android mHealth Apps. In 2020 IEEE 31st International Symposium on Software Reliability Engineering (ISSRE). 253–264. https://doi.org/10.1109/ISSRE5003.2020.00032
[34] Robert France and Bernhard Rumpe. 2007. Model-driven development of complex software: A research roadmap. In Future of Software Engineering (FOSE’07). IEEE, 37–54.
[35] Rita Francese, Carmine Gravino, Michele Risi, Giuseppe Scanniello, and Genoveffa Tortora. 2017. Mobile app development and management: results from a qualitative investigation. In 2017 IEEE/ACM 4th International Conference on Mobile Software Engineering and Systems (MOBILESoft). IEEE, 133–143.
[36] Jun Gao, Li Li, Tegawendé F Bissyandé, and Jacques Klein. 2019. On the Evolution of Mobile App Complexity. In The 24th International Conference on Engineering of Complex Computer Systems (ICECCS 2019).
[37] Jun Gao, Li Li, Pingfan Kong, Tegawendé F Bissyandé, and Jacques Klein. 2019. Understanding the Evolution of Android App Vulnerabilities. IEEE Transactions on Reliability (TRel) (2019).
[38] Yuhao Gao, Haoyu Wang, Li Li, Xiapu Luo, Xuanzhe Liu, and Guoai Xu. 2021. Demystifying Illegal Mobile Gambling Apps. In The Web Conference 2021 (WWW 2021).
[39] Xiuting Ge, Shengcheng Yu, Chunrong Fang, Qi Zhu, and Zhihong Zhao. 2022. Leveraging android automated testing to assist crowdsourced testing. IEEE Transactions on Software Engineering 49, 4 (2022), 2318–2336.
[40] Necmiye Genc-Nayebi and Alain Abran. 2017. A systematic literature review: Opinion mining studies from mobile app store user reviews. Journal of Systems and Software 125 (2017), 207–219.
[41] Jairo Giraldo, Esha Sarkar, Alvaro A Cardenas, Michail Maniatakos, and Murat Kantarcioglu. 2017. Security and privacy in cyber-physical systems: A survey of surveys. IEEE Design & Test 34, 4 (2017), 7–17.
[42] Lorenzo Gomez, Iulian Neamtiu, Tanzirul Azim, and Todd Millstein. 2013. Reran: Timing-and touch-sensitive record and replay for android. In 2013 35th International Conference on Software Engineering (ICSE). IEEE, 72–81.
[43] Alessandra Gorla, Ilaria Tavecchia, Florian Gross, and Andreas Zeller. 2014. Checking App Behavior against App Descriptions. In Proceedings of the 36th International Conference on Software Engineering (Hyderabad, India) (ICSE 2014). Association for Computing Machinery, New York, NY, USA, 1025–1035. https://doi.org/10.1145/2568225.2568276
[44] Jiaqi Guo, Shuyue Li, Jian-Guang Lou, Zijiang Yang, and Ting Liu. 2019. Sara: self-replay augmented record and replay for android in industrial cases. In Proceedings of the 28th acm sigsoft international symposium on software testing and analysis. 90–100.
[45] Max Hort, Maria Kechagia, Federica Sarro, and Mark Harman. 2021. A survey of performance optimization for mobile applications. IEEE Transactions on Software Engineering 48, 8 (2021), 2879–2904.
[46] Seyed Amir Hoseini-Tabatabaei, Alexander Gluhak, and Rahim Tafazolli. 2013. A survey on smartphone-based systems for opportunistic user context recognition. ACM Computing Surveys (CSUR) 45, 3 (2013), 1–51.
[47] Yangyu Hu, Haoyu Wang, Yajin Zhou, Yao Guo, Li Li, Bingxuan Luo, and Fangren Xu. 2019. Dating with Scambots: Understanding the Ecosystem of Fraudulent Dating Applications. IEEE Transactions on Dependable and Secure Computing (TDSC) (2019).
[48] Ronald Jabangwe, Henry Edison, and Anh Nguyen Duc. 2018. Software engineering process models for mobile app development: A systematic literature review. Journal of Systems and Software 145 (2018), 98–111.
[49] Mona Erfani Joorabchi, Ali Mesbah, and Philippe Kruchten. 2013. Real challenges in mobile app development. In 2013 ACM/IEEE International Symposium on Empirical Software Engineering and Measurement. IEEE, 15–24.
[50] Misael C. Júnior, Domenico Amalfitano, Lina Garcés, Anna Rita Fasolino, Stevão A. Andrade, and Márcio Delamaro. 2022. Dynamic Testing Techniques of Non-Functional Requirements in Mobile Apps: A Systematic Mapping Study. ACM Comput. Surv. 54, 10s, Article 214 (sep 2022), 38 pages. https://doi.org/10.1145/3507903
[51] Anureet Kaur and Kulwant Kaur. 2019. Investigation on test effort estimation of mobile applications: Systematic literature review and survey. Information and Software technology 110 (2019), 56–77.
[52] Seoyeon Kim, Jisu Park, Jinman Jung, Seongbae Eun, Y-S Yun, S So, B Kim, H Min, and J Heo. 2018. Identifying UI widgets of mobile applications from sketch images. (2018).
[53] Young Geun Kim, Joonho Kong, and Sung Woo Chung. 2018. A Survey on Recent OS-Level Energy Management Techniques for Mobile Processing Units. IEEE Transactions on Parallel and Distributed Systems 29, 10 (2018), 2388–2401. https://doi.org/10.1109/TPDS.2018.2822683
[54] Pingfan Kong, Li Li, Jun Gao, Kui Liu, Tegawendé F Bissyandé, and Jacques Klein. 2018. Automated Testing of Android Apps: A Systematic Literature Review. IEEE Transactions on Reliability (2018).
[55] Pingfan Kong, Li Li, Jun Gao, Kui Liu, Tegawendé F. Bissyandé, and Jacques Klein. 2019. Automated Testing of Android Apps: A Systematic Literature Review. IEEE Transactions on Reliability 68, 1 (2019), 45–66. https: //doi.org/10.1109/TR.2018.2865733
[56] Patrick Lam, Eric Bodden, Ondrej Lhoták, and Laurie Hendren. 2011. The Soot framework for Java program analysis: a retrospective. In Cetus Users and Compiler Infastructure Workshop (CETUS 2011), Vol. 15.
[57] Hansoo Lee, Joonyoung Park, and Uichin Lee. 2022. A Systematic Survey on Android API Usage for Data-Driven Analytics with Smartphones. ACM Comput. Surv. 55, 5, Article 104 (dec 2022), 38 pages. https://doi.org/10.1145/3530814
[58] Li Li, Alexandre Bartel, Tegawendé F Bissyandé, Jacques Klein, Yves Le Traon, Steven Arzt, Siegfried Rasthofer, Eric Bodden, Damien Octeau, and Patrick Mcdaniel. 2015. IccTA: Detecting Inter-Component Privacy Leaks in Android Apps. In Proceedings of the 37th International Conference on Software Engineering (ICSE 2015).
[59] Li Li, Tegawendé F Bissyandé, and Jacques Klein. 2017. SimiDroid: Identifying and Explaining Similarities in Android Apps. In The 16th IEEE International Conference On Trust, Security And Privacy In Computing And Communications (TrustCom 2017).
[60] Li Li, Tegawendé F Bissyandé, and Jacques Klein. 2019. Rebooting research on detecting repackaged android apps: Literature review and benchmark. IEEE Transactions on Software Engineering 47, 4 (2019), 676–693.
[61] Li Li, Tegawendé F Bissyandé, Yves Le Traon, and Jacques Klein. 2016. Accessing Inaccessible Android APIs: An Empirical Study. In The 32nd International Conference on Software Maintenance and Evolution (ICSME 2016).
[62] Li Li, Tegawendé F Bissyandé, Damien Octeau, and Jacques Klein. 2016. DroidRA: Taming Reflection to Support Whole-Program Analysis of Android Apps. In The 2016 International Symposium on Software Testing and Analysis (ISSTA 2016).
[63] Li Li, Tegawendé F Bissyandé, Damien Octeau, and Jacques Klein. 2016. Reflection-Aware Static Analysis of Android Apps. In The 31st IEEE/ACM International Conference on Automated Software Engineering, Demo Track (ASE 2016).
[64] Li Li, Tegawendé F Bissyandé, Mike Papadakis, Siegfried Rasthofer, Alexandre Bartel, Damien Octeau, Jacques Klein, and Yves Le Traon. 2017. Static Analysis of Android Apps: A Systematic Literature Review. Information and Software Technology (2017).
[65] Li Li, Tegawendé F Bissyandé, Haoyu Wang, and Jacques Klein. 2019. On Identifying and Explaining Similarities in Android Apps. Journal of Computer Science and Technology (JCST) (2019).
[66] Li Li, Jun Gao, Tegawendé F Bissyandé, Lei Ma, Xin Xia, and Jacques Klein. 2020. CDA: Characterising Deprecated Android APIs. Empirical Software Engineering (EMSE) (2020).
[67] Li Li, Jun Gao, Médéric Hurier, Pingfan Kong, Tegawendé F Bissyandé, Alexandre Bartel, Jacques Klein, and Yves Le Traon. 2017. AndroZoo++: Collecting Millions of Android Apps and Their Metadata for the Research Community. arXiv preprint arXiv:1709.05281 (2017).
[68] Shu-Hui Li, Jia-Jyun Hsu, Chih-Ya Chang, Pin-Hsuan Chen, and Neng-Hao Yu. 2017. Xketch: A sketch-based prototyping tool to accelerate mobile app design process. In Proceedings of the 2017 ACM Conference Companion Publication on Designing Interactive Systems. 301–304.
[69] Yuanchun Li, Ziyue Yang, Yao Guo, and Xiangqun Chen. 2017. Droidbot: a lightweight ui-guided test input generator for android. In 2017 IEEE/ACM 39th International Conference on Software Engineering Companion (ICSE-C). IEEE, 23–26.
[70] Pei Liu, Mattia Fazzini, John Grundy, and Li Li. 2022. Do Customized Android Frameworks Keep Pace with Android?. In The 19th International Conference on Mining Software Repositories (MSR 2022).
[71] Pei Liu, Li Li, Yichun Yan, Mattia Fazzini, and John Grundy. 2021. Identifying and Characterizing Silently-Evolved Methods in the Android API. In The 43rd ACM/IEEE International Conference on Software Engineering, SEIP Track (ICSE-SEIP 2021).
[72] Pei Liu, Li Li, Yanjie Zhao, Xiaoyu Sun, and John Grundy. 2020. AndroZooOpen: Collecting Large-scale Open Source Android Apps for the Research Community. In The 2020 International Conference on Mining Software Repositories, Data Track (MSR 2020).
[73] PEI LIU, YANJIE ZHAO, MATTIA FAZZINI, HAIPENG CAI, JOHN GRUNDY, and LI LI. 2023. Automatically Detecting Incompatible Android APIs. IEEE Transactions on Software Engineering (2023).
[74] Yue Liu, Chakkrit Tantithamthavorn, Li Li, and Yepang Liu. 2022. Deep Learning for Android Malware Defenses: A Systematic Literature Review. ACM Comput. Surv. 55, 8, Article 153 (dec 2022), 36 pages. https://doi.org/10.1145/ 3544968
[75] Yue Liu, Chakkrit Tantithamthavorn, Li Li, and Yepang Liu. 2022. Deep Learning for Android Malware Defenses: a Systematic Literature Review. ACM Computing Surveys (CSUR) (2022).
[76] Chu Luo, Jorge Goncalves, Eduardo Velloso, and Vassilis Kostakos. 2020. A Survey of Context Simulation for Testing Mobile Context-Aware Applications. ACM Comput. Surv. 53, 1, Article 21 (feb 2020), 39 pages. https: //doi.org/10.1145/3372788
[77] Alexandru Marginean, Johannes Bader, Satish Chandra, Mark Harman, Yue Jia, Ke Mao, Alexander Mols, and Andrew Scott. 2019. Sapfix: Automated end-to-end repair at scale. In 2019 IEEE/ACM 41st International Conference on Software Engineering: Software Engineering in Practice (ICSE-SEIP). IEEE, 269–278.
[78] William Martin, Federica Sarro, Yue Jia, Yuanyuan Zhang, and Mark Harman. 2016. A survey of app store analysis for software engineering. IEEE transactions on software engineering 43, 9 (2016), 817–847.
[79] Tom McDermott, Dan DeLaurentis, Peter Beling, Mark Blackburn, and Mary Bone. 2020. AI4SE and SE4AI: A research roadmap. Insight 23, 1 (2020), 8–14.
[80] Liam McNabb and Robert S Laramee. 2017. Survey of Surveys (SoS)-mapping the landscape of survey papers in information visualization. In computer graphics forum, Vol. 36. Wiley Online Library, 589–617.
[81] Walter T Nakamura, Edson Cesar de Oliveira, Elaine HT de Oliveira, David Redmiles, and Tayana Conte. 2022. What factors affect the UX in mobile apps? A systematic mapping study on the analysis of app store reviews. Journal of Systems and Software 193 (2022), 111462.
[82] Humphrey Obie, Waqar Hussain, Xin Xia, John Grundy, Li Li, Burak Turhan, Jon Whittle, and Mojtaba Shahin. 2021. A First Look at Human Values-Violation in App Reviews. In The 43rd ACM/IEEE International Conference on Software Engineering, SEIS Track (ICSE-SEIS 2021).
[83] Humphrey Obie, Idowu Ilekura, Hung Du, Mojtaba Shahin, John Grundy, Li Li, Jon Whittle, and Burak Turhan. 2022. On the Violation of Honesty in Mobile Apps: Automated Detection and Categories. In The 19th International Conference on Mining Software Repositories (MSR 2022).
[84] Fabio Palomba, Mario Linares-Vásquez, Gabriele Bavota, Rocco Oliveto, Massimiliano Di Penta, Denys Poshyvanyk, and Andrea De Lucia. 2018. Crowdsourcing user reviews to support the evolution of mobile apps. Journal of Systems and Software 137 (2018), 143–162.
[85] Michael P Papazoglou, Paolo Traverso, Schahram Dustdar, and Frank Leymann. 2008. Service-oriented computing: a research roadmap. International Journal of Cooperative Information Systems 17, 02 (2008), 223–255.
[86] Orlando RE Pereira and Joel JPC Rodrigues. 2013. Survey and analysis of current mobile learning applications and technologies. ACM Computing Surveys (CSUR) 46, 2 (2013), 1–35.
[87] Fangze Qiu, Huaxiao Huang, and Yuji Dong. 2022. A Re-configurable Interaction Model in Distributed IoT Environment. In 2022 International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery (CyberC). IEEE, 80–86.
[88] Junyang Qiu, Jun Zhang, Wei Luo, Lei Pan, Surya Nepal, and Yang Xiang. 2020. A Survey of Android Malware Detection with Deep Neural Models. ACM Comput. Surv. 53, 6, Article 126 (dec 2020), 36 pages. https://doi.org/10.1145/3417978
[89] Siegfried Rasthofer, Steven Arzt, and Eric Bodden. 2014. A Machine-learning Approach for Classifying and Categorizing Android Sources and Sinks. NDSS (2014).
[90] Siegfried Rasthofer, Steven Arzt, Stefan Triller, and Michael Pradel. 2017. Making malory behave maliciously: Targeted fuzzing of android execution environments. In 2017 IEEE/ACM 39th International Conference on Software Engineering (ICSE). IEEE, 300–311.
[91] Giovanni Russello, Arturo Blas Jimenez, Habib Naderi, and Wannes van der Mark. 2013. Firedroid: Hardening security in almost-stock android. In Proceedings of the 29th Annual Computer Security Applications Conference. 319–328.
[92] Jordan Samhi, Jun Gao, Nadia Daoudi, Pierre Graux, Henri Hoyez, Xiaoyu Sun, Kevin Allix, Tegawendé F Bissyandé, and Jacques Klein. 2022. Jucify: A step towards android code unification for enhanced static analysis. In Proceedings of the 44th International Conference on Software Engineering. 1232–1244.
[93] Joanna Cecilia Da Silva Santos and Julian Dolby. 2022. Program Analysis using WALA. In ACM Joint Meeting European Software Engineering Conference and Symposium on the Foundations of Software Engineering.
[94] Janaka Senanayake, Harsha Kalutarage, Mhd Omar Al-Kadri, Andrei Petrovski, and Luca Piras. 2023. Android Source Code Vulnerability Detection: A Systematic Literature Review. ACM Comput. Surv. 55, 9, Article 187 (jan 2023), 37 pages. https://doi.org/10.1145/3556974
[95] Basit Shahzad, Abdullatif M Abdullatif, Kashif Saleem, and Wasif Jameel. 2017. Socio-technical challenges and mitigation guidelines in developing mobile healthcare applications. Journal of Medical Imaging and Health Informatics 7, 3 (2017), 704–712.
[96] Md Shamsujjoha, John Grundy, Li Li, Hourieh Khalajzadeh, and Qinghua Lu. 2021. Developing mobile applications via model driven development: a systematic literature review. Information and Software Technology 140 (2021), 106693.
[97] Henrique Neves Silva, Jackson Prado Lima, Silvia Regina Vergilio, and Andre Takeshi Endo. 2022. A mapping study on mutation testing for mobile applications. Software Testing, Verification and Reliability 32, 8 (2022), e1801.
[98] Ting Su, Guozhu Meng, Yuting Chen, Ke Wu, Weiming Yang, Yao Yao, Geguang Pu, Yang Liu, and Zhendong Su. 2017. Guided, stochastic model-based GUI testing of Android apps. In Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering. 245–256.
[99] Sufatrio, Darell JJ Tan, Tong-Wei Chua, and Vrizlynn LL Thing. 2015. Securing android: a survey, taxonomy, and challenges. ACM Computing Surveys (CSUR) 47, 4 (2015), 1–45.
[100] Xiaoyu Sun, Xiao Chen, Kui Liu, Sheng Wen, Li Li, and John Grundy. 2021. Characterizing Sensor Leaks in Android Apps. In The 32nd International Symposium on Software Reliability Engineering (ISSRE 2021).
[101] Xiaoyu Sun, Xiao Chen, Yonghui Liu, John Grundy, and year=2023 publisher=IEEE Li, journal=IEEE Transactions on Software Engineering. [n. d.]. Taming Android Fragmentation through Lightweight Crowdsourced Testing. ([n. d.]).
[102] Xiaoyu Sun, Li Li, Tegawendé F Bissyandé, Jacques Klein, Damien Octeau, and John Grundy. 2020. Taming Reflection: An Essential Step Towards Whole-Program Analysis of Android Apps. ACM Transactions on Software Engineering and Methodology (TOSEM) (2020).
[103] Xiaolei Wang, Yuexiang Yang, and Sencun Zhu. 2018. Automated hybrid analysis of android malware through augmenting fuzzing with forced execution. IEEE Transactions on Mobile Computing 18, 12 (2018), 2768–2782.
[104] Yihui Wang, Huaxiao Liu, Shanquan Gao, and Xiao Tang. 2023. Animation2API: API Recommendation for the Implementation of Android UI Animations. IEEE Transactions on Software Engineering (2023).
[105] Ying Wang, Yibo Wang, Sinan Wang, Yepang Liu, Chang Xu, Shing-Chi Cheung, Hai Yu, and Zhiliang Zhu. 2022. Runtime permission issues in android apps: Taxonomy, practices, and ways forward. IEEE Transactions on Software Engineering 49, 1 (2022), 185–210.
[106] Fengguo Wei, Xingwei Lin, Xinming Ou, Ting Chen, and Xiaosong Zhang. 2018. Jn-saf: Precise and efficient ndk/jniaware inter-language static analysis framework for security vetting of android applications with native code. In Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security. 1137–1150.
[107] Chathrie Wimalasooriya, Sherlock A Licorish, Daniel Alencar da Costa, and Stephen G MacDonell. 2022. A systematic mapping study addressing the reliability of mobile applications: The need to move beyond testing reliability. Journal of Systems and Software 186 (2022), 111166.
[108] Shuohan Wu, Jianfeng Li, Hao Zhou, Yongsheng Fang, Kaifa Zhao, Haoyu Wang, Chenxiong Qian, and Xiapu Luo. 2023. CydiOS: A Model-Based Testing Framework for iOS Apps. In Proceedings of the 32nd ACM SIGSOFT International Symposium on Software Testing and Analysis. 1–13.
[109] Zhiqiang Wu, Xin Chen, and Scott Uk-Jin Lee. 2023. A systematic literature review on Android-specific smells. Journal of Systems and Software 201 (2023), 111677.
[110] Meng Xu, Chengyu Song, Yang Ji, Ming-Wei Shih, Kangjie Lu, Cong Zheng, Ruian Duan, Yeongjin Jang, Byoungyoung Lee, Chenxiong Qian, et al. 2016. Toward engineering a secure android ecosystem: A survey of existing techniques. ACM Computing Surveys (CSUR) 49, 2 (2016), 1–47.
[111] Lei Xue, Chenxiong Qian, Hao Zhou, Xiapu Luo, Yajin Zhou, Yuru Shao, and Alvin TS Chan. 2018. NDroid: Toward tracking information flows across multiple Android contexts. IEEE Transactions on Information Forensics and Security 14, 3 (2018), 814–828.
[112] Lei Xue, Yuxiao Yan, Luyi Yan, Muhui Jiang, Xiapu Luo, Dinghao Wu, and Yajin Zhou. 2021. Parema: an unpacking framework for demystifying VM-based Android packers. In Proceedings of the 30th ACM SIGSOFT International Symposium on Software Testing and Analysis. 152–164.
[113] Lei Xue, Hao Zhou, Xiapu Luo, Le Yu, Dinghao Wu, Yajin Zhou, and Xiaobo Ma. 2020. Packergrind: An adaptive unpacking system for android apps. IEEE Transactions on Software Engineering 48, 2 (2020), 551–570.
[114] Lei Xue, Hao Zhou, Xiapu Luo, Yajin Zhou, Yang Shi, Guofei Gu, Fengwei Zhang, and Man Ho Au. 2021. Happer: Unpacking android apps via a hardware-assisted approach. In 2021 IEEE Symposium on Security and Privacy (SP). IEEE, 1641–1658.
[115] Yuri D. V. Yasuda, Luiz Eduardo G. Martins, and Fabio A. M. Cappabianco. 2020. Autonomous Visual Navigation for Mobile Robots: A Systematic Literature Review. ACM Comput. Surv. 53, 1, Article 13 (feb 2020), 34 pages. https://doi.org/10.1145/3368961
[116] Weizhao Yuan, Hoang H Nguyen, Lingxiao Jiang, Yuting Chen, Jianjun Zhao, and Haibo Yu. 2019. API recommendation for event-driven Android application development. Information and Software Technology 107 (2019), 30–47.
[117] Samer Zein, Norsaremah Salleh, and John Grundy. 2016. A systematic mapping study of mobile application testing techniques. J. Syst. Softw. 117 (2016), 334–356. https://doi.org/10.1016/j.jss.2016.03.065
[118] Xian Zhan, Tianming Liu, Lingling Fan, Li Li, Sen Chen, Xiapu Luo, and Yang Liu. 2021. Research on third-party libraries in android apps: A taxonomy and systematic literature review. IEEE Transactions on Software Engineering (2021).
[119] Yueqian Zhang, Xiapu Luo, and Haoyang Yin. 2015. Dexhunter: toward extracting hidden code from packed android applications. In Computer Security–ESORICS 2015: 20th European Symposium on Research in Computer Security, Vienna, Austria, September 21-25, 2015, Proceedings, Part II 20. Springer, 293–311.
[120] Yanjie Zhao, Li Li, Kui Liu, and John Grundy. 2022. Towards Automatically Repairing Compatibility Issues in Published Android Apps. In The 44th International Conference on Software Engineering (ICSE 2022).
[121] Yanjie Zhao, Li Li, Xiaoyu Sun, Pei Liu, and John Grundy. 2021. Icon2Code: Recommending code implementations for Android GUI components. Information and Software Technology 138 (2021), 106619.
[122] Yanjie Zhao, Li Li, Haoyu Wang, Qiang He, and John Grundy. 2022. APIMatchmaker: Matching the Right APIs for Supporting the Development of Android Apps. IEEE Transactions on Software Engineering (TSE) (2022).
[123] Yanjie Zhao, Tianming Liu, Haoyu Wang, Yepang Liu, John Grundy, and Li Li. 2023. Are Mobile Advertisements in Compliance with App’s Age Group?. In Proceedings of the ACM Web Conference 2023. 3132–3141.
[124] Hao Zhou, Haoyu Wang, Xiapu Luo, Ting Chen, Yajin Zhou, and Ting Wang. 2022. Uncovering cross-context inconsistent access control enforcement in android. In The 2022 Network and Distributed System Security Symposium (NDSS’22).
[125] Hao Zhou, Haoyu Wang, Shuohan Wu, Xiapu Luo, Yajin Zhou, Ting Chen, and Ting Wang. 2021. Finding the missing piece: permission specification analysis for Android NDK. In 2021 36th IEEE/ACM International Conference on Automated Software Engineering (ASE). IEEE, 505–516.
[126] Hao Zhou, Shuohan Wu, Xiapu Luo, Ting Wang, Yajin Zhou, Chao Zhang, and Haipeng Cai. 2022. NCScope: hardwareassisted analyzer for native code in Android apps. In Proceedings of the 31st ACM SIGSOFT International Symposium on Software Testing and Analysis. 629–641.
This paper is available on arxiv under CC 4.0 license.