You are on page 1of 11

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/338421946

Mobile Application Development Methodologies Adopted in Omani Market: A


Comparative Study

Article  in  Journal of Software Engineering and Applications · March 2019


DOI: 10.5121/ijsea.2019.10202

CITATIONS READS
5 5,768

5 authors, including:

Serein al-ratrout Mejhem Yousef


Al Zahra College for Women Universiti Utara Malaysia
17 PUBLICATIONS   56 CITATIONS    17 PUBLICATIONS   56 CITATIONS   

SEE PROFILE SEE PROFILE

Moath Husni Altarawneh


The World Islamic Science and Education University
10 PUBLICATIONS   26 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Trajectory tracking of an amplified piezoelectric actuator View project

MONITORING ORIENTED AGILE BASED WEB APPLICATIONS DEVELOPMENT METHODOLOGY FOR SMALL SOFTWARE FIRMS IN JORDAN View project

All content following this page was uploaded by Moath Husni Altarawneh on 07 January 2020.

The user has requested enhancement of the downloaded file.


International Journal of Software Engineering & Applications (IJSEA), Vol.10, No.2, March 2019

MOBILE APPLICATION DEVELOPMENT


METHODOLOGIES ADOPTED IN OMANI
MARKET: A COMPARATIVE STUDY
Seiren Al-Ratrout1, Omar Husain Tarawneh1 , Moath HusniAltarawneh2 and
Mejhem Yosef Altarawneh2
1
Dept. of Information Technology, Al zahra College for Women, Oman
2
Dept. of Information Technology, The World Islamic Sciences and Education
University,Jordan.

Abstract
Popularity of mobile phones and huge growing for mobile applications make developers in need for flexible
software process, which can deal with many challenges facing the mobile app development process. These
challenges include: volatility of requirements, strong user involvement, development time tightness, process
simplicity, and production of valuable software in low cost. This research study investigates the current
mobile app development approaches adopted in Omani market and provides a comparison between
existing methods. The results reveal that Agile approach is the most popular model for mobile software
engineering in Omani, as it naturally fits most of the applications required in this market. The study also
discusses various agile process models such as Scrum, XP, Lean, DSDM, and others. It is concluded that
XP model is the most preferable model used by Omani developers due to its dynamic and adaptive nature
for different mobile app processes. The study provides also a series of recommendations for mobile app
developers which should help in selecting the most appropriate method that suits the targeted market
sector.

Keywords
Development approach, Mobile application, Agile, XP, survey, Oman.

1.INTRODUCTION
Over the last decade, mobile phones play an important role in the economy and seem to be the
future of the business [1 and 2]. Mobile applications or mobile app are evolving rapidly, many
people are doing their activities through their mobile phones, and many companies are trying to
build their application in mobile based, there is huge growing and competition in the mobile app
market [2 and 3]. However, as mobile applications become more complex, and moving to more
business critical uses, mobile app development process –or mobile software engineering-
becomes promising areas for software engineering research. It will be essential to recognize the
most suitable and applicable mobile software engineering processes, where such demand has
striven developers to employ different mobile software engineering methodologies [4-6].

DOI: 10.5121/ijsea.2019.10202 13
International Journal of Software Engineering & Applications (IJSEA), Vol.10, No.2, March 2019

Software engineering is the application of engineering principles to the software design,


development and maintenance. Software development methodology is a framework used to plan,
structure, and control the software process [7]. Selecting appropriate software development
methodology leads to rapid application delivery, cost reduction, and avoiding critical risks.
Further, it provides the developer with the best practices for producing software app that meet the
real customer needs. Generally, mobile app development process consists of five phases; namely:
initiation to understand requirements, design, development, acceptance for final release, and
support which includes training, maintenance, and upgrade [8]. It is a critical task to control and
manage the software process in order to ensure that the produced software app comprises of high
degree of integrity, quality, as well as user satisfaction.

