Fail fast, learn faster with Agile methodology
Last updated: December 16, 2024 Read in fullscreen view
- 02 Nov 2021 What is Terms of Reference (ToR)?
- 18 Oct 2021 Key Elements to Ramping Up a Large Team
- 27 Oct 2020 8 principles of Agile Testing
- 03 Apr 2022 Microsoft Solutions Framework (MSF)
- 16 Jun 2022 Rapid Application Development (RAD): Pros and Cons
Failing fast and failing forward is a pretty established concept and is a 'cute' way of saying “Learn by Doing.” Understand there will be failures, and keep moving forward—no wasting time. Your laser focus on getting the idea/business/product for your business right is of primary importance.
Failing fast is the most important driving principle behind the Agile school of thought that was introduced into the software development space by the launch of the Manifesto for Software Development along with its 12 guiding principles back in 2001. Many Agile software development practices such as test-driven development and continuous integration are firmly rooted in the concept of fail fast.
Unfortunately, the fail fast approach has repeatedly been bashed and ridiculed by business publications because the concept is often uprooted from its original context of software development, away from the related ideas of Agile, Lean and DevOps. Also, most don’t like to entertain the idea of failing.
The truth is that in any business, failure can be a good thing to go through as long as you learn the lesson it has to offer. It is a strategy that can help any company grow faster and more successful. This is because in development or the creation of anything new, failure is inevitable, so the focus is on how to manage that failure and make the most of it.
The fail fast approach is anchored in the word “fast”; it’s about reducing the delay in detecting failures. In software development and many other business practices, it’s crucial to make sure that if a failure is going to occur one can reduce the lag in detecting any issues and then alert the responsible party.
Fail Fast Approach in System Design
In systems design, a fail-fast system is one which immediately reports at its interface any condition that is likely to indicate a failure. Fail-fast systems are usually designed to stop normal operation rather than attempt to continue a possibly flawed process.
Fail-fast-designed code decreases the internal software entropy, and reduces debugging effort.
Pros of The Fail Fast Approach
Lower Cost of Failure
The cost of fixing a project/product with defects rises exponentially the longer they remain undetected. Worst case scenario, the bug doesn’t get discovered until the completed project is in the customer’s hands. This can be a blow to the company’s reputation and/or force a mass product recall. All of which come at a cost.
Faster Learning
If it is possible to learn from a certain failure then the sooner the failure occurs, the sooner the learning can start. Failing fast enables you to get quick, quality feedback about what works and what does not, which you can then utilize to adjust your project/development plans accordingly.
Creates an Innovative Company Culture
Fail fast enables a company to build a culture that celebrates intelligent failure. Managers looking to foster innovation and creativity can use this method to create an environment that encourages employees to take smart and strategic risks and doesn’t punish any failure that may come with those risks.
Cons of Failing Fast
Doesn’t Work When Launching A Proven Concept
Fail fast makes sense when you are launching a new concept or new idea but for a business that has a proven concept it is redundant. In this case, it makes more sense to simply take the time to learn from the mistakes of others who have previously done the work rather than using the trial and error method of Agile.
Can Encourage Mediocrity
The fail-fast approach can easily breed nonchalance about failure if it is not well managed. When a failed idea carries no consequences, the motivation to produce high-quality prototypes and run super-accurate experiments can drop. This can reduce the team’s chances of finding the success it set out for.
Everyone Has to Be on The Same Page
Agile and failing fast are relatively new and yet the entire team must be on the same page with how failing will affect everyone for these concepts to work. If some employees are still stuck in old methods and outdated mentalities, it can demotivate and hinder the whole team’s creativity and innovation.
Is the fail fast approach right for your company?
As explained above, failing fast in business has great potential for success when applied in the right way, but can also be unsuccessful when not managed appropriately. The key is being able to discern under which conditions one should to tap into this concept’s tight feedback loops.