Senior management does not set out to have failed projects, yet 7 out of 10 projects fail and you wonder why they keep doing things the same way.
As Forrest Gump's mother stated, "stupid is as stupid does", that is, smart peoplesometimes do stupid things. Most senior managers are pretty smart, however, managers end up doing some very stupid things.
Now from a human perspective, something very interesting is going on here. For example, suppose you were give the following choices:
- An 80% chance of making $100
- A guaranteed $50
Choosing the 1st alternative has an expected value of $80, so people might be expected to choose this because $80 is more than $50. However, because humans are risk averse, almost everyone will choose the second alternative with guaranteed money.
Now out of 10 software projects:
- 3 will succeed
- 4 will be challenged
- 3 will outright fail
To put that in perspective, if you were watching people cross the street at an intersection:
- 3 cross the street successfully
- 4 get maimed
- 3 get killed
You can Google "software project failure rates" to see that this has been demonstrated reliably over many industries over 50 years. Challenged projects are over budget and under deliver but senior management manages to sell them as victories. I do not consider challenged projects to be successful; hence the statement that 7 out of 10 projects fail.
So if human beings are risk averse and the odds of project success are so low then:
It seems likely that senior management can't conceive of their projects failing. They must believe that every software project that they initiate will be successful, that other people fail but that they are in the 3 out of 10 that succeed.
This inability to understand the base rate of failure in software development is systemic. There are so many software projects that are started by senior management where the technical team knows that the chance of success is 0% from the start.
Senior management is human (seriously, they are :-) ) and is risk averse, you just need to find a way to remind them of this. One way to get senior management to think twice about projects is to make sure that there is a meeting before launching the project where management is asked the following question:
This exercise (if done seriously) may have the effect of causing senior management to realize that the project can indeed fail. With luck, the normal risk aversion that every human being is endowed with will kick in and the project may get re-evaluated.
- Why Management Declared Deadlines Lead to Disaster
- Stop It! No... really stop it
- Article about the 5 most common worst practices in software
- Shift Happens
- Why scope shift is inevitable in software projects