Many other challenges are facing the mobile app developers needed to be overcome [1, 2 and 9];
these challenges include: volatility of the requirements, strong user involvement since the early
stages of the development, tightness of the development time, and development process
simplicity [10]. A typical phenomenon challenges any software development is requirements
changes, it might cause user dissatisfaction in case of restricting incoming changes, or cause
delay in project delivery in case of allowing too many changes [11].

Thus, software development methodology to control the development process and deal with the
challenges is essential to accomplish successful app production. Traditional methodologies that
are used in the desktop application development might not be appropriate for mobile app
development. Characteristics of mobile app are: short life cycles, short software development life
cycles, limited hardware capabilities, easily updateable, downloaded quickly, lack of
requirements description, and frequent change of requirements [12].

There is still lack of research and lack of understanding and analyzing the concerns and
challenges that may occur in mobile app development process. Few formal research about mobile
app engineering have been done until now, [16 and 18], and it was hard to find evidence of any
study that highlights these issues conducted in Omani market. Although the advantages in mobile
technology and the adoption of mobile services have a big influence in Oman [13-15].

The objectives of this study are to gain better understanding of development practices for mobile
apps, to highlight the methodologies adopted currently in the Omani market. Also to recommend
the best practices to be employed for mobile app engineering which promising to help the
targeted market sector developers.

The rest of the paper is organized as follows: Section 2 presents a review of related literatures, the
research methodology is presented in Section 3. A comparative study in Omani market of current
mobile development approaches is analyzed and discussed in Section 4. Series of
recommendations for mobile application developers are presented in Section 5 .Section 6
concludes the paper.

2. REVIEW OF RELATED LITERATURES


Several studies have been conducted about mobile development methods. In [16], the authors
aimed to highlight the current trends in mobile application development methodology through a
survey related to mobile application development process. In this survey, various Agile
14
International Journal of Software Engineering & Applications (IJSEA), Vol.10, No.2, March 2019

approaches such as XP, Scrum, and Lean have been evaluated for their significance in mobile
applications development. The study showed that Agile methods have the potential to help in
delivering enhanced speed and quality, which naturally fit mobile applications development needs
and suitable for mobile development projects.

In [17], Agile - SCRUM practices have been used to develop a light-weight Android application,
where changes in requirements could be accommodated and technical skills upgraded to adapt to
technologies and tools used in the project. In that project a secure backup application on Android
platform developed using important features from Agile-SCRUM methodology. The researchers
concluded that Agile-SCRUM is the best to suit requirements of android software development,
since they could enhanced quality assurance measurements through daily SCRUM meetings, sub-
versioning framework, process-wide reviews, and feedback sessions.

Although Agile-Scrum has been observed obviously in the scope of mobile software
development, a case study in which XP and SCRUM were evaluated from educational
perspectives in a university setting. Two groups of students developed their own version of the
same mobile application; one group used scrum, and the other group used XP. The results of that
study revealed that both SCRUM and Extreme Programming produce good quality software in a
short period of time. However, in regards to the changing of requirements, XP team accepted the
changes easier than the SCRUM team [18].

Farrukh and Tariq [19] stated that hybrid Agile methodologies are ideal to overcome many
limitations in today’s mobile application development process. In other words, each agile
approach has its own shortcoming, therefore a hybrid of two different methodologies such as
scrum and XP should be suitable for most of the small and large projects. In such projects, the
customers do not have clear requirements which complicate the development process. Therefore,
scrum-XP hybrid methodology offers high level of communication among all team members and
customers which results in a quick reaction on customer’s changes in requirements and possibility
to adapt the program to users without any loss.

In [20], it was shown that combining the strength of Scrum, XP and Lean is an ideal mobile
application development methodology instead of applying any one agile methods solely. Cunha et
al. [21] integrated Scrum with Lean Six Sigma and proposed SLeSS. Scrum is used for software
development and project management even for complex projects while Lean Six Sigma (LSS)
reducing defects and eliminating waste provide better quality product. It provides continuous
process improvements.

