Investigating the Adoption of Agile Practices in Mobile Application
Development
Alan Santos
1
, Josiane Kroll
1
, Afonso Sales
1
, Paulo Fernandes
1
and Daniel Wildt
2
1
Computer Science Department, Pontifical University Catholic of Rio Grande do Sul (PUCRS), Porto Alegre, RS, Brazil
2
WildTech, Porto Alegre, RS, Brazil
Keywords:
Software Engineering, Mobile Application, Software Development, Agile Practices, Challenges, Benefits.
Abstract:
The mobile application development market has been dramatically growing in the last few years as the com-
plexity of its applications and speed of software development process. These changes in the mobile develop-
ment market require a rethinking on the way the software development should be performed by teams. In order
to better understand how agile practices support mobile application development, we applied a questionnaire
to 20 undergraduate students. These students have been training in an iOS development course combined
with agile practices. Our study aims to identify challenges and to report the students experience on the adop-
tion of agile practices to develop mobile applications. Our findings reveal that agile practices help mobile
software development mainly in terms of project management and control and development speed. However,
aspects of user interface and user experience, different development platforms, and users expectations still
point challenges in developing mobile applications.
1 INTRODUCTION
Mobile application development is a new trend in the
software industry. It also plays an important role in
the economic development of a country as well as in
teaching and learning (Zhang, 2015). The combina-
tion of devices such as cameras, sensors, touch and
GPS with mobile platforms increase the possibilities
for developing new mobile applications (apps). Ad-
ditionally, devices have become more complex and
mission critical (Lewis et al., 2013) due to the sud-
den wave of mobile device use.
According to Wasserman (Wasserman, 2010),
mobile devices have been adopted in different ways
for desktop or laptop computers. Mobile applications
development can be similar to software engineering
for other embedded applications. However, mobile
applications development present some additional re-
quirements that are less commonly found if compared
to traditional software applications. The relevance
of mobile software products has reached a point in
which its devices have become one of the most pop-
ular platforms for the distribution and use of user-
oriented software (Corral, 2012). The development
speed in mobile software development has become a
key factor due to developers’ possibility of submitting
applications (apps) directly to the market. Thus, it is
necessary to identify agile practices to implement mo-
bile applications as well as to provide a good learning
experience.
In this paper, we investigate challenges in mobile
application development and the students’ experience
on the adoption of agile practices for developing mo-
bile applications. In order to achieve this goal, we
applied a questionnaire to 20 undergraduate students
who have been attending an iOS development course.
This course adopted agile practices to develop differ-
ent types of mobile applications. Our results describe
the participants’ perception on the use of agile prac-
tices, challenges, and perceived benefits. The main
contribution of this paper is to provide a further dis-
cussion about the adoption of agile practices for mo-
bile application development.
The remainder of this paper is organized as fol-
lows: Section 2 introduces a brief background
about mobile application development while Sec-
tion 3 presents a background on agile software de-
velopment. In Section 4, we describe the research
methodology adopted in this study and, in Section 5,
we present the results. Section 6 discusses our re-
sults. Finally, we draw our conclusion an future work
in Section 7.
490
Santos, A., Kroll, J., Sales, A., Fernandes, P. and Wildt, D.
Investigating the Adoption of Agile Practices in Mobile Application Development.
In Proceedings of the 18th International Conference on Enterprise Information Systems (ICEIS 2016) - Volume 1, pages 490-497
ISBN: 978-989-758-187-8
Copyright
c
2016 by SCITEPRESS Science and Technology Publications, Lda. All rights reserved
2 MOBILE APPLICATION
DEVELOPMENT
Since 2008, Apple and Google have opened their ap-
plication store for iOS and Android platforms, a point
where mobile apps started quickly evolve. Mobile ap-
plication development is a process in which applica-
tions are developed for small handheld devices, being
either pre-installed on devices during manufacture or
downloaded from application stores or other software
distribution platforms (Flora and Chande, 2013). Fol-
lowing the evolution of mobile application develop-
ment, the traditional software development life cycle
is no longer the only approach because long project
planning phases and long development cycles can re-
sult on outdated mobile applications.
There are different programming environments
available for the major mobile platforms (Wasserman,
2010), for Windows Phone there is Microsoft’s Visual
Studio environment, for Android platform there are
Android development tools plug-in for Eclipse, and
Apple iOS Dev Center has the Xcode package. Ac-
cording to Xanthopoulos and Xinogalos (Xanthopou-
los and Xinogalos, 2013) with the currently increas-
ing number of mobile platforms, developing mobile
applications has become difficult for companies, as
they need to develop the same applications for each
target platform. The typical process for developing
native applications is the most appropriate way of de-
ploying mobile apps but it has one major disadvan-
tage: it is not possible to reuse the source code for
another platform; the same app must be redeveloped
from the beginning.
Mobile web applications are mainly based on
technologies such as HTML and JavaScript and do
not require installation or device upgrades, enabling
information processing functions to be initiated re-
motely on Web server (Huy and vanThanh, 2012).
Some of the web applications drawbacks are: lim-
ited access to the underlying device as hardware and
data and the extra time needed to render the web con-
tent (Xanthopoulos and Xinogalos, 2013). Hybrid de-
velopment is another approach to develop a mobile
application which tries to combine the advantages of
web and native apps where applications are primar-
ily built using HTML5 and JavaScript, and a deep
knowledge of the target platform is not required (Xan-
thopoulos and Xinogalos, 2013). According to Al-
ston (Alston, 2012), many mobile applications that
are developed are considered to be alternative appli-
cations. These applications are developed for a spe-
cific platform and it have access to the hardware of a
device through the use of Application Programming
Interfaces (APIs).
The adoption of a suitable software development
methodology is very important in mobile software en-
gineering, since software applications are changing
and evolving all the time based on immediate user
requirements (Kaleel and Harishankar, 2013). Au-
thors describe Scrum practices as the best suit require-
ments of android software development and applied
them in designing a mobile software development
methodology where they were able to successfully
develop a secure backup application using important
features from Scrum methodology such as adaptabil-
ity to evolving requirements, technically strong devel-
opment teams and effective communication through
daily meetings (Kaleel and Harishankar, 2013).
3 AGILE DEVELOPMENT
Agile development or adaptive development are
aimed to rapidly adapt to the changing reality. An
agile method emphasizes communication and collab-
oration in an iterative process (Smite et al., 2010).
The adoption of agile development makes soft-
ware processes more flexible, helps in continue learn-
ing and incremental delivery, quickly and easily
adapting to requirements and technologies changes.
Moreover, agile development focuses more on the
human aspects of software engineering than the
processes, human interaction over tools and pro-
cesses (Flora and Chande, 2013). Authors also per-
formed a review and analysis on mobile application
development process using agile methodologies. Ac-
cording to authors agile development has fit for mo-
bile application development. In this context, there
are studies which recommended that agile practices
are a good choice and assures different phases of
software development life cycle to solve the mobile
application development issues (Flora and Chande,
2013), they evaluated the following mobile develop-
ment process: Mobile D, RaPiD 7, Hybrid Methodol-
ogy Design, MASAM and SLeSS where they found
that work related to mobile software confirms agile
practices to be a natural fit for the development of
mobile applications and an appropriate agile method
could be selected for a given project and can be tai-
lored to a specific requirement based upon project’s
complexity and team size.
Agile development is recommended to small-to-
medium-sized projects, software development orga-
nizations are increasingly recognizing the need for
agility.
In literature, Extreme Programming (XP) and
Scrum are the most common agile methods for mobile
application development. According to Paasivaara et
Investigating the Adoption of Agile Practices in Mobile Application Development
491
al. (Paasivaara et al., 2008) these methods can be eas-
ily customized by software companies. We describe
these agile methods and others in the following sub-
sections.
3.1 Extreme Programming
Extreme Programming (XP) is a discipline of soft-
ware development which emphasizes productivity,
flexibility, informality, teamwork, and the limited use
of technology outside of programming, working in
short cycles and every cycle starts by choosing a sub-
set of requirements from a larger set (Macias et al.,
2003).
According to Moore and Flannery (Moore and
Flannery, 2007), XP implements a groupware style
development where feedback is obtained by daily test-
ing the software where developers deliver the sys-
tem to the customers as early as possible, allow-
ing a rapid response for requirements and technolo-
gies changes. Beck (Beck, 2000) present XP as a
light-weight methodology for small-to-medium-sized
teams developing software in the face of vague or
rapidly-changing requirements.
3.2 Scrum
Scrum is an iterative and incremental agile software
development approach. It offers a framework and
set of practices that keep everything visible, allowing
practitioners to know exactly what is going on and to
make adjustments in order to have the project moving
towards desired goals. The adoption of Scrum prac-
tices is the main factor to successfully develop soft-
ware projects (Scharff and Verma, 2010).
The scrum workflow is a sequence of iterations
called sprints which have a duration between one and
four weeks each. The team has the work foundation
as part of a product backlog which is a list of require-
ments and priorities.
Each sprint has daily meetings where each team
member answers what he/she has been done on the
previous day, what is going to be done in the current
day and if there is any roadblock to move forward on
development activities. At the end of each sprint there
is a product demo called Sprint Review and after that
it is handled a lessons learned session called Sprint
Retrospective (Reichlmayr, 2011).
4 RESEARCH METHODOLOGY
We applied a questionnaire to a group of 20 stu-
dents from the iOS development training course. This
course is provide for a large software company in or-
der to train undergraduate students on mobile applica-
tion development for iOS. The course takes 4 months
duration.
In this study, we selected 20 from 87 students,
who were attending the course. We adopted a random
selection to obtain a pool of participants.
During the course, each student has his/her own
equipment to use as part of the class meetings and
projects and worked in teams from two to ve in-
dividuals. The course curriculum includes the fol-
lowing subjects: Object-Oriented Programming, User
Interface (UI) components, Model View Controller,
Data sources, Navigation, Animations and Frame-
works. The course also covered an introduction to
Scrum framework. After taking theoretical lessons,
all students work for four months to develop real mo-
bile applications using agile practices to support it.
The participants are on average at the 5th semester
and majority of participants who answered the ques-
tionnaire are from an IT related field: 30% from
Computer Science, 35% from Information Systems,
10% from Computer Engineering, 10% from Systems
Analysis and 15% from Other courses.
Another profile information from the overall 87
students attending the training is that 35% of the
students already had previous software development
courses using Java and C#. In this context, 68%
had up to 3 years of experience in development, 18%
had between 3 and 5 years of experience, and 14%
had more than 5 years software development experi-
ence. Only 10% of the students had a previous contact
with mobile application development. Most of pre-
vious students experience were from other courses,
as well as from the industry. In the software devel-
opment methodology analysis, 65% did not have any
previous contact with software development method-
ologies, 20% had previous contact with some prac-
tices of agile development, and 15% had contact with
traditional software development approach. Table 1
present the participants information.
The course is facilitated by 6 instructors with ex-
perience in iOS development, academic and project
management background. Four of them, have more
than five years of experience as software developers.
The course combines elements of Challenge-Based
Learning (CBL) and Scrum in order to help the stu-
dents to develop their apps (Santos et al., 2015).
At the end of the training course, we applied
a questionnaire with eight research questions. Six
questions to collect the background information of
the participants (Name, Age, Undergraduate course,
Semester, Previous working/study experience in agile
practices, Previous working/study experience in mo-
ICEIS 2016 - 18th International Conference on Enterprise Information Systems
492
Table 1: Participants information.
Participant Age Course Semester
A 24 Computer Science 8
B 23 Information Systems 6
C 21 Computer Engineering 5
D 22 Information Systems 7
E 27 Information Systems 5
F 21 Information Systems 4
G 24 Computer Science 3
H 22 Information Systems 5
I 19 Information Systems 4
J 21 Computer Engineering 5
L 34 Systems Analysis 3
M 19 Information Systems 5
N 20 Computer Science 4
O 20 Computer Science 3
P 26 Computer Science 4
Q 20 Business 5
R 24 Systems Analysis 3
S 21 Engineering 9
T 22 Systems Analysis 7
U 24 Computer Science 5
bile development). The other two questions related
to the adoption of agile practices to develop mobile
applications. The following questions are presented:
Q1: What are the challenges in mobile applica-
tion development?
Q2: What is your opinion about the adoption of
agile practices for mobile application develop-
ment?
5 RESULTS
The following subsections outlines the results related
to the research questions related to the adoption of
agile practices to develop mobile applications. We
adopted the content analysis as a qualitative research
technique to identify the challenges and perceived
benefits on the adoption of agile methods for devel-
oping mobile applications.
5.1 Challenges in Mobile Application
Development
In mobile application development, apart from adopt
agile or a traditional approach, developers face many
challenges. Based on our data collection, we identi-
fied five main challenges related to the adoption of ag-
ile practices in mobile application development. Ta-
ble 2 shows these challenges.
Define UI/UX (User Interface/User Experience
Design): UX was cited as one of the factors that
differ developing mobile applications for tradi-
tional applications. This is point as a challenge
Table 2: Challenges for mobile application development.
Challenges Frequency
Define UI/UX 50%
Different users’ expectations 30%
Different development platforms 20%
Continuous update 10%
Devices and applications performance 10%
because of the diversity of devices, sensors and
features that may be are utilized using a mobile
device. UI has also been cited as one of the fac-
tors that differ developing mobile applications for
traditional applications. It due to the diversity of
devices and different sizes and development plat-
forms that can be used to develop applications.
Participants explain this challenge.
I think the main difference is about UI, not
for the huge amount of different screen sizes,
but the way applications are used on a desk-
top computer was always using a keyboard
and mouse as input. We have a keyboard
when using mobile devices, but instead of the
mouse we have touch screen, that has nu-
merous other representations to click, not to
mention the use of all other sensors avail-
able, which makes creating the interface to
integrate harmoniously challenging. (Partic-
ipant B)
In my opinion, it’s different because you need
to think much more in the user experience.
Usually the applications are for a general
audience, then you should pay attention to
all aspects (accessibility, design). (Partici-
pant E)
Different Users’ Expectations: the diversity of
users and their expectations is identified as a chal-
lenge in mobile application development. First,
a single application may have millions of users,
according to the sense that a lot of users also cor-
responds to a large diversity of users, with differ-
ent expectations, demands and devices. Another
point raised it is also the question of the speed in
which mobile solutions need to be released.
I think the main difference to develop mo-
bile (applications) over other platforms is
the proximity to the user. It is common for
a mobile application to be used by millions
of people, while a desktop system is differ-
ent. In my point of view, mobile applica-
tions can help change the lives of people in a
more direct and fast way, compared to some
other systems. The biggest challenge is to
promote solutions that really make a differ-
ence in people’s lives. (Participant J)
Investigating the Adoption of Agile Practices in Mobile Application Development
493
Different Development Platforms: differences
between hardware and software platforms have
also been identified as one of the differences and
challenges in developing applications for mobile
devices. It due to the fact that the amount of ap-
plication program interfaces (APIs) in each of the
development platforms, as well as different fea-
tures and differences in hardware.
The great diversity of types and capabilities
of these devices also creates a challenge for
developers, because they need to develop the
system in such a way that it is able to run sat-
isfactorily in a wide range of devices. (Par-
ticipant K)
Continuous Update: the constant updating of
technologies is also cited as one of the main chal-
lenges due to frequent updating of development
platforms, as well as the frequent launch of de-
vices with different sizes and features. A partici-
pant describe it.
As challenges, I believe the fact that you have
to keep up to date because the mobile devel-
opment is always emerging innovations, new
frameworks, new languages. (Participant C)
Devices and Application Performance: another
issue reported by the participants is performance
on data access. It happens because of hardware
limitations. We can also observe this aspect as
an important aspect on the mobile development
based on the following answers from the partici-
pants.
It’s different, because we have to think of
something practical that fits in a relatively
small screen and that is attractive. I think
the biggest challenge is to be always up-
dated and seek the best performance for the
application, or it will become obsolete very
quickly. (Participant B)
5.2 Perceived Benefits of Agile Practices
for Developing Mobile Applications
Agile development as well mobile application devel-
opment are research areas with many important as-
pects to be investigated. Despite of its challenges,
we also identified a set of eight benefits of the adop-
tion agile practices for developing mobile applica-
tions. Table 3 list the benefits.
Improves the Management and Control: ag-
ile process address the inherent problems of tradi-
tional development using product demand and de-
livery, and also control of ongoing projects. Thus,
Table 3: Perceived benefits of agile development for devel-
oping mobile applications.
Benefits Frequency
Improves the management and control 45%
Improves development speed 25%
Continuous improvement 15%
Promotes a life-cycle delivery 15%
Support multiple interactions 10%
Improves communication 10%
Improves performance 5%
Allows transparency 5%
agile processes implement control through fre-
quent inspection and adaptation and support the
project management.
I believe it is extremely important, it enables
better organization and control of tasks as
better ways to follow the team. (Participant
H)
Improves Development Speed: agile practices
helps to attain development velocity. It specially
because agile practices focus on short develop-
ment cycles. Agile development teams tasked to
deliver high-value features quickly.
Agile practices positively influence the mo-
bile development, because they are usually
solutions that require immediate and rapid
development. With many interactions agile
is fundamental because with this the team is
able to design and prototype a product with
more speed, unlike other methodologies. For
example, Waterfall approach validates the
implementation only at the end of the cycle.
(Participant C)
Continuous Improvement: agile principles,
practices, and methods support continuous im-
provement. Through constant iterations, iterative
planning and review, agile development brings the
expected results.
The use of agile practices helps to make ap-
plication development safety because it is
possible to identify and eliminate failures or
unwanted behaviors quickly and accurately.
(Participant M)
Promotes a Life-cycle Delivery: one of the great
advantages of agile software development is the
wealth of practices, techniques, and strategies that
promote a delivery life-cycle. Agile teams will
adopt a life-cycle that is the most appropriate for
their situation. The delivery life-cycle is goal-
driven.
I believe that the use of agile methods help
one mobile team to organize and deliver. Es-
ICEIS 2016 - 18th International Conference on Enterprise Information Systems
494
pecially if the project is very long. This re-
quires collecting metrics during the itera-
tions. (Participant C)
Support Multiple Interactions: the product life-
cycle goes from the initial idea for the product,
through delivery, to operations and support and
often has many iterations of the delivery life-
cycle. Multiple iterations promote fast develop-
ment cycles and incremental improvement of ap-
plications. Furthermore, multiple iterations allow
teams not only to plan at the iteration level but
also to conduct long term release planning (Smite
et al., 2010).
I believe it is fundamental for development,
mainly by constant reviews that facilitate
troubleshooting and redefinition of the scope
of the project (if needed). The various exist-
ing iterations on agile methods are extremely
important for the application’s success. Ag-
ile methods facilitate and assist mobile de-
velopment. (Participant E)
Improves Communication: agile development
in general use a set of values, principles and prac-
tices to guide teams in being as agile as possi-
ble. It includes the adoption of models to support
communication and understanding. Their adop-
tion facilitates communication between the group
and make team members more critical.
It improves the communication and team-
work among team members providing a re-
alistic view about project progress. (Partici-
pant R)
Improves Performance: agile practices can help
to improve the project performance in mobile de-
velopment environments. It because agile prac-
tices provide a major performance of developers.
Agile teams provide an agile plan with progress
updated every day.
I think that helps a lot in performance im-
provement. Perhaps even more than other
areas of development. It fits very well with
mobile development. (Participant A)
Allows Transparency: it was also raised as a
point of clarity and objectivity generated by the
use of agile development. Software projects only
succeed with effective planning, visibility, and co-
ordination. Agile practices promote a disciplined
project management.
My experience with agile development was
great, in my opinion it is essential to use
this methodology because it makes the devel-
opment process more objective and clearer.
(Participant B)
An important aspect to be observed in the use of
agile practices. Thus, Figure 1 presents agile prac-
tices used by the participants to develop mobile appli-
cations during the course.
Figure 1: Agile practices used by participants in this study.
The majority of the participants adopt daily scrum
meeting practice, because it helps them to keep track
of project activities and communication. The second
practice more adopted by the participants is Kanban
(a system for visualising work do be done, in progress
or completed). By the adoption of Kanban partici-
pants can see the progress of each activity, what still
need to be done, what is in progress and what is com-
pleted. Iterative planning was also reported by par-
ticipant. This practice help to organize the develop-
ment and deliverables on different interactions and
continues improvement. Small releases is also used
by participants in order to organize different deliv-
erables in accordance to the iterative planning. Pair
programming was also reported as very useful spe-
cially when participants need to learn something new
or need to work on something critical. Burndown,
continuous integration and refactoring were reported
by less than 20% of participants. Automated builds
and TDD (Test Driven Development) were reported
by less than 10% of participants.
6 DISCUSSION
Developing mobile applications can be hard due to
many reasons. In this study, we found five main chal-
lenges. These challenges are faced for both beginners
practitioners as well as more experienced developers.
We also identified eight benefits of the adoption of
agile practices for mobile application development.
The majority of the answers given by interviewees
(50%) reported UI/UX as challenge for mobile ap-
plication development. According to Dalmasso et al.
(Dalmasso et al., 2013), most of the developers would
like to release apps for major mobile platforms (iOS,
Investigating the Adoption of Agile Practices in Mobile Application Development
495
Android) and provide a consistent UI and UX across
the platforms. However, developing an app for sepa-
rate mobile platforms require in-depth knowledge of
their SDKs (Software Development Kit). The devel-
oper can control all aspects of the user experience, but
a mobile application must share common elements of
the user interface with other applications and must
adhere to externally developed user interface guide-
lines (Wasserman, 2010). The diversity of mobile
platforms, as well as the variety of SDKs and other
tools contributes to increase this challenge.
Different users’ expectations and different devel-
opment platforms are reported in 30% and 20% of the
answers, respectively. This result shows that the main
elements of mobile applications, user and technology,
can pose challenges in mobile development. As well
as, it poses challenges in teaching and learning mobile
software development. We believe that this challenge
will increase over the years. It can happen due to the
increase number of new users and technologies. A
single mobile application can reach millions of users
with different devices, age groups, and supported by
different platforms.
Continuous update and devices applications per-
formance are reported in 10% of the answers given by
interviewees. These challenges have a lower percent-
age when compared to define UI/UX challenge. How-
ever, these challenges are not less important, and in
fact mobile applications are becoming more complex
and users require high-quality mobile apps (Wasser-
man, 2010).
We also identified the benefits of the adoption of
agile practices for mobile application development.
The greatest benefit according to our findings is to im-
prove the management and control. It makes sense,
since agile approaches are focused project manage-
ment (Scharff and Verma, 2010). At the same
time, agile practices help to increase the development
speed. It is very important in the mobile market since
new applications are available every day in the Apps
store.
The benefits of agile practices adoption described
in this study are not necessarily restricted to the spe-
cific type of software development and it can also be
extended to other software application domains. On
the other hand, we identified challenges in mobile ap-
plication development domain. A further investiga-
tion should be conducted in order to explore the rela-
tionship between challenges and achieved benefits.
An unexpected benefit from the adoption of agile
practices was presented in terms of students engage-
ment and motivation. We did not report this benefit
in Section 5.2. However, it is important to highlight
its contribution for teaching and learning mobile ap-
plication development.
Our study is helpful in uncovering the underlying
challenges and their implications on existing practice.
First, challenges identified enable further research on
more detailed activities important to consider while
implementing an agile project for mobile application
domain. Second, the benefits reported here have been
mentioned by the interviewees and identified during
the coding process alongside the challenges. Sim-
ilarly to the challenges, some benefits can be more
perceived than others.
6.1 Limitations of this Study
Our study was conducted with a limited number of
respondents and from the same iOS development
course. In addition, our results are drawn the view-
point of students (development teams). It is also im-
portant to notice that part of project participants were
attending a training course without previous expe-
rience with other approaches or software practices.
These features highlight the fact that participants may
become comfortable with it, and accepted the envi-
ronment challenges and its limitations.
However, our results demonstrated that on using
agile practices as part of a mobile application de-
velopment environment are similar to previous liter-
ature studies. Our results have also shown that short
development cycles and small releases are important
features on mobile application development environ-
ments. We have found indicatives in our study that ag-
ile practices are the best approaches for mobile soft-
ware development environments.
7 FINAL REMARKS
This study explores the adoption of agile practices for
mobile application development. In other words, we
investigate challenges and the students’ experience on
the adoption of agile practices. We identified five
main challenges in mobile application development
and eight benefits of agile practices for developing
mobile applications.
Our results show that the main challenge to de-
velop mobile applications is to define UI and UX
followed by achieve different users’ expectations.
Regarding to the benefits, we found improvements
on management and control as well as development
speed. All teams finished their application projects
(apps) delivering more than five different applications
covering areas such as games, public transportation,
services and productivity. Their apps presented a high
ICEIS 2016 - 18th International Conference on Enterprise Information Systems
496
quality and used advanced resources such as data per-
sistence, web services, etc.
Results from our study can be used to support
developers, project managers, decision makers, and
practitioners in order to choose the software devel-
opment methodology to develop a mobile application
project.
For future work, we will use the findings of this
study to design an approach for teaching and learning
mobile application development. The adoption of ag-
ile practices for mobile application development will
be further investigate in order to propose new prac-
tices and processes to support software development.
ACKNOWLEDGMENT
Afonso Sales is funded by CNPq-Brazil (Uni-
versal 470096/2013-6) and Paulo Fernandes is also
funded by CNPq-Brazil (PQ 307602/2013-3).
REFERENCES
Alston, P. (2012). Teaching Mobile Web Application De-
velopment: Challenges Faced and Lessons Learned.
In Proceedings of the 13th Annual Conference on In-
formation Technology Education, SIGITE ’12, pages
239–244, Calgary, Alberta, Canada. ACM.
Beck, K. (2000). Extreme Programming Explained Em-
brace Change. Addison-Wesley, USA, 1st edition.
Corral, L. (2012). Using Software Quality Standards to As-
sure the Quality of the Mobile Software Product. In
Proc. of the 3rd Annual Conference on Systems, Pro-
gramming, and Applications: Software for Humanity
(SPLASH’12), pages 37–40, Tucson, AZ, USA. ACM.
Dalmasso, I., Datta, S., Bonnet, C., and Nikaein, N. (2013).
Survey, comparison and evaluation of cross platform
mobile application development tools. In Wireless
Communications and Mobile Computing Conference
(IWCMC), 2013 9th International, pages 323–328.
Flora, H. K. and Chande, S. V. (2013). A review and anal-
ysis on mobile application development processes us-
ing agile methodologies. International Journal of Re-
search in Computer Science, 3(4):9 – 18.
Huy, N. P. and vanThanh, D. (2012). Evaluation of Mobile
App Paradigms. In Proceedings of the 10th Interna-
tional Conference on Advances in Mobile Computing
and Multimedia, MoMM ’12, pages 25–30, Bali, In-
donesia. ACM.
Kaleel, S. B. and Harishankar, S. (2013). Applying
agile methodology in mobile software engineering:
Android application development and its challenges.
Technical report, Department of Computer Science,
Ryerson University.
Lewis, G. A., Nagappan, N., Gray, J., Rosenblum, D.,
Muccini, H., and Shihab, E. (2013). Report of the
2013 ICSE 1st International Workshop on Engineer-
ing Mobile-enabled Systems (MOBS 2013): 12. SIG-
SOFT Software Engineering Notes, 38(5):55–58.
Macias, F., Holcombe, M., and Gheorghe, M. (2003).
A Formal Experiment Comparing Extreme Program-
ming with Traditional Software Construction. In Pro-
ceedings of the Fourth Mexican International Confer-
ence on Computer Science, pages 73–80.
Moore, A. and Flannery, W. (2007). Use of Extreme Pro-
gramming Methodologies in IT Application Design
Processes: An Empirical Analysis. In Portland Inter-
national Center for Management of Engineering and
Technology - Management of Converging Technolo-
gies, pages 2468–2475, Portland, OR, USA.
Paasivaara, M., Durasiewicz, S., and Lassenius, C. (2008).
Distributed agile development: Using scrum in a
large project. In Global Software Engineering, 2008.
ICGSE 2008. IEEE International Conference on,
pages 87–95.
Reichlmayr, T. (2011). Working towards the student Scrum
- Developing Agile Android applications. ASEE An-
nual Conference and Exposition, Conference Pro-
ceedings.
Santos, A., Sales, A., Fernandes, P., and Nichols, M.
(2015). Combining Challenge-Based Learning and
Scrum Framework for Mobile Application Develop-
ment. In Proc. of the 2015 ACM Conference on Inno-
vation and Technology in Computer Science Educa-
tion (ITiCSE’15), pages 189–194, Vilnius, Lithuania.
Scharff, C. and Verma, R. (2010). Scrum to Support Mo-
bile Application Development Projects in a Just-in-
time Learning Context. Proceedings - International
Conference on Software Engineering, pages 25–31.
Smite, D., Moe, N. B., and Gerfalk, P. J. (2010). Agility
Across Time and Space: Implementing Agile Meth-
ods in Global Software Projects. Springer Publishing
Company, Incorporated, 1st edition.
Wasserman, A. I. (2010). Software Engineering Issues for
Mobile Application Development. In Proceedings of
the FSE/SDP Workshop on Future of Software Engi-
neering Research, FoSER ’10, pages 397–400, Santa
Fe, New Mexico, USA. ACM.
Xanthopoulos, S. and Xinogalos, S. (2013). A Comparative
Analysis of Cross-platform Development Approaches
for Mobile Applications. In Proceedings of the 6th
Balkan Conference in Informatics, BCI ’13, pages
213–220, Thessaloniki, Greece. ACM.
Zhang, Y. (2015). Development of Mobile Application for
Higher Education: An Introduction. In Zhang, Y. A.,
editor, Handbook of Mobile Teaching and Learning,
pages 1–4. Springer Berlin Heidelberg.
Investigating the Adoption of Agile Practices in Mobile Application Development
497