When looking at the 4th annual survey on the state of agile development conducted by VersionOne [Ver09] two trends within the world of software development can be identified:
- Agile Development Practices: 84% of the surveys participants work in companies which are using agile practices for software development.
- Distributed Development Teams: 58% of the surveys participants work in companies which have distributed teams.
However, by definition agile software development requires a close physical proximity of all participants ranging from the developers up to the customer. For example face-to-face communication is an important key aspects of agile software development [SW07] and it is obvious that this practice will not be feasible within distributed teams. How can these two fundamentally different software development paradigms be combined? What new challenges will the involved parties face? What drawbacks will arise with regard to the agility of the development when the agile principles are applied to distributed teams? This series of blog posts tries to provide answers to these questions by evaluating the experiences which where gathered within different agile distributed software projects.
The first part of this series will focus on the motivation and the new challenges which have to be faced when developing software in an agile and decentralized manner. Continue reading →