I have often been asked “What are the advantages and disadvantages of Agile/Scrum?” so I thought it would be useful to summarize what I believe are the most important advantages and disadvantages.
Advantages of Agile/Scrum
1. Flexibility and Adaptivity
An Agile/Scrum approach is best-suited for a relatively uncertain environment. In that kind of environment:
- It is very difficult, if not impossible, to accurately define the requirements and design for the solution in detail prior to the start of the project
- Flexibility and adaptivity are essential to further define and elaborate the requirements and design of the solution as the project is in progress
2. Creativity and Innovation
In the highly competitive environment that we live in today, no one wants to buy average, run-of-the-mill products. People expect a higher level of excellence and that requires creativity and innovation. An Agile/Scrum approach emphasizes creativity and innovation to maximize the business value of the solution. An over-emphasis on planning and control tends to stifle creativity and innovation.
An Agile/Scrum approach typically results in faster time-to-market due to shorter startup times. An incremental development effort will also allow early delivery of at least a portion of the solution without the entire solution to be 100% complete
4. Lower Costs
An Agile/Scrum approach can lower the costs of a project in several ways:
- Significantly reduced overhead resulting from reducing unnecessary documentation and control requirements
- Higher productivity of the project team
- Reduced “feature bloat” from using an incremental development effort and prioritizing the requirements. Using that approach, it will become apparent when the project begins to reach a point of diminishing returns where the incremental value of the features no longer exceeds the incremental development cost
5. Improved Quality
In an Agile/Scrum project, quality is an integral part of the development process rather than a sequential activity. The developers know that quality is not “someone else’s responsibility”
6. Customer Satisfaction
An Agile/Scrum approach should result in higher customer satisfaction and more effective solutions because the customer is heavily involved in providing feedback and inputs throughout the development process
7. Employee Satisfaction
An Agile/Scrum approach should also result in higher employee satisfaction from all employees that are engaged in the effort because they are much more engaged to take responsibility for their own work as part of an empowered team
8. Organizational Synergy
An Agile/Scrum approach can improve organizational synergy by breaking down organizational barriers and developing a spirit of trust and partnership around organizational goals.
Disadvantages of Agile/Scrum
1. Training and Skill Required
An Agile/Scrum approach requires a considerable amount of training and skill to implement successfully. Many project teams don’t fully understand the need for training and skill or don’t want to put the effort into it. They attempt to do Agile/Scrum mechanically without fully understanding the principles behind it and that is typically not very effective
2. Organizational Transformation
An Agile/Scrum approach may also require some level of organizational transformation to make it successful. It require the business users to work collaboratively with the development team in a spirit of trust and partnership. That may require breaking down some organizational barriers that make that difficult or impossible to do
It can be difficult to scale an Agile/Scrum approach to large, complex projects. There are some models for doing that (Scrum-of-Scrums, LeSS, and SAFe are examples) but none of those are a cookbook solution that are easy to implement.
4. Integration with Project/Program Management
An Agile/Scrum approach may not be totally appropriate for projects that require a more plan-driven approach to achieve some level of predictability. However, there are many ways to create a hybrid approach that blends a traditional plan-driven approach and an Agile/Scrum approach in the right proportions to fit the situation
Agile is not a “silver bullet” and it is not a solution to every problem you might have. However, if Agile is applied intelligently in the right situations, it has huge advantages and the advantages can easily outweigh the disadvantages.
You will find much more detail on this in my Online Agile Project Management Training.