In our small development team we are adopting the agile way of developing our software. We try to stick to one month development cycles.
At the beginning we play what we call "the planning game". The idea is to filter out all the issues and find out the ones to be handled in the upcoming iteration. Here it is in a nutshell: every person (developer, user, analyst, etc.), involved in the project, is more or less aware of all the minor and major issues. Also, everybody has a more or less definitive wishlist of issues to be fixed in the upcoming iteration.
Everyone takes several small square pieces of paper (5 to 10) and writes down all the important (in his opinion) issues -- one issue per one piece. Now, all the pieces are stuck to a whiteboard, but not randomly. The left edge of the board is priority, while the bottom is complexity (like Y and X axes). All the papers are sorted out based on priority and complexity. Thus, a simple and not urgent ends up in the left bottom corner, moderate complexity / priority -- in the middle, and extremely complex but urgent in the right-top. Well, you get it...
After a bit of discussing and tossing the papers around we have all of them arranged properly on the whiteboard. Of course, we might get rid of some of the papers along the way, because we don't want to be overwhelmed.
Once we are done we do not remove the papers. On the contrary, we let them stay during the iteration. After issue is fixed we put a big cross on the corresponding piece of paper. Personally, I really enjoy this step ;)
Well, now the question: do you practice anything like that in your team? If you do, how effective do you find this approach, how much do you like it, have you met any problems with this?
P.S.
Yes, this is subjective, but I personally really enjoy this game and it seems to help a bit during planning and even development phase to stay concentrated on the issue. So, your answers are really appreciated.