Dancing on (the wrong side of) the finishing line
Here's a weird contradiction. But I've noticed it more than once.
The people who say they really want the project, start to lose their nerve when it looks like it will be delivered.
I think the answer is something to do with the Cynefin framework.
Cynefin means something like "home" or "environment" in Welsh. It's pronounced "Kin-e-vin."
I'm using the names for the sections of the Cynefin framework that I remember, I know they've gone through some iterations.
If you want to get a really good understanding and all of the up to date thinking, you need to attend courses run by Dave Snowden's company.
Cynefin, is a two by two chart. The idea is that it's a way of thinking about the kinds of problem that you're solving.
In the bottom right corner is "Simple." Top right is "Complicated." Top left is "Complex." Bottom left is "Chaotic." Right in the middle, where all the boxes meet is "Disorder."
Simple problems are problems where everyone knows how to solve the problem, you just use the right materials and follow the instructions. Like making cake. Cake is a simple problem.
Complicated problems are like simple problems, but more complicated. You might need years of training to solve a complicated problem, but they can be solved.
Complex problems. This is where in gets interesting. Complex problems have some solutions that work some of the time. But there's no agreement what the one best solution is, and no solution seems to work perfectly all the time. This is where software development lives.
Chaotic problems. Nobody can even really agree what the problem is. There doesn't seem to be any obvious link between what you do and what good or bad things happen.
As we move from "Simple" to "Complicate" to "Complex" to "Chaotic," the relationship between the effort you put in and the value get out changes.
For simple and complicated types of problem, you really do get out what you get in. For complex problems, frustratingly, that often isn't the case. Sometimes a lot of work will pay off, sometimes it won't. And for chaotic problems. There is no relation at all.
Seeing thing in terms of the Cyenfin framework is one explanation of why the very people who were screaming for a software project to be delivered, can all of a sudden seem to find lots of reasons why it shouldn't be.
Software development is complex. That's frustrating and exhausting. But business? The actual way that real people work with your software in the real world? That's chaotic and so, terrifying.
And of course for even the most consummate sociopath, the point where you have to decide whether to associate yourself with a project or run for the hills whiles loudly shouting the name of the person that you're going to blame is a tricky one, a moment of fast footwork. It's understandable that there might a strong temptation to put it off. Indefinitely.
But, in the end, there really is only one way to find out whether your project is a success. Release the beast.
A lot changes one real software is being used by real people. Power relationships shift.