Agile XL in Globally Distributed Environments

Abstract

Agile is a software development approach based on a set of 4 values and 12 principles. Using this set Scrum was developed as a agile framework in the early 1990s, which still remains the most popular framework today. However, Scrum originated to be used by a small number of co-located teams. When the amount of teams and the distance between the teams becomes bigger, issues will start to arise. With the rise of the computer and internet, programming-related work environments have become very large and globally distributed, implying a friction when using agile in these environments. This study aims to explore what challenges occur when using agile in very-large globally distributed environments and explore for practices that can be used to deal with them. To do this, a variety of research methods is used to gain insight, those being a systematic literature review (SLR), interviews and online surveys. We identify 50 challenges that may be encountered and 72 practices that can be used to combat them. Our online survey verified that all found challenges are frequently encountered in practice and the majority have a significant impact when encountered. However we also identified multiple practices that are used often to combat certain high-impact challenges. The most important practices were identified to be training and coaching. Experts were invited to fill in an online survey to generate possible learning goals. These learning goals are used to create an education program prototype for very-large scale globally distributed agile software engineering. As examples, 4 use cases in different environments are provided to show the prototype can be used to construct a matching training program. We provide proposals for further research directions into challenges, practices and the education program based on the steps taken in this study.Computer Scienc

    Similar works

    Full text

    thumbnail-image

    Available Versions