I just got back from a 1 day M-School training at the BMW Performance Center in South Carolina. It's a fun experience and one I highly recommend. Not only do you get to drive some really fast, top-of-the-line cars, but you get a little training as well.
We got to do some laps on a couple of different tracks, and the point that was emphasized over and over again, was that it wasn't about how fast you go in to a corner, it's about how fast you can exit the corner. You need to put on the brakes, take the corner, and then put the pedal to the floor. It reminds me a lot about building software applications.
In some of the modernization projects we do, customers are anxious to get to the development phase. They often skimp on the upfront work, figuring that the requirements are already there, the design is basic, testing is just a matter of comparing two versions of the same thing, etc., etc. These are not the projects that go smoothly.
You need to do the prep work, the design, the test creation, the extra requirements gathering for areas that are changing. If you do all of that, you can exit the corner at top speed and get through the rest of the project much more quickly.