One of the most critical items to a team's success is managing the backlog.
The backlog is NOT a collection of to-do items that your developer can go an "pickup" when they have spare time.
A backlog HAS to be groomed. IE: Reviewed weekly by someone on the team, or maybe even the whole team.
Items at the top of the backlog list MUST have some form of requirements.
In my opinion the scrum master is responsible for keeping the backlog in order. This does not mean they are responsible for priority, requirements, etc. It means they are the one who says "Hey Team, we have to go through the backlog because we have no idea what the top 3 items actually mean"
The BA/PM/Requirement Pusher, should be intimate with the backlog. I mean REAL intimate. Live and breath it.
A bit of a rant, but it's a recurring theme that drives Agile teams to failure.
Hope it helps.