Not a panacea, but if you imagine - every effort is begun with a built in base probability of failure (battle won or lost before it's fought kind of thing) - that a smaller effort reduces likelihood of failure cause you have less unknown variables.
Breaking things up, not necessarily with the teams, but with time. Milestones, separate the projects over time. Also, the shorter deadlines I've found help keep focused. Longer than a couple months - things can languish.
Breaking things up, not necessarily with the teams, but with time. Milestones, separate the projects over time. Also, the shorter deadlines I've found help keep focused. Longer than a couple months - things can languish.