Systematic literature review on agile practices in global software development

https://doi.org/10.1016/j.infsof.2017.12.004Get rights and content

Abstract

Context

Developing software in distributed development environments exhibits coordination, control and communication challenges. Agile practices, which demand frequent communication and self-organization between remote sites, are increasingly found in global software development (GSD) to mitigate said challenges.

Objective

We aim to provide detailed insight into what is reported on the successful application of agile practices in GSD from 1999 to 2016 and also identify the most frequently applied agile practices and reported distribution scenarios. We further strive to uncover research opportunities and gaps in the field of agile GSD.

Method

We build our systematic literature review on top of a previous review, which investigated studies published between 1999 and 2009, and extend the review by years 2010–2016, for which we conduct both a quantitative and a qualitative analysis.

Results

Our results show that the majority of the cases studied is global and involves complex distribution scenarios with Scrum or combined Scrum/Extreme Programming being the most used agile methods. Key results include that in contrast to 1999–2009, where four Extreme Programming practices were among the ten most frequently used agile practices, in 2010–2016 Scrum is in the center of agile GSD implementations with eight Scrum-based practices in the top ten agile practices used in GSD.

Conclusion

Agile GSD is a maturing research field with higher quality contributions and a greater variety of publication types and methods from 2010 to 2016 than before from 1999 to 2009. However, researchers need to report full empirical contextual details of their studied cases in order to improve the generalizability of results and allow the future creation of stronger frameworks to drive the implementation of agile practices in GSD.

Introduction

Global software development (GSD) promises cost savings, access to large multi-skilled workforces, a reduced time to market [16] and the possibility to follow critical-path tasks around the clock [11]. These deciding factors, among others, have made GSD a daily reality in today's IT organizations although development environments are more complex and exhibit several challenges such as: physical distances and time zones, loss of “teamness”, culture differences [5], strategic issues, process differences, knowledge management and technical challenges [22].

Agile methods are built around empowered and self-organizing teams with a strong focus on collaboration and communication supported by various agile practices including pairing, customer collaboration, stand-ups, reviews, retrospectives and the planning game [24]. Agile practices are regarded as being able to mitigate the challenges faced in GSD by several authors such as e.g. Ramesh et al. [19], Paasivaara et al. [17] and Hossain et al. [12]. However, neither the leading agile method Scrum [21] nor Extreme Programming (XP) [6] was designed for teams working in distributed environments. Hence adaptations to the original process are necessary [4]. The goal of these adaptations is to transfer agile values, which produced excellent results in the last decade for collocated teams [8], to GSD environments. Combining agile practices with GSD has not only been an active research stream (S112) but is also extensively practiced in industry as the usage of distributed agile teams has more than doubled from 35% in 2012 [28] to 86% in 2016 [29].

The objective of this study is to provide a systematic literature review (SLR) on the successful usage of agile practices in GSD. We define agile according to ([7], p. 340) as a “method to rapidly or inherently create change, proactively or reactively embrace change, and learn from change while, contributing to perceived customer value”. A practice within the scope of this study is understood as “the customary, habitual, or expected procedure or way of doing of something”,1 and we regard an agile practice as a central component (such as e.g. the daily standup or pair programming) which originates from an agile method (such as e.g. Scrum, Extreme Programming, FDD or Kanban), either used in its original or an adapted form. Furthermore, in accordance with (S62), we understand global software development as the “development of a software artifact across more than one location” ([25], p. 122), which includes all scenarios of geographical distribution, not only global ones.

Our main contribution is to provide a comprehensive understanding and analysis of the successful usage of agile practices in GSD. To that end, we continue the analysis carried out by Jalali and Wohlin (S62; S63) covering years 1999–2009 with an extension for the years of 2010–2016. We strive to both expand on their results for an updated state of the art as well as offer a comparison between the two periods of investigation (1999–2009 by Jalali and Wohlin, 2010–2016 added in this study). We provide an overview of successful empirical cases, identify which agile practices are used and which cases are typically reported (concerning their empirical context such as e.g. project duration, project size or application domain but also their distribution scenarios such as shoring and sourcing strategies). Further important contributions of our study are that practitioners can use our findings to identify which agile practices are commonly used to successfully drive their own implementation of agile GSD while researchers can gain an aggregation of past results to build upon and focus future research on the research gaps identified and avoid repetitions.

