Does an Agile project cost more or less?
An Agile project should cost less. Some Agile practices will clearly add to the cost. Pair programming in Extreme Programming is an obvious example. Incremental delivery can also add to the cost, through changing existing code, additional testing, and supporting early releases. These costs should be more than offset by savings elsewhere. It is inherent in a ‘light-weight’ process that overheads are reduced, such as producing detailed up-front documentation, and its subsequent maintenance. Management overhead in particular should be significantly reduced. Any investment in quality, such as pair programming, regression testing, keeping the design consistently high (refactoring), continuous integration, and eliciting user feedback, should all provide returns in the later stages of the project. However, the major cost savings are derived by simply implementing less functionality. An analysis of any application which is specified up-front will identify a percentage of functionality which is