Thursday, March 12, 2009

Sprint is not a mini-waterfall?

Agile iterations are often said as NOT a mini-waterfall? An analogy I head is a "run sprint is like put waterfall activities into blender". So all activities are going in parallel, not sequencial.

I agree with point that person who owns the task should not strictly and sequensially follow analys-design-code-test activities. It is up to him how to develop increment. BUT it is always good idea to plan up-from (i.e. analys) and think about how I am going to implement something (design activity) before actually doing something (coding activity). Finnaly you check that solution you implemented works (test activity). This is just how it works, othervise solution will be poor, errorprone, not maintainable, require rework etc.
For highly professional developers implementation path doesn't seem sequension because one have intuition and very good predicion for many issues. It seams that he/she is doing all activities in parallel, but I believe this is just illusion caused by professional master skills.

Common known fact that waterfall is the most optimal development model when we know exactly what we what to create. For single iteration/sprint we have this situation. Development team commited into "scope" for this particular iteration. Requirements inside this scope are frozen. So why not do mini-waterfall to archive commitment into most optimal manner?

Again thinking about Agile ws Waterfall I have a filling that "waterfall" model is commonly missinterpreted by software practioners. Waterfall like it was described by Dr. Winston W. Royce originally is not a sequentional process, it has feedback loops.

No comments: