Software Complexity + Human Frailty + Changing Circumstances = ???
High level planning, such as a feature list (or Product Backlog in Scrum), and an outline plan based on the affordable team size; Yes. Otherwise you’ve no idea what you’re in for.
But a detailed specification and detailed plan? I don’t think so.
First, they give an artificial impression of accuracy, which given the above formula is unlikely to be possible, however firm it seems at the start.
Second, detailed analysis and detailed planning takes a long time, and given the unlikely accuracy, in my experience it’s simply not worth the effort.