But you are 100% right about the problem being people. The problems I see with agile are always because people try to find escape hatches in the process. Designers want to prepare every single detail before developers start working and hate iterating because fear of the "original vision" being a mistake, product owners don't want partial stuff in the beta channel so everything has to be in its final state, product owners don't know or don't want to reduce scope so developers end up with impossible sprints, developers want a perfect definition finished before starting work, so zero chance to iterate...
I also agree with people throwing out individual/interactions and picking a heavy-handed process instead :(
That's a very optimistic statistic, unless "fail" is defined to be something other than "the opposite of success".
IOW, a fail is any project that goes over time, over budget or delivers under scope.
If you're defining success as "well, we delivered eventually, and we delivered 80% of the requirements, and it only went over budget by 20%", then, sure, only 30% of IT projects "fail".
Most clients know exactly what their goal is ("To increase market recognition", "to increase conversion rate", etc). The scope creep can only happen in a requirements phase[1]. Once a client has signed off on exactly what will be delivered, and what the payments milestones are there's no wiggle room for the agency to continue experimenting.
If you're skipping the requirements phase because "agile"[1], then the work will be over budget, over time and under the scope.
There's very few projects that actually require the exploratory-driven process that agile uses. If you have one of those projects then farming the management of it out to an agency is exactly the wrong thing to do.
[1] There may be multiple requirements phases. For example a large "need to revamp our website" project can be split into multiple serial projects, each with their own requirements phase.
[2] I.e. We'll figure out what is acceptable to the client with constant feedback.
It's a very abstract term. To put in simpler terms you will always have some outcome mismatch and generally your goal should be to reduce it. But if you do not have outcome mismatch, then you should push the line so that you can look ahead and understand future areas for improvement. Or you can just stay content if "market" is not chasing you.
Not only should we be asking if a project has achieved its original goals once it’s finished, we should be continually assessing progress against those goals throughout the life of the project - yet few projects I’ve worked on actually do this, even when I’ve explicitly requested it.
The thing is that as far as I can tell, “success” is measured post-hoc, so all sorts of shenanigans might have taken place in order to determine that a project was “successful”. Having worked with my fair share of corporate project leaders, I’m quite certain that the actual number of failed projects would be much higher if measured by the original criteria used to justify the project in the first place.
If we look at the original requirements every single project is a failure. If we look at the strategic goals and keep track of all trade offs maybe 30% is a fair guesstimate.
The older I get, the more I come to understand that the problem with projects is people, not methodology. 30% of IT projects still fail, despite “agile” now being widespread.
The first value of the agile manifesto is “Individuals and interactions over processes and tools”. Unfortunately, most implementations throw this one out first.