The last problem involves object role-play.
Role-play is a good technique in that it can help all team members to participate and really engage with the design. It also helps people focus on how the design makes objects collaborate to work through a use case.
However, the problem about the role-play is that it is easy for teams to role-play a use case, yet neglect or gloss over difficulties.
For example, they omit critical behavior, or they assume knowledge unreasonably. The result is that a team may decide a roleplay is successful, when in fact it may well be incomplete or even impossible.