"If you don’t have a good grasp of the universe of what’s possible, you can’t design a good system"
That is what the "old" models such as waterfall say: as a first phase, complete and accurate software requirements list to be captured in a product requirements document
> You can have an iterative process and still take time to think, design and specify things.
Start with some thinking, designing and specifying, then start implementing from that -- but remember to take the time for some more thinking, designing and specifying throughout the process going forward.
(Not disagreeing, just "spelling out". Hm, is this my new personal definition of "Agile"?)
That is what the "old" models such as waterfall say: as a first phase, complete and accurate software requirements list to be captured in a product requirements document