In most cases, this is true. The best way to achieve large-scale change is to implement a series of smaller steps. Keep your options open. Solve only what you need to and be prepared to make changes to existing code to implement new things or handle altered requirements. It's not really much of a game, but this is how an XP project does the planning for a release.
Planning is done as a combined effort between business and technical people.
Business people decide things like scope, priority, composition of releases, and release dates. Technical people decide estimates, consequences, process, and detailed scheduling. Business people are also supposed to use input from the technical people to make their decisions, so the decisions should be reasonable. Keep in mind the four variables mentioned earlier. The project team still gets to decide one of the four variables, so they do have some control over the situation.