Welcome to Scribd. Sign in or start your free trial to enjoy unlimited e-books, audiobooks & documents.Find out more
Download
Standard view
Full view
of .
Look up keyword
Like this
2Activity
0 of .
Results for:
No results containing your search query
P. 1
THE CHALLENGES OF APPLYING DISTRIBUTED AGILE SOFTWARE DEVELOPMENT: A SYSTEMATIC REVIEW

THE CHALLENGES OF APPLYING DISTRIBUTED AGILE SOFTWARE DEVELOPMENT: A SYSTEMATIC REVIEW

Ratings: (0)|Views: 50|Likes:
Published by P Singh Ijaet
With the increasing use of distributed software development, there has been growing interest in the application of different methods of software development. The software development industry is investigating the use of Agile software development methods with the distributed development instead of the traditional heavyweight methods in order to improve the development efficiency and quality. However, research has shown that combining Agile and distributed development could pose significant challenges, regarding to the contradiction between Agile values and the distributed development environment. This systematic review intends to identify the challenges of applying this approach. The various challenges have been classified into five categories: lack of communication and collaboration, lack of management and control, cultural differences, time zones differences, and lack of Agile skills. The outcome of the paper has enabled the creation of a systematic map that shows the current stage of knowledge about this development approach. A major conclusion of this study is that there is a lack of empirical research and a dire need for further investigation in order to identify the expected challenges and benefits of this combinatory approach.
With the increasing use of distributed software development, there has been growing interest in the application of different methods of software development. The software development industry is investigating the use of Agile software development methods with the distributed development instead of the traditional heavyweight methods in order to improve the development efficiency and quality. However, research has shown that combining Agile and distributed development could pose significant challenges, regarding to the contradiction between Agile values and the distributed development environment. This systematic review intends to identify the challenges of applying this approach. The various challenges have been classified into five categories: lack of communication and collaboration, lack of management and control, cultural differences, time zones differences, and lack of Agile skills. The outcome of the paper has enabled the creation of a systematic map that shows the current stage of knowledge about this development approach. A major conclusion of this study is that there is a lack of empirical research and a dire need for further investigation in order to identify the expected challenges and benefits of this combinatory approach.

More info:

Categories:Types, Research
Published by: P Singh Ijaet on Jan 05, 2013
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

01/05/2013

pdf

text

original

 
International Journal of Advances in Engineering & Technology, Jan. 2013.©IJAET ISSN: 2231-196323 Vol. 5, Issue 2, pp. 23-36
T
HE
C
HALLENGES OF
A
PPLYING
D
ISTRIBUTED
A
GILE
S
OFTWARE
D
EVELOPMENT
:
 
A
 
S
YSTEMATIC
R
EVIEW
 
Abdullah Saad Alqahtani, John David Moore, David K Harrison, and Bruce M Wood
School of Engineering and Built Environment,Glasgow Caledonian University, Glasgow, United Kingdom
 A
 BSTRACT 
 
With the increasing use of distributed software development, there has been growing interest in the applicationof different methods of software development. The software development industry is investigating the use of  Agile software development methods with the distributed development instead of the traditional heavyweight methods in order to improve the development efficiency and quality. However, research has shown that combining Agile and distributed development could pose significant challenges, regarding to the contradictionbetween Agile values and the distributed development environment. This systematic review intends to identifythe challenges of applying this approach. The various challenges have been classified into five categories: lack of communication and collaboration, lack of management and control, cultural differences, time zonesdifferences, and lack of Agile skills. The outcome of the paper has enabled the creation of a systematic map that shows the current stage of knowledge about this development approach. A major conclusion of this study is that there is a lack of empirical research and a dire need for further investigation in order to identify the expected challenges and benefits of this combinatory approach.
 K 
 EYWORDS
:
 
 Distributed Agile, Global Agile, Global Software Engineering, Agile Software Development &Systematic Literature Review.
 
I.
 
I
NTRODUCTION
 
Increased globalization has led to greater competition between software developments companiesaround the world. The software development industry is seeing a shift from co-located softwaredevelopment to GSD, which involves multiple distributed development teams from different locations[1]. GSD facilitates competitive software development prices by using teams from countries that havean abundance of IT developers available at relatively low cost. Datamonitor estimates the value forthe global software market is increasing and is set to reach $299.1 billion in 2014 [
2
]. In addition,research has shown that software companies are interested in applying Agile Software Development(ASD) to develop the software by global teams to have the combined advantages of ASD and GSD[3], [4]. The combination of Agile development methods and GSD is known as Distributed Agile
Software Development (DASD). Venkatesh defined Distributed Agile Development as: “Distributed
Agile, as the name implies, is a model in which projects execute an Agile Methodology with teams
that are distributed across multiple geographies”
[5]. This combination has shown signs of providingIT companies with the ability to meet the critical success factors of the software industry, such asquality, time, and cost. Sutherland et al. [6] reported their experience of applying a distributed Scrumapproach and reported several advantages such as the high increase of team productivity, increase inthe transparency, better building of trust, and increased the project visibility [6].However, research has shown that software companies are encountering significant challenges byapplying this approach. Developers are not always able to apply the Agile practices successfully dueto the global development environment [7], [8]. The lack of communication and differences in cultureand time zones create significant challenges for Agile methods [[12]], [10].
 