The rest of the paper is organized as follows. Section 2 discusses the research significance, motivation and objectives of this study in light of related work. The detailed study design and procedure is explained in Section 3. Section 4 presents the results of the systematic review, both in continuation of, covering 1999–2016, and in comparison to, covering 1999–2009 vs. 2010–2016, previous research by Jalali and Wohlin (S62; S63). Section 5 presents the discussion including future research opportunities and limitations of this review study. Section 6 concludes the report. Some studies referenced in the first few sections of this report, such as e.g. (S62; S63), are part of our review's set of included studies, which is why they are referenced by their included study ID (S62; S63) rather than as a general reference, for consistency and to avoid the listing of duplicate references.

Section snippets

Research motivation and objectives

Global software development is an active research field as several systematic reviews account for [15], [20], [27] and all seem to agree that there is a need for more primary studies in GSD research. Most relevant to our line of research are systematic mapping (SM) and systematic literature review (SLR) studies focusing on the application of agile practices in GSD.

Jiménez et al. [13] conducted an SLR on challenges and improvements in distributed software development. Although Jiménez et al. [13]

Research design

Jalali and Wohlin conducted a systematic mapping (S62) and a systematic review (S63) for the years 1999–2009. We expand on their work in order to continue their analysis and provide up-to-date maps and results. Since the systematic review of (S63) also contains the mappings of (S62), we decided to focus on the revised study (S63), with the exception of our Table 3, which has only been published in (S62), but is also part of our analysis.

In order to be able to continue the work of Jalali and

Results

Our SLR search resulted in 145 included studies (cf. Appendix B) for the period of 01/2010–12/2016 to be used for quantitative (Section 4.1) and qualitative analysis (Section 4.2).

Discussion

This section provides concise conclusions based on the presented analysis.

#1: The most successful distribution scenario in agile GSD is “Offshore-Scrum”.

We have found a great variety of distribution scenarios in years 2010–2016 and were able to provide deeper insight compared to (S63), where authors often just reported to use “agile” and “distributed teams” without further explanation. In 1999–2009 “XP-Distributed team” was the most popular scenario with 9 cases, but in 2010–2016 we uncovered a

Conclusion

We built our systematic review on top of a study conducted by Jalali and Wohlin (S63) and reviewed the usage of agile practices in GSD from 1999 to 2016, analyzing both the 1999–2016 period as a whole (RQ1a, RQ2a) as well as comparing Jalali and Wohlin's (S63) studied period of 1999–2009 against our newly studied period of 2010–2016 (RQ1b, RQ2b).

The research contribution of this study lies in reporting the state of the art of agile practices in GSD for 1999–2016, where we almost exclusively

Acknowledgments

This research was partially funded by the Austrian Marshall Plan Foundation by providing a scholarship to the first author during his research visit at the Center for Design Research at Stanford University. This research is also partially funded by the agreement between PUCRS and ThoughtWorks. The third author also thanks CNPq.

