Today, as I was in a training, I was asked a question, What does failure in Agile mean? How do measure a failure in Agile? It was deep rooted question for me and made me to think that what is a failure, Never consider this element in context of Agile, where as in traditional projects that we execute, if the project does not meet the requirements of OTOBOS (On Time, On Budget and On Scope), we believe and tend to label the project as a failure. Why is the same concept not applied to Agile.
Why do we keep on highlighting that to implement Agile and its related frameworks like Scrum or XP, it would take any team about 3-4 good iterations (or should I say Sprints in the lingo of Scrum), why are we ready to provide this kind of get away to Agile implemented projects and not to the traditional approaches
The basic fundamental of Agile is to Inspect and Adapt at regular intervals (which could mean even daily), which means we are entitled to make mistakes, learn from them and re-implement the same in a new incarnation and so we say, we learn from our mistakes.
What happens when the same issue or the mistake is repeated again, does this mean we have not learned our lessons, we have not performed the concept of Inspect and Adapt adequately?
So does Agile embraces the idea of failure. Are we saying that failures are “good” and that we should not worry about our results, time, cost, effort, resources and other related elements.
Well it may not be the case, as Agile implementation mindset, however, looks and understands failure differently. In Agile individuals are not are not failures, but our experiments might not give the results we desired or expected.
As Agilists we love to talk about our successes but its much harder to talk about failure. We do have a lot if information available on how agile was successful and how and how much ROI was generated, But one has never questioned, the data regarding the failures of the agile processes
I have also observed in last few assignments of mine, that the Top Management of the organization is still working the old traditional approaches, where as they expect the team to do Agile?
Failure should be considered as a part of our learning process, but in the current world that we live, we do not have room for making failures, the world is moving faster than one could imagine and the fear of getting left behind or missing the bus, does not allow us to look at failures in a positive environment. The patience of management is running low and reducing on a daily basis (the account balance of the patience is getting depleted on a regular basis)
In the Agile world we regard failure differently. The Mantra to be used in Agile should be:
- Fail Often, Fail Early
- Use failure as a Feedback loop
- Use Failure as an expansion of your knowledge (something that we did not know is now known)
- Failure is inevitable and should be considered as a part of our learning process
Does this mean, we have got the license to make mistakes, well not really, it is OK to have failures, as it allows you to learn from it, having 365 new failures each year, allows you to improve 365 times, but repeating the same mistake again, should be consider as a CRIME , even in the Agile world
With tons of dollars in sunk cost every day, and a high rate of project failure, shouldn’t we be formally logging and analyzing failures?” , At times documentation is performed, but the in reality the documentation is more for academic reasons, rather than learning reasons …
Finally, I would like to remind, a note that I was reading at some location:
“When you goof up and make huge mistakes and suddenly you start to smile, it indicates that you have already thought of someone whom you can blame it on”