Wednesday, September 17, 2008

In geometry we have the pathogen theorem: if you know the length of any two sides of a triangle, then the third is fixed. I think this makes a great metaphor for the primary advantage of using Agile:

Software projects have three variables as well: resources, time and features. If you know two, you can no longer negotiate the third. Resources are almost always fixed, which leaves two variables. Agile forces you to choose a fixed timeline and encourages you to let the features reveal themselves. Waterfall assumes resources and features are fixed, and leaves the deadline for you to discover as the project marches on.