References (31)

  • Y.I. Alzoubi et al.

    Empirical studies of geographically distributed agile development communication challenges: a systematic review

    Inf. Manage.

    (2016)
  • A. Abran et al.

    Guide to the Software Engineering Body of Knowledge (SWEBOK®)

    IEEE Comput. Soc. 2004 Guide

    (2004)
  • A. Alsahli et al.

    Agile development overcomes GSD challenges: a systematic literature review

    Int. J. Comput. Sci. Softw. Eng.

    (2017, January)
  • D. Batra

    Modified agile practices for outsourced software projects

    Commun. ACM

    (2009)
  • R.D. Battin et al.

    Leveraging resources in global software development

    IEEE Softw.

    (2001)
  • K. Beck

    Extreme Programming Explained: Embrace Change

    (2000)
  • K. Conboy

    Agility from first principles: reconstructing the concept of agility in information systems development

    Inf. Syst. Res.

    (2009)
  • T. Dingsøyr et al.

    A Decade of Agile Methodologies: Towards Explaining Agile Software Development

    (2012)
  • J. Eckstein

    Agile Software Development With Distributed Teams: Staying Agile in a Global World

    (2013)
  • G.K. Hanssen et al.

    Signs of agile trends in global software engineering research: a tertiary study

  • J.D. Herbsleb et al.

    Global software development

    Softw. IEEE

    (2001)
  • E. Hossain et al.

    Using scrum in global software development: a systematic literature review

  • M. Jiménez et al.

    Challenges and improvements in distributed software development: a systematic review

    Adv. Softw. Eng.

    (2009)
  • B. Kitchenham et al.

    Guidelines for Performing Systematic Literature Reviews in Software Engineering

    (2007)
  • A.B. Marques et al.

    Systematic literature reviews in distributed software development: a tertiary study

  • Cited by (99)

    • Motivators Influencing the Efficiency and Commitment of Employees of Agile Teams

      2022, Journal of Open Innovation: Technology, Market, and Complexity
    • A mapping study on documentation in Continuous Software Development

      2022, Information and Software Technology
      Citation Excerpt :

      [1], [2], [3], [4], [5], [6], [7], [10], [15], [18], [19], [20], [22], [26], [27], [29], [30], [33], [34], [36], [37], [40], [42], [44], [45], [47], [50], [51], [52], [53], [54], [60], [61], [62], [63], [64], [65], [66], [69], [70], [71], [76], [80], [86], [91], [92], [93], [94], [97], [100], [102], [105], [106], [108], [117], [119], [122], [123], [124], [129], [130], [131], [133], [134], [135], [136], [140], [142], [143], [144], [146], [147], [148], [151], [154], [157], [158], [162], [163], [168], [170], [171], [174], [176], [180], [183], [185], [186], [189], [190], [191], [201], [202], [203], [204], [208], [209], [210], [211], [215], [216], [219], [222], [223], [229], [230], [231], [233], [234], [236], [238], [239], [241], [244], [247], [249], [252], [253], [256], [257], [259], [262], [264], [266], [270], [278], [281], [285], [286], [287], [288], [289], [293], [294], [295], [297], [298], [299], [300], [301], [302], [303], [307], [308], [310], [311], [314], [315], [321], [326], [327], [329], [331], [333], [335], [336], [338], [342], [343], [345], [347], [348], [351], [353], [354], [357], [358], [360], [362], [363], [365], [366], [367], [368], [369], [370], [374], [378], [380], [383], [386], [391], [392], [393], [397], [399], [401], [403], [412], [426], [428], [429], [430], [431], [432], [433], [434], [435], [437], [438], [440], [441], [S11], [S14], [S16], [S25], [S31], [S32], [S35], [S74], [S77], [S79], [S82], [S83], [S84], [S87], [S88], [S103], [S110], [S111], [S113], [S118], [S120], [S121], [S127], [S128], [S137], [S138], [S145], [S153], [S155], [S160], [S161], [S165], [S172], [S173], [S179], [S192], [S195], [S196], [S207], [S212], [S213], [S227], [S240], [S242], [S243], [S248], [S258], [S263], [S267], [S271], [S272], [S273], [S275], [S276], [S282], [S291], [S296], [S304], [S318], [S323], [S324], [S337], [S339], [S341], [S344], [S350], [S352], [S356], [S371], [S381], [S382], [S385], [S390], [S395], [S396], [S398], [S405], [S408], [S409], [S415], [S416], [S417], [S418], [S420], [S421], [S425], [S439]

    • Distributed Scrum: A Case Meta-analysis

      2023, ACM Computing Surveys
    View all citing articles on Scopus
    View full text