Abstract
Mobile software applications have to cope with a particular environment that involves small size, limited resources, high autonomy requirements, competitive business models and many other challenges. To provide development guidelines that respond to these needs, several practices have been introduced; however, it is not clear how these guidelines may contribute to solve the issues present in the mobile domain. Furthermore, the rapid evolution of the mobile ecosystem challenges many of the premises upon which the proposed practices were designed. In this paper, we present a survey of the literature on software assurance practices for mobile applications, with the objective of describing them and assessing their contribution and success. We identified, organized and reviewed a body of research that spans in three levels: software development processes, software product assurance practices, and software implementation practices. By carrying out this literature survey, we reviewed the different approaches that researchers on Software Engineering have provided to address the needs that raise in the mobile software development arena. Moreover, we review the evolution of these practices, identifying how the constant changes and modernization of the mobile execution environment has impacted the methods proposed in the literature. Finally, we introduced discussion on the application of these practices in a real productive setting, opening an area for further research that may determine if practitioners have followed the proposed assurance paradigms.
Similar content being viewed by others
References
Wasserman AI (2010) Software engineering issues for mobile application development. In: Proceedings of the FSE/SDP workshop on future of Software Engineering research (FoSER ’10). ACM, New York, pp 397–400
Roman GC, Picco GP, Murphy AL (2000) Software engineering for mobility: a roadmap. In: Proceedings of the international conference on software engineering (ICSE 2000). ACM, New York, pp 241–258
Abrahamsson P (2005) Mobile software development the business opportunity of today. In: Proceedings of the international conference on software, development. pp 20–23
Hayes IS (2003) Just enough wireless computing. Prentice Hall. ISBN: 978-0536750624
Spataru AC (2010) Agile development methods for mobile applications. Master Thesis, School of Informatics, University of Edinburgh, UK
Rahimian V, Habibi J (2008) Performance evaluation of mobile software systems: Challenges for a software engineer. In: Proceedings of the fifth international conference on electrical engineering, computing science and automatic, control, 2008. IEEE, pp 346–351
Hammershoj A, Sapuppo A, Tadayoni R (2010) Challenges for mobile application development. In: Proceedings of the 2010 14th international conference on intelligence in next generation, networks (ICIN). IEEE, pp 1–8
Rao B, Jimenez B (2011) A comparative analysis of digital innovation ecosystems. In: Proceedings of technology management in the energy smart, world. IEEE, pp 1–12
Taivalsaari A, Mikkonen T, Anttonen M, Salminen A (2011) The death of binary software: end user software moves to the web. In: Proceedings of the 2011 ninth international conference on creating, connecting and collaborating through, computing (C5). IEEE, pp 17–23
Franke D, Kowalewski S, Weise C (2012) A mobile software quality model. In: Proceedind of the 12th international conference on quality software. IEEE, pp 154–157
Abrahamsson P, Warsta J, Siponen MT, Ronkainen J (2003) New directions on agile methods: a comparative analysis. In: Proceedings of the 25th international conference on software engineering 2003 (ICSE’03). IEEE Computer Society, pp 244–254
Shiratuddin N, Sarif SM (2009) The mdmatrix: a learning tool in the mobile application development course. Int J Mob Commun 7(4):494–514 InderScience
Zhang D, Adipat B (2005) Challenges, methodologies, and issues in the usability testing of mobile applications. Int J Hum Comput Interact 18(3):293–308 Taylor & Francis
Gasimov A, Chuan-Hoo T, Chee WP, Sutanto J (2010) Visiting mobile application development:what, how and where. In: Proceedings of the ninth international conference on mobile business and ninth global mobility round (ICMB-GMR). pp 74–81
Yamakami T (2008) Business model engineering analysis on mobile client-side software platform strategies. In: Proceedings of the seventh international conference on mobile business, 2008 (ICMB ’08). IEEE Computer Society, pp 59–64
Kitchenham B, Charters S (2007) Guidelines for performing systematic literature reviews in software engineering, version 2.3. EBSE Technical, Report EBSE-2007-01
Abrahamsson P, Hanhineva A, Hulkko H, Ihme T, Jlinoja J, Korkala M, Koskela J, Kyllnen P, Salo O (2004) Mobile-D: an agile approach for mobile application development. In: Proceedings of the 19th annual ACM SIGPLAN conference on object-oriented programming systems, languages, and applications (OOPSLA’04). ACM, New York, pp 174–175
Jeong YJ, Lee JH, Shin GS (2008) Development process of mobile application SW based on Agile methodology. In: Proceedings of the tenth international conference on advanced communication technology, 2008 (ICACT’08), vol 1. IEEE, pp 362–366
Rahimian V, Ramsin R (2008) Designing an Agile methodology for mobile software development: A hybrid method engineering approach. In: Proceedings of the second international conference on research challenges in information, science, 2008. IEEE, pp 337–342
Scharff C, Verma R (2010) Scrum to support mobile application development projects in a just-in-time learning context. In: Proceedings of the 2010 ICSE workshop on cooperative and human aspects of, Software Engineering (CHASE’10). ACM, New York, pp 25–31
da Cunha TFV, Dantas VLL, Andrade RMC (2011) SLeSS: A Scrum and Lean Six Sigma integration approach for the development of software customization for mobile phones. In: Proceedings of the 2011 25th Brazilian symposium on Software Engineering (SBES). IEEE Computer Society, pp 283–292
Glissmann S, Smolnik Stefan Schierholz R, Kolbe L, Brenner W (2005) Proposition of an m-business procedure model for the development of mobile user interfaces. In: Proceedings of the international conference on mobile business, 2005 (ICMB 2005). IEEE, pp 308–314
Nosseir A, Flood D, Harrison R, Ibrahim O (2012) Mobile development process spiral. In: Proceedings of the 2012 seventh international conference on computer engineering and systems (ICCES). IEEE, pp 281–286
Doolittle J, Moohan A, Simpson J, Soanes I (2012) Building a mobile application development framework. Intel. Available online: http://communities.intel.com/docs/DOC-19555. (Accessed on January 20th, 2013)
Spriestersbach A , Springer T (2004) Quality attributes in mobile web application development. In: Proceedings of the fifth international conference on product focused software process improvement (PROFES’04). Lecture Notes in Computer Science. vol 3009. Springer, Heidelberg, pp 120–130
Mantoro T (2009) Metrics evaluation for context-aware computing. In: Proceedings of the seventh international conference on advances in mobile computing and multimedia (MoMM’09). ACM, New York, pp 574–578
Ryan C, Rossi P (2005) Software, performance and resource utilisation metrics for context-aware mobile applications. In Proceeding of the 11th IEEE international software metrics symposium (METRICS’05). IEEE Computer Society, pp 10
Hussain A, Ferneley E (2008) Usability metric for mobile application: a goal question metric (GQM) approach. In: Proceeding of the 10th international conference on information integration and web-based applications and service. ACM, New York, pp 567–570
Pandi K, Charaf H (2013) Mobile performance metrics for resource management. In: Proceedings of the international conference on system science and engineering. IEEE, pp 329–333
Dantas VLL, Marinho FG, da Costa AL, Andrade RMC (2009) Testing requirements for mobile applications. In: Proceedings of the 24th international symposium on computer and information sciences, 2009 (ISCIS’09). IEEE, pp 555–560
Liu Z, Gao X, Long X (2010) Adaptive random testing of mobile application. In: Proceedings of the 2010 2nd international conference on computer, engineering and technology (ICCET). vol 2. IEEE, pp 297–301
Amalfitano D, Fasolino AR, Tramontana P, Amatucci N (2013) Considering context events in event-based testing of mobile applications. In: Proceeding of the 6th international conference on software testing, verification and validation workshops. IEEE, pp 126–133
Ihme T, Abrahamsson P (2005) Agile architecting: the use of architectural patterns in mobile java applications. Int J Agile Manuf 8(2):97–112
Kamthan P (2008) Towards high-quality mobile applications by a systematic integration of patterns. J Mob Multimed 4(3):165–184 Rinton Press
La HJ, Lee HJ, Kim SD (2011) An efficiency-centric design methodology for mobile application architectures. In: Proceeding of the 2011 IEEE seventh international conference on wireless and mobile computing, networking and communications. IEEE, pp 272–279
Kim WY, Park SG (2011) The 4-tier design pattern for the development of an Android application. In: Proceedings of the third international conference on future generation information technology (FGIT’11). Lecture Notes in Computer Science, vol. 7105. Springer, Berlin, pp 196–203 Heidelberg.
Sokolova K, Lemercier M, Garcia L (2013) Android passive MVC: a novel architecture model for the android application development. In: Proceedings of the fifth international conference on pervasive patterns and applications (PATTERNS’13). IARIA, pp 7–12
de Sa M, Carrio L (2008) Lessons from early stages design of mobile applications. In: Proceedings of the 10th international conference on human computer interaction with mobile devices and services (MobileHCI’08). ACM, New York, pp 127–136
Marinho EH, Resende RF (2012) Quality factors in development best practices for mobile applications. In: Proceedings of the 12th international conference on computational science and its applications (ICCSA’12), vol IV. Springer, Berlin, pp 632–645
Corral L, Sillitti A, Succi G (2013) Agile software development processes for mobile systems: accomplishment, evidence and evolution. In: Proceedings of the tenth international conference on mobile web and information systems (MobiWIS 2013). Lecture Notes in Computer Science, vol 8093. Springer, Berlin, pp 90–106
Pikkarainen M, Salo O, Still J (2005) Deploying Agile practices in organizations: a case study. In: Proceedings of the European software process improvement and innovation conference (EuroSPI05). Lecture Notes in Computer Science. Springer, Heidelberg, pp 16–27
Hedberg H, Iisakka J (2006) Technical reviews in Agile development: case Mobile-D. In: Proceedings of the sixth international conference on quality software, 2006. IEEE, pp 347–353
Abrahamsson P (2007) Agile software development of mobile information systems. In: Proceedings of the advanced information systems engineering conference. Lecture Notes in Computer Science, vol. 4495. Springer, Berlin, pp 1–4
Rajapakse DC (2008) Fragmentation of mobile applications. National University of Singapore Available online: http://www.comp.nus.edu.sg/~damithch/df/device-fragmentation.htm. Accessed on January 20th, 2013
Avram A (2011) A survey on mobile development. InfoQ. Available online: http://www.infoq.com/news/2011/05/A-Survey-on-Mobile-Development. Accessed on January 20th, 2013
Wangenheim CG, Salazar L (2011) Mobile software development survey-response summary. Federal University of Santa Catarina, Brazil. Available online: http://www.gqs.ufsc.br/wp-content/uploads/2011/12/GQS-Workingpaper-002-2011-E-v10. Accessed on January 20th, 2013
Marko K (2012) Application development in the age of mobility. Information Week, no. 1341. UBM Tech. ISSN 8750–6874
Janes AA, Succi G (2012) The dark side of agile software development. In: Proceedings of the ACM international symposium on new ideas, new paradigms, and reflections on programming and software (ONWARD’12). ACM, New york, pp 215–228
Dehlinger J, Dixon J (2011) Mobile application software engineering: challenges and research directions. In: Proceedings of the second annual workshop on Software Engineering for mobile application development, at MOBICASE 2011. pp 27–30
Muccini H, Di Francesco A, Esposito P (2012) Software testing of mobile applications: challenges and future research directions. In: Proceedings of the seventh international workshop on automation of software test (AST). IEEE, pp 29–35
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Corral, L., Sillitti, A. & Succi, G. Software assurance practices for mobile applications. Computing 97, 1001–1022 (2015). https://doi.org/10.1007/s00607-014-0395-8
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00607-014-0395-8