This thread from HN has plenty of examples and metaphors about planning and estimating, even if it is titled Why does software development take so long?
From the piece
Adobe’s initial proposal was for $1.54 million
Who the goshdarned heck on the client’s procurement team thought that was going to be enough to consolidate 16.5 million public web pages?
Agile approach: Guess how much resource is required. Do a bit and measure how far you’ve got. Project, based on evidence of your actual forward velocity and what you’ve learned about the problem. (They probably spent more on the estimate.) Reassess whether what you are aiming for seems economically viable and ‘fail fast’ if it isn’t.
Excellent post/book on contemporary pragmatic s/w dev and its issues:
The Government IT Self-Harm Playbook
I went to a BCS talk a few years ago. Someone asked, “Why do all large government projects fail?”.
An experienced voice from the back butted in with, “Because ALL large projects fail”. It wasn’t me. I still had some hope left then.