ALP-mobile is another proposed process model which combines elements of Scrum, Kanban and
eXtreme Programming (XP). This model was introduced to Austrian experts in the field of
mobile application development, and the feedback regarding the flexibility in the development
process was very positive as shown in the results. [22]

Although, there are many research studies conducted on mobile app development methods, it is
hard to find evidence of any study that highlights the concerns of mobile app development in
Omani market. Bear in mind that the adoption of mobile services have a big influence on Oman
economy [13-15].

15
International Journal of Software Engineering & Applications (IJSEA), Vol.10, No.2, March 2019

3. RESEARCH METHODOLOGY
Inductive research approach has been adopted in this study, starting from collecting data and
observations of individual cases to generating or inferring broad general ideas and theories. The
process of conducting this study involves the following activities:

1. Data collection: face-to-face survey has been done through interviewing mobile app
developers from Omani market. Forty-Four different mobile apps have been investigated,
serving in different society and market sectors. The targeted sectors include education,
banking, marketing, communication, management, people with disabilities,
transportation, and restaurants. This variety in the applications is recommended in order
to investigate different and real needs of the current market. The interview questions are
intended to identify the type of application, development team size, app users, and expose
the adopted development approach, plus explanation with advantages for this selection.

2. Data analyzes: the survey data has been analyzed to find the most popular mobile app
engineering currently used in the Oman; qualitative analyses has been used to analyse the
collected data.

3. Recommendations: series of recommendations has been suggested for Omani market


mobile app developers, which should help in selecting the most appropriate method that
suits the targeted market sector.

4. ANALYSIS
This research investigates the most used mobile app development approaches that are being
applied recently in the Omani market. These development approaches include waterfall, agile,
spiral and prototype methodologies. The investigation is started by conducting a survey in Omani
market through face-to-face interviewing mobile application developers. The survey covered
Forty-Four mobile applications which are serving different society and market sectors as shown
in figure1. This variety of mobile app aimed to help examining and observing varying needs of
different current market organizations. The targeted sectors include education, banking,
marketing, social communication, management, and social services such as App for disabled
people, transportation, and restaurants.

Figure 1: Mobile Application Types investigated in this survey

16
International Journal of Software Engineering & Applications (IJSEA), Vol.10, No.2, March 2019

After analyzing the survey data shown in Figure 2- it is found that agile approach is the most
preferable and usable methodology for mobile app development in Oman. The results also
indicated that agile methodologies were adopted in more than 50% of the mobile app under this
study. This is due to the fact that agile approach ensures a clear channel of communication
between developers and clients. This kind of communication is crucial in industry which is
characterized by its dynamics, high competition, and dealing with uncertain environment.
Therefore, agile methodologies would help developers when customer’s requirements are
incomplete, stakeholder involvement are required, or when the development lifecycle and budgets
are tight. It can be concluded that the agile approach is a natural fit for mobile app development
in Oman.

Figure 2. Mobile Application Development Methodologies

Agile development methodology refers to an iterative and incremental strategy that involves self-
organizing teams working collaboratively to create the software. The term agile was introduced in
the 1990s referring to flexibility in production systems [23]. The Agile Manifesto is a formal
affirmation of 4 key values and 12 principles [24]. Implementing these key values and principles
in mobile applications development should guarantee a proper interaction between the developer
and the client which will result in involving the customer in the design and development stage
and consequently delivering a working software. It will also help both developer and customer to
respond to changes effectively. From the development perspective, agile methodologies should
assure customer satisfaction since early stages, acceptance of requirements changing, cooperation
between developers and clients, constant channel for team communications, and retain simplicity
in the development process.

The study has also elaborated on various agile process models such as Scrum, XP, Lean, DSDM,
and others, Table 1 shows various methods employed as agile approach along with their
advantages and disadvantages.

17
International Journal of Software Engineering & Applications (IJSEA), Vol.10, No.2, March 2019

Table 1. Agile development Methods

Agile method Overview Advantages Disadvantages


