The reason I use Agile techniques on IT projects is because they allow me to better manage the risk on the project.
Initially I became interested in Agile because it was an interesting new way to do software development. My opinion of Agile was changed by Kevin Tate’s presentation at the first Agile Development Conference in Salt Lake City. Kevin drew a graph of the risk profile of an Agile project and a traditional project from the business investor’s perspective.
A traditional project would move through the stages of analysis, design, development, testing and finally it would be released into production. The project manager would keep interested parties informed of status. It would be 80% complete in analysis, or 20% through testing. The reality is that the only time you can know the exact status of the project is when the software is being used in production. As such, the risk on the project increases for the investor until they get a production release that they can use. An Agile project delivers increments into production on a more regular basis. As such, an Agile project is less risky to the investor than a traditional project.
An Agile project allows the business investor to see the exact status of a project. Analysis being 80% complete is meaningless as the analysis could miss key functions that the business need.
Simply by delivering to production more frequently, you are reducing risk to the business investor.