So, despite the fact that the old rubrick "Good, fast, or cheap: pick two," does nothing to help us improve our software devleopment efforts - why does it still resonate so much with us, as developers? I think it's a refuge where we express our frustration with schedule and budget pressure that seems unreasonable to us, given that we need to produce software that works.
Nonetheless the reality is that any software effort has to deliver within the constraints of time, budget and quality. What we should really be doing when we're faced with time and budget constraints that seem inadequate to the task, is to express that. If we are sincere, then the effort should be avoided to begin with - or negotiations need to be made which will produce a valued product within reasonable constraints.