Scrum An  High communication  lack of documentation
iterative and incremental level with team member  Close interaction
framework, feedback-  Client participation  Lack of formal leader
driven, where self-  Self-organizing team  specialized skills
organizing development  Respect team members and test plan
team works as a unit to  can easily get out off
reach a common goal track
30-days release cycles
Lean Optimizing efficiency and  Difficult to
Development minimizing producing  Waste Elimination develop the system as
 No need for defining a
software that does not a single unit
address the customers’ complete specification  No clear
needs  Deliver high-quality
requirements
systems quickly definition can
 Optimizing delivered
increase
business value
implementation time.
Extreme frequent "releases" in short  Team communication, • implicit design
programming development cycles,  Technical practice  hard to write good test
(XP) customer driven development  Frequent feedback  frequent
, XP argue that the code is the  encourage for effective iterations
only truly important product actions compromise quality
of the system development  Respect team members  better applicable if all
process daily builds  End user involvement team members can work at
 Enhance quality the same location
 open to employee creativity,
freedom and self-control
and innovation
Adaptive Adaptive practice, focuses on  Extensive users involvement  Extensive testing
Software collaboration and learning as a  Requirements evolution increases the cost
Development technique to build complex  High quality software  Projects become bigger
(ASD) systems, Repeating series of  Early delivery. than they were visualized in
speculate, collaborate, and the initial stages.
learn cycles.
Agile Modeling The agile version of Model  Continuous attention to  Lack of documentation
Driven Development technical excellence and good  Final outcome is not clear
design.  Fit only senior
 Rapid, continuous programmers
delivery of software.
 Customers,
developers and testers
interaction
 Welcoming late
changes in requirements
Crystal Methods Collection of agile  Human-powered  Critical decisions
development methodologies,  Adaptive regarding the architecture
focuses on six primary aspects:  Lightweight methodology of the application are made
people, interaction, by individuals and not by
community, communication, the
skills, entire team
and talents.

18
International Journal of Software Engineering & Applications (IJSEA), Vol.10, No.2, March 2019

Dynamic Its origins the  Requirements continue to  documentation are


System RAD (Rapid evolve complex and time
Development Application  Adheres strictly to consuming
Methodology Development) agreed timelines and  can reduce the
(DSDM) Methodology. budget robustness of code
 Stakeholders involvement  Skilled
 Strong emphasis on developers/development
system testing teams required
 realistic expectations
Feature Driven Oriented on resulting out small  Multiple teams  Not as powerful on
Development blocks of client valued working in parallel smaller projects
functionality.  Tiny delivered S.W.  Lack of documentation.
 Map directly onto an  Reliance on programmer.
object domain model  individual code ownership
 Coded directly
 Assembled in component sets
 Risk Reduction

Figure 3 shows the agile methodologies that are being used by mobile app developers in the
Omani market. Although it can be noted that eXtreme Programming (XP) is most preferable
development methodology, Scrum method is the most popular agile method in most applications
[16]. XP involves breaking down the project into frequent releases in short development cycles,
where each release contains some functionalities developed in simple code and tested within
distinct phase before moving to the next part of project. This important feature made XP an
attractive method to be used in Oman as the number of requirements is volatility and new
requirements certainly introduced by the customer in different stages of the development. XP
guarantees strong customer involvement in the development process, good communication inside
of the teams, low cost for changes, and iterative cycles of development that will increase
employee and users’ satisfaction.

In-depth analysis of the collected data was done in order to elicit the impact of mobile app
context and functionalities in the adopted development approach. The results reveal that most of
the gaming and social communication applications are developed using XP. While developers of
marketing, banking, transportation and management applications prefer to use Scrum. FDD and
DSDM are commonly used for educational, disabilities, and restaurants applications.

Figure 3. Mobile application development using different Agile


Methodologies

19
International Journal of Software Engineering & Applications (IJSEA), Vol.10, No.2, March 2019

5. RECOMMENDATIONS
Another objective of this research study is to come up with a series of recommendations for
mobile app developers in the Omani market. These recommendations should help mobile
applications developers to select the most appropriate design method that suit the targeted market
sector.

