It seems that a lot of emphasis is placed on Definition of Done in SCRUM. Its generally the development team that are going to decide on this and communicate out, as a set of rules for them to abide by you can potentially change them every sprint or project. Hopefully to improve them.
The really complicated on is ready for development, this has to be communicated clearly to people outside the team. It will take them time to get their heads around it, so you don't want to be changing it every five minutes. Ready for dev is also something that is seen differently by different members of the team.
The absolute most important thing to remember is that for a user story to be ready a developer must be able estimate the complexity of the story and then start work on it. This absolutely has to be done without a raft of assumptions being made. If the writer of the user story needs to be consulted its not ready for dev.
There are two approaches to dealing with this:
Stick to the rules: Push back anything that isn't ready even if the sprint is only partially full. Warning this will end in tears.
Work together: The less us and them the better. Before the sprint planning meeting have a chat with the person writing the storys and go through some of them to make sure that there is enough detail. Encourage to flesh them out where needed.
The idea is to wean people off option two and onto one.
Also many thanks to the mate that I blatantly stole this idea from...