Performance appraisals are a single most challenge we have to crack yet. We still try to gauge individual performance in a team, which I feel is not the right way to appraise agile teams.
Because it isn't.
You can either have a team that performs at the cost of individual goals or individuals that perform at the cost of common goals. You cannot have both. Individual goals will always supercede common goals.
The idea behind self-organizing teams is that they know best what needs to be done, what goals need to be achieved and can/will tell you if a member is not carrying his weight. Many aspects of what makes a good team are incredibly hard to track on an individual level. And a mismatch between what you need and what you are appraising by can have a significant negative impact on your results.
For more information I strongly suggest reading Peopleware.
The model I've seen successfully used is a 50/50 model.
The first 50% of a person's review is based on the overall team performance. Everyone in the team gets the same percentage and this is based on the team's ability to deliver working, defect-free, product.
The second 50% is based on the individual and their meeting development goals. These are not work product related. Instead, they are goals that will lead to them improving as an employee. Learning a new software language, developing public speaking skills, taking leadership training, etc.
By doing this, it promotes the team helping the team to improve as everyone on the team gets the same score for 50% of their overall review.