Based on the results revealed from the data analysis, it is suggested that implementing agile
approaches are best suitable for the development of mobile apps. Furthermore, it is found that
agile approaches are the best practice to be followed by the mobile apps developers as the
findings show that agile approach is adopted in more than 50% of the mobile app under this
study. This is due to the fact that agile approach fits small teams, small development cycles,
rapidly changing requirements, and continuous software integration and fast software delivery
demands. However, the decision of choosing the right development methodology should be made
on a case-by-case basis, where company’s unique culture and organization will determine the
appropriate agile methodology to be adopted, or based upon project’s complexity and team size.

On the other hand, the context and functionalities of the applications could have a major impact
on the adopted agile methodology. For instance, the results analysis of the questionnaire showed
XP is best choice for gaming and social communication applications, while Scrum could be more
preferable in marketing, banking, transportation and management applications.

The authors also believe that mixture of different agile processes is promising to enhance
software engineering flexibility that should overcome many challenges. It also provides the
developer with the best practices to implement mobile app that meet the customer requirements
while not violating the realistic constraints. It would be more beneficial to consider the
advantages of two or more combined agile methods to create a good mobile software product.

6. CONCLUSION
Mobile apps become the dominant phenomenon in the current market and economy, this research
study aimed to highlight the most utilized mobile application development approach that is being
used recently in the Omani market. Agile methodology was found to be most suitable for mobile
app development as they accept changes easily, support cooperation between developers and
clients, reduce delivery time, and simplify the development process. However, it has been
observed in this research study that using AgileXP methodology is the most adopted method. XP
guarantees strong customer involvement, good communication inside the teams, and
incorporating new requirements easily that will increase employee satisfaction and retention.
Methodologies for mobile app development are still being released and employed. There is no
hard or fast rule that helps to choose the optimal methodology, however, it all depends on project
context, complexity and team size.

20
International Journal of Software Engineering & Applications (IJSEA), Vol.10, No.2, March 2019

REFERENCES

[1] N. Ajit Kumar, K.T. Hari Krishna , Prof. Manjula R, ” Challenges and Best Practices in Mobile
Application Development”, Imperial Journal of Interdisciplinary Research (IJIR), Vol-2, Issue-12,
2016

[2] Naila Kousar, Muhammad Sheraz, Aramghan Sarwar, Burhan Mohy-ud-din, Ayesha Shahid,
“Software Engineering: Challenges and their Solution in Mobile App Development”, (IJACSA)
International Journal of Advanced Computer Science and Applications, Vol. 9, No. 1, 2018.

[3] Anthony I. Wasserman, “Software Engineering Issues for Mobile Application Development”
Proceedings of the Workshop on Future of Software Engineering Research (FoSER), at the 18th
ACM, 2010.

[4] Luis Corral, Alberto Sillitti, Giancarlo Succi, “Software Development Processes for Mobile Systems,
Is Agile Really Taking Over the Business?” 1st International Workshop on the Engineering of
Mobile-Enabled Systems (MOBS), 2013.

[5] V. Rahmimian and R. Ramsin, “Designing an Agile Methodology for Mobile Software Development:
A hybrid Method Engineering Approach”, in proceedings of second international conference on
Research Challenges in Information Science, RCIS (2008). Marrakech, 2008, pp. 337- 342.

[6] A.C. Spataru, “Agile Development Methods for Mobile Applications”, PhD Thesis, University of
Edinburgh, the University Of Edinburg, Edinburg, 2010.

[7] Giner Alor-ernández, Viviana Yarel Rosales-Morales, and Luis Omar Colombo-Mendoza,
“Frameworks, Methodologies, and Tools for Developing Rich Internet Applications”, Information
Science Reference, an imprint of IGI Global, 2015.

[8] Anureet Kaur, “Review on Agile Approach to Mobile Application Development”, International
Journal of Computing and Technology, Volume 3, Issue 4, April 2016.

