We all knew it
Today, new research conducted for a new book, Impact Engineering, has shown that 65% software projects adopting Agile requirements engineering practices fail to be delivered on time and within budget, to a high standard of quality. By contrast, projects adopting a new Impact Engineering approach detailed in a new book released today only failed 10% of the time.
All you need to know about this study.
Fun mental exercise - remove the formalism behind agile methodologies out of software development. How is that any different from driving another human being mad?
I have altered the specifications. Play I do not alter them any further.
A more proper title would be “study finds 268% higher failure rates for poorly planned software projects”.
“Agile” as a word is mostly an excuse of poor planners for their poor planning skills.
Yeah, Agile isn’t really at fault here. If done right - if you’ve got a scrum master, a proper product owner, proper planning and backlog grooming, etc. - it works really well. The problem is some companies think Agile is just “give the devs some pie-in-the-sky hopes and dreams, let 'em loose, and if they don’t give half a dozen execs exactly what they want (despite their massively conflicting ideas on what they want), cancel the project.”
In my experience it’s just kanban, but make the devs feels guilty between sprints for not meeting their goals.
Yeah, Agile isn’t really at fault here. If done right
This is what ticks me off about the “Agile” brand, it’s chock full of no true Scotsman fallacy (if a team failed while doing “Agile”, it means they weren’t being “Agile”).
I can appreciate sympathizing with some tenets as Agile might be presented, but the popularity and consultancy around it has pretty much ruined Agile as a brand.
Broadly speaking, any attempt to capture nuance of “best practices” into a brand word/phrase will be ruined the second it becomes “popular”.
This isn’t a case of No True Scotsman. There really is a right way and a whole lot of wrong ways to do Agile development. Any team that calls itself an Agile team that doesn’t actually follow the processes properly is doing it wrong and will fail.
That doesn’t mean any team that’s doing it right will succeed, but it’s like riding a horse: If you only climb halfway up the horse and try to hold on while at a 90-degree angle, it’s not going to work, and it would be stupid to declare that the concept of horse-riding is broken. No, it’s not broken, you’re just an idiot who thought you could ride a horse while only halfway up, clinging desperately to its side.
Agreed. The problem is people mistake “zero planning and structure” to mean “agile”. Of course it fails.
Agile to me was always mini waterfall. You always know who’s doing what, why, and what success looks like on a 2 week sprint horizon. When you see people on a sprint without a clear understanding of what they are doing over the next couple of weeks - then you know your project is in trouble for sure.
One standout statistic was that projects with clear requirements documented before development started were 97 percent more likely to succeed.
I’d like to work in that company.
Try medical software and devices. The requirements and specs are mandatory before doing anything. It’s actually very fun and I have less burnout thanks to this.
I couldn’t disagree more.
In medical I would end up being apart of endless retirement gathering meetings, then draft up the SOW doc only to have stakeholders change requirements when they were reviewing the doc. Then months later once the doc was finally finished and I could do the development, when UAT time finally came, they’d say the build wasn’t what they wanted (though it matched the written requirements).
Most of the projects I saw executed in the last 4 years either got scrapped altogether or got bogged down in political bs for months trying to get the requirements “just right”.
It was a nightmare. You could blame me, or the company, or bad processes all you want, but I’ve never had fun on a waterfall project, especially not in medical. (Though, in my opinion, we are severely understaffed and need like 4 more BAs.)
Do you think the problem is that the person driving the requirements doesn’t know what they actually want?
I think a good BA is critical to the process because lots of end users have no idea how to put their ideas onto paper.
I also think an MVP helps a lot because people can see and touch it which helps focus their needs.
deleted by creator
Wtf is Agile ? I can’t get my head around that.
It is a methodology to develop software quickly. It has some good things about it. But it can be very heavy on meetings and agile idealists are not very flexible. As many of the other comments say, a mixture of agile and some other methodology or starting with agile and developing your own process that works for your team or project is the best way of managing a project. I don’t understand why so many people don’t seem to write requirements when using agile. Even with agile I will not start coding until I have relatively clear requirements. It is not too bright to start speculative development without really knowing where you are going. https://agilemanifesto.org/
But it can be very heavy on meetings and agile idealists are not very flexible.
Seems a little ironic haha
Right? I find agile purists to be some of the least flexible people I’ve ever met. They are the exact opposite of agile. To be fair though, I have found that a good scrum master can be worth their weight in gold. You always know the status of a project and the individual stories. It can be very, very helpful.
I don’t understand this… How do you code if you don’t know where you’re coding for? Am I the only one that thinks that sounds crazy?
Commonly you will have a relatively broad goal of providing some functionality by the time a project is done. Every sprint, commonly two weeks, you concentrate on producing a piece of functionality that will get you closer to that goal. At the end of a sprint, many teams are expected to have what’s called a minimally viable product that is technically usable. The problem with that concept is MVP almost always becomes production. That results in poor coding that is hard to support. It almost always involves rework later on, often when something is already in production. And you are not crazy. Not having a clear idea of what you’re coding for is wasteful and very inefficient.
That’s because they forgot the meaning of the word agility and want to apply the rules what ever the cost
And also because it’s a comfortable cover up for any kind of money saving stupidity. We don’t need proper requirements engineering, we’re agile. We don’t need an operations team we’re doing an agile DevOps approach. We don’t need frontend Devs, we’re an agile team you all need to be full stack. I have often seen agility as an excuse to push more works towards the devs who aren’t trained to do any of those tasks.
Also common problem is that still tons of people believe agile means unplanned. This definitely also contributes to projects failing that are just agile by name.
100% my experience.
Especially the last part. Writing a single word into a jira ticket doesn’t make it a story, epic or sub task. You’re too lazy to specify, that’s not what agile is meant to be.
Or, even worse, they want to apply some of the rules, cherry-picking bits and pieces of a framework without truly understanding it.
Pbpbpbp…agile fails fast by design.
The counter from the article is you need a specification first, and if you reveal the system wasn’t going to work during requirements gathering and architecture, then it didn’t count as a failure.
However, in my experience, architects are vastly over priced resources and specifications cost you almost as much as the rest of the project due to it.
TLDR…it’s a shit article that confuses fail fast with failure.
Fail fast is the whole point and the beauty of agile. Better to meet with clients early and understand if a project is even workable rather than dedicating a bunch of resources to it up front and then finding out six months in (once the sunk cost fallacy has become too powerful)
Does that surprise me? Not at all. “Agile” was never about making programming better. It was a management buzzword from the start.
We once had a manager who came to me with the serious idea “to make the development process agile”. He had heard of this in a discussion with managers from other companies. The problem? I’m the only person in this department. I program everything alone. How the F should I turn my processes “agile”?
deleted by creator
Isn’t it more that people tend to use agile as an excuse for not having any kind of project plan.
It’d be interesting to know how many of those agile projects actually had an expert project lead versus just some random person who was picked who isn’t actually experienced in project management.
Isn’t it more that people tend to use agile as an excuse for not having any kind of project plan.
I’d say it’s more about continuously milking customers on projects that never seem to end. I’ve never done software project management, but I have seen it’s “tenets” applied to other types of projects. The results were arduous - to say the least.
Personally, I was never great with agile projects. I get that it’s good for most and sort of used it when I was a CTO but as a solo developer, there are days when I’d rather eat a bowl of hair than write code and then some days, I’ll work all night because I got inspired to finish a whole feature.
I realize I’m probably an exception that maybe proves the rule but I loathed daily stand-ups. Most people probably need the structure. I was more of a “Give me a goal and a deadline and leave me alone, especially at 9am.” person. (Relatedly, I was also a terrible high school student and amazing at college. Give me a book and a paper to write and you’ll have your paper. If you have daily bullshit and participation points, I’ll do enough to pass but no more.)
Stand-ups can become so proforma. What did you do yesterday? I coded. What are you doing today? I am going to code. Do you have any blockers? No. It gets a little repetitive after a while.
I think you are missing the part where you help others with their blockers.
If someone is blocked I’d be pretty cranky if they waited until the next day to mention it. Blockers are to be dealt with swiftly and with extreme prejudice.