A Survey on Mobile App Development Approaches With the Industry Perspective

A Survey on Mobile App Development Approaches With the Industry Perspective

Anil Kumar Patidar, Ugrasen Suman
Copyright: © 2022 |Pages: 17
DOI: 10.4018/IJOSSP.300754
OnDemand:
(Individual Articles)
Available
$37.50
No Current Special Offers
TOTAL SAVINGS: $37.50

Abstract

Mobile applications (i.e., mobile apps) are dynamic from the user point of view, it is complex in some situations, and it is being developed in competitive and strict time frames. Therefore, the developers are required to pay attention to choose an appropriate software development process to cater these needs. Over the last decade, agile approaches have become very popular for software development in general, but there has only been limited research performed in the applicability of agile methods in the area of mobile app development. In this paper, a detailed review on mobile app development approaches with their best practices is prepared to explore the suitability of agile approaches. We have also conducted an online survey to know the current mobile app development trends in industries. It is observed that the agile approaches are the most suited approaches for mobile app development due to its flexibility in making changes, scalability, usability, etc. This crucial survey contributes towards a better comprehension of development trends in mobile app development industries.
Article Preview
Top

1. Introduction

Software process is a set of activities to be conducted in an organized and systematic form. These are to be conducted for the purpose of developing software of good efficiency, reliability and quality. Software process mainly consist of major development phases namely- communication, planning, modeling, construction and deployment (Murthy et al., 2010). Software process models primarily exist for desktop software development. Desktop software development processes such as, waterfall model, spiral model, rapid application development model, V-shaped model, rational unified process (RUP) are the heavyweight processes (Nikiforova et al., 2008) and agile methodologies are the light weight processes (Almasri, 2016; Milanov & Njegus, 2012). Heavyweight processes rely on sequential development whereas lightweight processes depend on the incremental and iterative development. Most of the approaches have their utilization in MAD up to some extent. Due to the different nature of MAD, existing software development approaches with their present capabilities are not fully applicable into the arena of MAD (Flora et al., 2014). As a result, mobile app developers and researchers are constantly working on improving the competency of the existing software development processes.

Mobile app development (MAD) market is fast paced and unpredictable (Vallon et al., 2015). Everyday new apps and products related to mobile technology are being produced across the globe. Under each category of mobile apps, numbers of new apps having similar features are being developed; this reflects the degree of competition and need for innovative features that can attract the majority of users. Thus, software companies need to follow an efficient process for assuring high quality solutions and to being in this competitive market (Gao & Yao, 2010). The fast growth in MAD is mainly caused by the modernizations in mobile technologies. This leads to behavior described, as the mobile industries encounters strict time to market that is the client-desired software within a highly competitive circumstances (Patidar & Suman, 2021). Consequently, there is a necessity for constructing an appropriate approach for MAD (Vallon et al., 2015).

Recently, agile software development approaches have gained popularity (Wang, 2011). The word agile was first used in 1990s to address change-accommodating processes (flexible production systems) (Poppendieck & Cusumano, 2012). With the emergence of agile manifesto (Beck, 2011), mentioning 12 different principles of agile development in year 2001, agile philosophy got its applications in software development also. Agile processes also provide a set of best practices to attain the greater flexibility in software development lifecycle and to release excellent software frequently. Agile is a collection of processes such as, scrum, extreme programming (XP), dynamic systems development method (DSDM), feature-driven development (FDD), crystal, etc. (Flora et al., 2014). Agile software development processes are lightweight processes. The agile software development process is partitioned into small activities with return to again and again on essential activities to fulfill the required changes (Poppendieck & Cusumano, 2012).

Complete Article List

Search this Journal:
Reset
Volume 15: 1 Issue (2024): Forthcoming, Available for Pre-Order
Volume 14: 1 Issue (2023)
Volume 13: 4 Issues (2022): 1 Released, 3 Forthcoming
Volume 12: 4 Issues (2021)
Volume 11: 4 Issues (2020)
Volume 10: 4 Issues (2019)
Volume 9: 4 Issues (2018)
Volume 8: 4 Issues (2017)
Volume 7: 4 Issues (2016)
Volume 6: 1 Issue (2015)
Volume 5: 3 Issues (2014)
Volume 4: 4 Issues (2012)
Volume 3: 4 Issues (2011)
Volume 2: 4 Issues (2010)
Volume 1: 4 Issues (2009)
View Complete Journal Contents Listing