[9] Ali Mesbah ; Philippe Kruchten, “Real Challenges in Mobile App Development, Mona Erfani
Joorabchi “, ACM/IEEE International Symposium on Empirical Software Engineering and
Measurement (ESEM), 2013.

[10] Mudasir M Kirmani, “Agile Methods for Mobile Application Gevelopment: A comparative analysis”,
International Journal of Advanced Research in Computer Science, Volume 8, No. 5, May-June 2017.

[11] Jalal Shah, Nazri Kama and Nur Azaliah A Bakar, “A Novel Effort Estimation Model For Software
Requirement Changes During Software Development Phase”, International Journal of Software
Engineering & Applications (IJSEA), Vol.9, No.6, November 2018

[12] Ganesh Prasad P, R Hamsini, Smitha G R, “Agile Development Methodology and Testing for Mobile
Applications - A Survey”, International Journal of New Technology and Research (IJNTR),
ISSN:2454-4116,Volume-2, Issue-9, September 2016 Pages 98-101

[13] Sayed Jafar Naqvi, Hahed Al-Shihi, “Factors Affecting M-commerce Adoption in Oman using
Technology Acceptance Modeling Approach”, TEM Journal – Volume 3, Nov-2014.

21
International Journal of Software Engineering & Applications (IJSEA), Vol.10, No.2, March 2019

[14] Mohamed Sarrab, Ibtisam Al Shibli, and Nabeela Badursha, “An Empirical Study of Factors Driving
the Adoption of Mobile Learning in Omani Higher Education”, International Review of Research in
Open and Distributed Learning, Volume 17, Number 4, June-2016

[15] Rakesh Belwal, Shweta Belwa, “Mobile Phone Usage Behavior of University Students in Oman”,
International Conference on New Trends in Information and Service Science, NISS '09. International
Conference , 2009.

[16] Harleen K. Flora, Swati V. Chande, Xiaofeng Wang, “Adopting an Agile Approach for the
Development of Mobile Applications”, International Journal of Computer Applications (0975 – 8887)
Volume 94 – No.17, May 2014.

[17] Shakira Banu Kaleel, Ssowjanya HariShankar, “Applying Agile Methodology in Mobile Software
Engineering: Android Application Development and its Challenges”, computer science Technical
Report , 2013.

[18] Ramón Ventura Roque Hernández, Juan Antonio Herrera Izaguirre, Adán López Mendoza, Juan
Manuel Salinas Escandón, “A Practical Approach to the Agile Development of Mobile Apps in the
Classroom”, Innovación Educativa, ISSN: 1665-2673 vol. 17, número 73 | enero-abril, 2017.

[19] Farrukh Musa, Muhammad Ali Tariq, “Agile Methodology: Hybrid Approach Scrum and XP”,
International Journal of Scientific & Engineering Research, Volume 8, Issue 4, April-2017.

[20] Anitha Ashishdeep, Jitendra Bhatia, Krunal Varma, “Software Process Models for Mobile
Application Development: A Review”, IJCSC volume 7, 2016.

[21] Thiago Ferraz V. da Cunha, Valeria L. L. Dantas, Rossana M. C. Andrade, “SLeSS: A Scrum and
Lean Six Sigma Integration Approach for the Development of Software Customization for Mobile
Phones ”, Brazilian Symposium on Software Engineering, 2011.

[22] Raoul Vallon*, Lukas Wenzel, Martin E. Brüggemann, Thomas Grechenig, “An Agile and Lean
Process Model for Mobile App Development: Case Study into Austrian Industry”, Journal of
Software, Volume 10, Number 11, November 2015.

[23] V. M. M. Thilak , S. R. Devadasan, and N. M. Sivaram, “A Literature Review on the Progression of


Agile Manufacturing Paradigm and Its Scope of Application in Pump Industry”,
ScientificWorldJournal, 2015

[24] Harleen K. Flora , Dr. Swati V. Chande2, “ A Review and Analysis on Mobile Application
Development Process Using Agile Methodologies” , International Journal of Research in Computer
Science, Volume 3 Issue 4 (2013).

22

View publication stats

You might also like