Software assurance practices for mobile applications

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.

[1]  Giancarlo Succi,et al.  The dark side of agile software development , 2012, Onward! 2012.

[2]  Caspar Ryan,et al.  Software, performance and resource utilisation metrics for context-aware mobile applications , 2005, 11th IEEE International Software Metrics Symposium (METRICS'05).

[3]  Josh Dehlinger,et al.  Mobile Application Software Engineering : Challenges and Research Directions , 2011 .

[4]  Ji-Hyeon Lee,et al.  Development Process of Mobile Application SW Based on Agile Methodology , 2008, 2008 10th International Conference on Advanced Communication Technology.

[5]  Bharat Rao,et al.  A comparative analysis of digital innovation ecosystems , 2011, 2011 Proceedings of PICMET '11: Technology Management in the Energy Smart World (PICMET).

[6]  Rodolfo F. Resende,et al.  Quality Factors in Development Best Practices for Mobile Applications , 2012, ICCSA.

[7]  Rossana M. de Castro Andrade,et al.  SLeSS: A Scrum and Lean Six Sigma Integration Approach for the Development of Sofware Customization for Mobile Phones , 2011, 2011 25th Brazilian Symposium on Software Engineering.

[8]  Outi Salo,et al.  Deploying Agile Practices in Organizations: A Case Study , 2005, EuroSPI.

[9]  Stefan Kowalewski,et al.  A Mobile Software Quality Model , 2012, 2012 12th International Conference on Quality Software.

[10]  Andrei Cristian Spataru Agile Development Methods for Mobile Applications , 2010 .

[11]  Marc Lemercier,et al.  Android Passive MVC: a Novel Architecture Model for the Android Application Development , 2013 .

[12]  Soo Dong Kim,et al.  An efficiency-centric design methodology for mobile application architectures , 2011, 2011 IEEE 7th International Conference on Wireless and Mobile Computing, Networking and Communications (WiMob).

[13]  Henrik Hedberg,et al.  Technical Reviews in Agile Development: Case Mobile-D^TM , 2006, 2006 Sixth International Conference on Quality Software (QSIC'06).

[14]  Rossana M. de Castro Andrade,et al.  Testing requirements for mobile applications , 2009, 2009 24th International Symposium on Computer and Information Sciences.

[15]  Pankaj Kamthan,et al.  Towards High-Quality Mobile Applications , 2008, J. Mobile Multimedia.

[16]  Pekka Abrahamsson,et al.  New directions on agile methods: a comparative analysis , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[17]  Azham Hussain,et al.  Usability metric for mobile application: a goal question metric (GQM) approach , 2008, iiWAS.

[18]  Reza Tadayoni,et al.  Challenges for mobile application development , 2010, 2010 14th International Conference on Intelligence in Next Generation Networks.

[19]  Pekka Abrahamsson,et al.  Agile Software Development of Mobile Information Systems , 2007, CAiSE.

[20]  Pekka Abrahamsson,et al.  Mobile-D: an agile approach for mobile application development , 2004, OOPSLA '04.

[21]  A. Nosseir,et al.  Mobile Development Process Spiral , 2012, 2012 Seventh International Conference on Computer Engineering & Systems (ICCES).

[22]  J. Habibi,et al.  Performance evaluation of mobile software systems: Challenges for a software engineer , 2008, 2008 5th International Conference on Electrical Engineering, Computing Science and Automatic Control.

[23]  Xiang Long,et al.  Adaptive random testing of mobile application , 2010, 2010 2nd International Conference on Computer Engineering and Technology.

[24]  Alberto Sillitti,et al.  Agile Software Development Processes for Mobile Systems: Accomplishment, Evidence and Evolution , 2013, MobiWIS.

[25]  Henry Muccini,et al.  Software testing of mobile applications: Challenges and future research directions , 2012, 2012 7th International Workshop on Automation of Software Test (AST).

[26]  Tommi Mikkonen,et al.  The Death of Binary Software: End User Software Moves to the Web , 2011, 2011 Ninth International Conference on Creating, Connecting and Collaborating through Computing.

[27]  Chuan-Hoo Tan,et al.  Visiting Mobile Application Development: What, How and Where , 2010, 2010 Ninth International Conference on Mobile Business and 2010 Ninth Global Mobility Roundtable (ICMB-GMR).

[28]  Hassan Charaf,et al.  Mobile performance metrics for resource management , 2013, 2013 International Conference on System Science and Engineering (ICSSE).

[29]  Damith C. Rajapakse Fragmentation of Mobile Applications , 2012 .

[30]  Dongsong Zhang,et al.  Challenges, Methodologies, and Issues in the Usability Testing of Mobile Applications , 2005, Int. J. Hum. Comput. Interact..

[31]  Christiane Gresse von Wangenheim,et al.  Mobile Software Development Survey - Response Summary - , 2011 .

[32]  Pekka Abrahamsson,et al.  The Use of Architectural Patterns in the Agile Software Development of Mobile Applications , 2005 .

[33]  Raman Ramsin,et al.  Designing an agile methodology for mobile software development: A hybrid method engineering approach , 2008, 2008 Second International Conference on Research Challenges in Information Science.

[34]  Teddy Mantoro,et al.  Metrics evaluation for context-aware computing , 2009, MoMM.

[35]  Axel Spriestersbach,et al.  Quality Attributes in Mobile Web Application Development , 2004, PROFES.

[36]  Woon-Yong Kim,et al.  The 4-Tier Design Pattern for the Development of an Android Application , 2011, FGIT.

[37]  Lutz Kolbe,et al.  Proposition of an m-business procedure model for the development of mobile user interfaces , 2005, International Conference on Mobile Business (ICMB'05).

[38]  Norshuhada Shiratuddin,et al.  The md-Matrix: a learning tool in the mobile application development course , 2009, Int. J. Mob. Commun..

[39]  Luís Carriço,et al.  Lessons from early stages design of mobile applications , 2008, Mobile HCI.

[40]  Ian S. Hayes Just Enough Wireless Computing , 2002 .

[41]  T. Yamakami Business Model Engineering Analysis on Mobile Client-Side Software Platform Strategies , 2008, 2008 7th International Conference on Mobile Business.

[42]  Christelle Scharff,et al.  Scrum to support mobile application development projects in a just-in-time learning context , 2010, CHASE '10.

[43]  Porfirio Tramontana,et al.  Considering Context Events in Event-Based Testing of Mobile Applications , 2013, 2013 IEEE Sixth International Conference on Software Testing, Verification and Validation Workshops.

[44]  Amy L. Murphy,et al.  Software engineering for mobility: a roadmap , 2000, ICSE '00.

[45]  Anthony I. Wasserman,et al.  Software engineering issues for mobile application development , 2010, FoSER '10.

[46]  Pekka Abrahamsson Keynote: Mobile software development - the business opportunity of today , 2005 .