An investigation into the effectiveness of agile software development with a highly distributed workforce
The use of iterative and incremental software development techniques accelerated during the latter half of the 1990s . At the same time, new software development methodologies began to exploit these techniques, espouse flexible rules of project behavior, and focus on human interactions. By early 2001, the word agile was selected to describe software development methodologies adhering to these joint principles .^ Agile methodologies approach software development from a social perspective and advocates collaboration over strict processes. By removing the process boundaries erected by traditional software development methodologies and by maintaining the discipline needed to produce quality software, it strikes a balance between software development as an engineering discipline and software development as a creative endeavor. It advocates the collocation of individuals working on a software development team from the customer all the way to the programmer in order to remove the communication and social barriers that can cause projects to fail even if they are following a rigorous and well-defined process. ^ Agile software development has the potential to change the way we create software. Nevertheless, large organizations face several impediments that limit their ability to take advantage of the perceived benefits of agile: size, the prevalence and use of collaboration technology, and current outsourcing trends. Indeed, the recent corporate emphasis on outsourcing commodity development roles (such as general programming) to lower cost countries increases the likelihood that designers, programming staff, and the customer will not be collocated. This dispersion of personnel is a barrier to the adoption of agile software development by large organizations since they cannot easily accommodate the collocation requirement. ^ To date, there is no empirical evidence from an industry setting to challenge the paradigm that successful agile software development projects necessitate people working in the same location. This dissertation investigates the practice of agile software development in a highly distributed (non-collocated) environment to understand its efficacy. ^ Ascertaining which practices work well—with or without modification or accommodation—and those that do not work well provides necessary insight into whether an organization can overcome the collocation barrier while maintaining the real and perceived benefits of the practice. ^
James F Kile,
"An investigation into the effectiveness of agile software development with a highly distributed workforce"
(January 1, 2007).
ETD Collection for Pace University.