International Journal of Advances in Engineering & Technology, Jan. 2013.©IJAET ISSN: 2231-196324 Vol. 5, Issue 2, pp. 23-36
There are several relevant systematic studies that have been published about Agile development. Forexample, Hossain et al. [7] conducted another systematic review regarding the use of the Agilemethod known as Scrum in GSD. This review highlighted the challenges of adopting the Scrummethod as well as the strategies to deal with these challenges. They conclude that there is a need tomodify Scrum practices in order to adopt it within the GSD setting. Their study also pointed to thegrowing interest and the lack of empirical research in this area. Moreover, Dybå and Dingsøyr [11]have published a systematic review regarding Agile software development in which they indentifyaround 26 pre-studies. Their review compared and contrasted various Agile development methods anddiscussed the benefits and limitations of Agile development. It ended with reporting the need toconduct more research such as action research to manage the partnership between industry andresearch community in this field. Another systematic review has been published by Jalali and Wohlin[12] for global software engineering and Agile practices. It indentified 81 papers published between(1999 and 2009). This study focused on Agile practices and the sufficient conditions required makingit work successfully with the GSD. The results reported that most of the studies within this area areexperience reports, and there is need for more empirical research and comprehensive framework toaddress DASD approach.Apart the above studies which look at specific aspects of the development and investigate particularAgile development method, there is no current and up to date systematic review that providescomprehensive background about DASD and investigates the use of the main Agile methods such asScrum, XP, and Lean within the GSD environment. Therefore, this paper will explore the currentknowledge of the DASD through analyzing and classifying the related studies in this field. The aim isto provide researchers and ASD communities with a detailed overview of what is already knownabout DASD. Finally, it will further investigate the main challenges of applying the DASD approachin order to provide a basis for the improvement to this kind of development.This rest of this paper is structured as follows: Section 2 summarizes the review methodology anddescribes the review process. Section 3 details the review results by providing answers to the reviewquestions. Finally, the conclusions of the review will be addressed within Section 4.
II.
 
R
EVIEW
M
ETHOD AND
C
ONDUCT
 
3.1.
Review Strategy “
R
eview protocol”
 
The present study has been developed in accordance with
Kitchenham
systematic review guideline[13]. The review protocol can be summarized as follows:I.
 
Identify the study scope and questions.II.
 
Identify the data sources and search strategy.III.
 
Collect the related papers by applying the selection process.IV.
 
Apply a quality assessment test.V.
 
Extract data from the selected papers.VI.
 
Analyze the contents of those papers.VII.
 
Answer the questions of the review.
3.2.
 Research questions and data extraction
This review aims to answer the following two research questions.
 RQ1: What is currently known about Distributed Agile Software Development?
This question was chosen to address the general aim of this literature review, which is to provide athorough statistical overview of what is known about the DASD approach. During the reviewinformation was extracted from a range of papers including details on the Agile methodologiesemployed, data sources, year of publication, and some classifications based on the contents of theselected studies. In addition, the so-called HOT perspectives were used to classify the selected paper(HOT stands for Human, Organizational, and Technical perspectives [14]). This technique has beenused to show that Agile approach is not just about management and technical perspective, but also thehuman and organizational perspectives. Hazza and Dunbinsky [14] explain how the Agile manifestoand practices cover these three perspectives and also allude to how these perspectives are vital for the
 
International Journal of Advances in Engineering & Technology, Jan. 2013.©IJAET ISSN: 2231-196325 Vol. 5, Issue 2, pp. 23-36
success of software engineering. Table 1 shows the characteristics of each aspect of the HOTperspectives.
Table1.
The HOT perspectives.
Human perspective Organizational perspective Technical perspective
 — 
 
Social aspects
 — 
 
Collaboration andcommunication betweencustomers anddevelopment team
 — 
 
Knowledge sharing
 — 
 
Management andorganization culture aspects
 — 
 
Software projectmanagement
 — 
 
Control
 — 
 
Designing
 — 
 
Testing
 — 
 
Coding
 — 
 
Delivering
 — 
 
Maintenance
 RQ2: What are the main challenges of Distributed Agile Software Development?
This question has been chosen to address the main objective for this review, which is to highlight thechallenges and obstacles of applying the DASD approach. To answer this question the reportedchallenges of distributed Agile were collected, analyzed, and listed within the results section.
3.3. Data Sources and keywords
The review used five available digital libraries containing peer-reviewed work. These librariesrepresent the most relevant well-known journals in software engineering and provide a diverseselection of data sources:I.
 
IEEE Xplore.II.
 
Science Direct, Elsevier.III.
 
Wiley InterScience “Information Systems Journal”.
 IV.
 
SpringerLink.V.
 
ACM Digital library.When searching the data sources
the written language was assigned to “English”, and the publication
data was set from 2005 to May-2012. In the search, the following keywords were employed:
Table 2.
Search keywords
Research words categoryCategory Keywords
Agile Software Development(ASD)Agile; Global Agile; Distributed Agile; Agile software development;Agile development methods; Agile practices; Scrum; Extremeprogramming XP; Feature driven development; Lean developmentGlobal Software Development(GSD)Global software development; Dispersed software development;Distributed software development; Distributed team; Distributeddevelopment; Outsourcing software development; Off shoring softwaredevelopment; Global software engineering; Virtual team
3.4. Selection process
During the selection process, studies were selected using four key stages. Table 3 below shows theselection process as well as the number of studies identified at each stage.
Table 3.
The primary papers selection process
Selection stage Number of papers
First stage: Searching for the related papers using the search words andsearch terms, and select related papers based on their titles.707Second stage: Reading the abstracts of the selected papers from theprevious stage, to decide whether or not these papers are related.231Third stage: Reading the contents of the selected papers, and selecting themain related papers.112Final stage: Applying a quality assessment to identify the final set of themain related papers.76Update stage: Updating the search result by May 2012. 81

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->