I’ll confess, one of the more surprising results of my recent research into Agile development in practice is the large number of motives to go Agile. From eliminating useless documentation to shortening development cycles to making the schedule more predictable, there were as many different reasons for Agile as people I interviewed.
Perhaps that’s part of the success story of Agile: partly by design, partly by historical accident, the Agile movement addressed many different needs. In this way, Agile is a lot like the Protestant Reformation. Remember junior high school history class, when we heard that Luther’s protest conveniently occurred just when secular princes were looking for ways to gain independence from Rome? The Agile movement arrived when more was happening in the technology industry than just the disgust of developers with schedules in which no one believed, or projects that didn’t deliver what the customer wanted.
Just as Protestantism broke up into different sects, Agile has split into different methodologies. However, what’s clear also from the research is that there’s no war between orthodoxies in development teams. While development teams in the same organization might choose different Agile techniques (or, in many cases, a mix of methodologies, not always limited to Agile), and may even get a little competitive, there haven’t been the counterproductive religious wars that marred earlier movements in our industry. Thank God for that.