Comment Re: Stop being cheap. (Score 1) 524
Yeah, that's called The Waterfall Model and over the years, especially through the 1990s, we've come to realize that in most cases, except avionics and space flight control, you almost never spec out the system that gets built before hand. You spend too much time updating the spec to match the realities of the business objectives, which also change over time.
This has lead to the rise of Agile methods that accept you cannot and don't really want to specify in detail the whole product up front.
Build in sprints with tests, refactor older code based on the latest understanding of the product by the stakeholders and write more tests. It seems to be a better model and leads to a convergence on the product where the stakeholders can determine during development whether a particular feature has merit or should be modified to fit the business goals.