It depends on how you look at it. If you're looking at it from an Agile consultant perspective, then it's the best thing since sliced bread. If you're looking at it from a Waterfallist perspective, then it's not only snake oil, it's the biggest scam in the history of management.
The truth is probably somewhere in between. It's not a bad thing and it's not a great thing either. The success rate of Agile projects is not higher than the success rate of projects (in the same industry) managed by different methodologies (particularly waterfall that is claimed to be an outdated and inadequate methodology by Agilists).
Let's look at some Agile facts:
- Agile can only work for small teams: Of course, any Agilist will claim this is not true, and claim that it's possible for Agile to work on larger projects, but the large project has to be split into smaller projects. (Imagine the extra overhead you create by doing this - you will then have a portfolio of projects that needs to be managed by a dedicated project manager).
- Agile is obsolete outside the software industry: Agile only makes sense when it's applied in software development projects because of the fluid requirements.
- Agile expects too much from the team members: The problem with Agile is that it throws the PM responsibility on team members.
- Agile was created by consultants who are now benefiting greatly from it: Agile was created by some consultants who met on one day (and somebody apparently drew a picture of them meeting) and they came up with 12 sentences, wrote them on a piece of paper, and called it the Agile manifesto. Of course, each consultant explained each sentence the way he wanted, and that's why there is no clear definition of Agile. When you express to any Agilist your concern on how vague Agile is, his immediate response is "That's the beauty of it and that's why Agile is so flexible."
- Project success rate wasn't improved with Agile, and some claim that projects never get finished when Agile is applied (that's why most projects managed by Agile are internal). The best software products in the world were produced using waterfall.
- Agile is just a set of best practices and common sense: Let's examine one of the sentences in the Agile manifesto: "Our highest priority is to satisfy the customer through early and continuous delivery of valuable software." Huh? I'm sure project managers before Agile didn't care about the customer and the customer wasn't their highest priority.
- More and more conflicting nonsense is written about Agile everyday: That's because those who "invented it" did not bother to come up with something like the PMBOK, and left it to those adopting Agile to guess how it works and how it should work. If you don't believe this, search for "Agile estimation" on Google and see how many different/conflicting ways Agile estimation is done.
Now, what is the definition of snake oil? It's conning people into buying something that they don't need, by making this something look like it's everything they need. Now, let me ask you, what do you think of Agile now? Is it snake oil? Or is it not?