There are many discussions about this and nothing is absolutely guaranteed, but, IMHO, they seem to boil down to these steps:
1) Keep file names as they were on the old site. Also, keep the same directory structure, if at all possible.
2) On the old domain, use 302 (temporary) redirects until you can verify that the spiders have indexed your new content and your rankings have stabilized (don't be impatient, as this is the most important step), then change them to 301 (permanent) redirects. This is probably the biggest issue, whether to use 301s or 302s, and it is becoming more clear that 302s do a better job, in this case, because the page aging will be less of an issue (temporary = old page/age still alive; permanent = new page/age). Leave the 301s up as long as you can so your link partners will have a chance to update their links.
Other than that, cross your fingers ... reeeeal hard.
Where would we be without rhetorical questions?