Google uses it. Microsoft uses it. It’s considered the best methodology for web 2.0 tools like Twitter and Facebook. You guessed it; we’re talking about the agile methodology (aka agile mantra, agile development lifecycle etc.). Industry veterans say that it’s the best suited methodology for running ‘fast and efficient’ projects. Is it true? Or is it more hype than reality? Does it break the rules of conventional software development? Does it compromise on quality for speed? Is it just another project management fad? Many people wonder who really benefits from agile and how. In this article, I walk you through the two most important aspects of Agile – the beneficiaries of Agile and how Agile benefits them.
Who Benefits from Agile?
Each development methodology suffers from one limitation or the other. On one hand, there are methodologies like Pair Programming which makes life simpler for developers but on the other hand, it makes it difficult to justify the cost from a managerial perspective. On the other hand, there are other methodologies like the conventional Spiral model which are customer friendly but rather unforgiving for development and QA teams.
The best thing about Agile is that it preserves the interests of all stakeholders in a project, be it the client, project manager, development team or testing team. Agile promotes transparency and visibility, both of which are crucial aspects for the success of any project.
- Customers benefit from Agile as it ensures high customer satisfaction courtesy frequent releases.
- Managers benefit from Agile as it makes life easier for them. No overheads, minimal documentation, no useless meetings and clear & crisp communication with all stakeholders.
- Development team benefits from Agile as it shortens the learning curve and development time for iterations.
- Testing team benefits from Agile as they get ‘Early Access’ to the software to test.
- All stakeholders have a better visibility of the project and ‘right expectations’ from each other.
How they Benefit from Agile?
Agile is proven to work well for all sizes of organizations, be it few employees to large technology giants employing a workforce of more than 100,000 people. So, how do individuals and organizations benefit from Agile?
1. Faster ROI
The trick to achieving faster ROI is simple. Build a functional product across iterations, get it out to market early with limited features, continue adding features and then launch the fully functional version. Agile is the perfect methodology to gain the ‘first mover’ advantage.
- Development starts early
- A functional ‘ready to market’ product after few iterations
- First Mover Advantage
2. Lower Risk
Agile ranks very highly on risk mitigation scale. Since iterations are short, the market risk is reduced. A beta version released early in an agile project is a great way to tap the potential market for a product. Feedback from prospect customers can help evolve the product and lowers risk of the product failing to match client expectations. Agile even recommends early cancellations for projects which have high chances of failure.
- Client gets early access to product during the life cycle
- Greater flexibility for accommodating Change Requests
- Early Cancellations hurt less
3. Lower Defect Density
Since the testing is frequent and starts early in the project, most bugs are caught during the test iterations. Agile’s ‘test driven development’ approach ensures a high quality product with minimal bugs. There’s no better way to measure a project’s progress than having a working version at the end of all iterations.
- Showstopper/ Critical bugs are caught early in the project
- Stories are considered incomplete till they have critical zero defects
- Test Automation nets higher productivity for testing team
4. More Transparency & Better Visibility
Agile manta promotes greater transparency amongst stakeholders in the interest of the project. Each stakeholder has a better visibility even when the product is shaping up. Agile preserves mutual interests of the stakeholders from a project perspective rather than catering to individual interests.
- Agile imparts better visibility and a greater sense of ownership to all stakeholders
- Encourages Close coordination and build mutual trust amongst stakeholders
- Brings all stakeholders on the ‘same page’ in terms of project progress and expectations
5. No Frills Approach
The best part about Agile is that it’s a completely ‘No Frills’ approach to software development. There are no useless daily meetings, no irrelevant documentation and fewer paper artifacts. Agile teams self organize themselves so that information is timely communicated to all stakeholders.
- Higher Productivity for all stakeholders
- Face to Face Communication works much better than lengthy documents
- If it doesn’t add any value, don’t do it!
Comparison with Other Methodologies
Critics love to point out how Agile is an ‘undisciplined’ methodology as compared to conventional methods like Waterfall Model. However, the truth is that Agile is a highly disciplined approach sans the overheads of conventional methodologies.
Agile often draws comparisons with the Waterfall model, which works in a highly structured ‘stage wise’ manner. Waterfall model is a nightmare from a project maintenance perspective if the requirements are ambiguous or misinterpreted and require changes during the course of the project. In comparison, Agile is far more accommodating to Change Requests at any time during the project.
Agile is often confused with another lesser known methodology called ‘Cowboy Coding’. As the name suggests, Cowboy Coding promotes a ‘Do it your way’ approach for all stakeholders in a project. There’ no accountability and little control over the project. In contrast, Agile promotes a sense of accountability in all stakeholders and ensures that the project is closely monitored and controlled through out the lifecycle.
Like other mantras, Agile has its fair share of fan following as well as critics. Managing geographically diverse cross cultural teams is considered one of the biggest challenges for agile methodology. Many old school managers criticize Agile for doing away with too much to provide little value.
Project Management does not follow the ‘one size fits all’ rule so it would be inappropriate to believe that agile methodology is the perfect solution for all projects. The key is to understand the real benefits of Agile and how it can benefit you and your organization.