My niece and I were discussing the necessity for grades last night (along with the incentive they provide for cheating); at the time, I conceded that some kind of generally-accepted evaluation system was needed, and grades were one way to do it. But the more I think about it, the more I realize that I really don't believe in grades. Grades are more about competition than education. Grades assume that everyone has to be pushed through material at the same rate and then rewarded or penalized depending on how quickly they were able to absorb it; the race (and the A) goes to the swift.
But that's not how education should work. An alternative is teaching to mastery, where students are given the time they need to master the material and not allowed to move on until they have. Grades aren't needed to rank students, because they don't move up to the next level until they have all the material mastered; they can't flunk as long as they show up and try to learn (although they might stay in one stage a long time). Bright students who would do well under grading can move ahead quickly, covering more material in a given time; slower thinkers (who may be equally intelligent) can master the material at their own pace.
This is how young children learn, moving on to a new task when a prior one is mastered. In school settings where the technique has been tried, it has been so successful that it tends to anger the school organization (especially when the "dumb kids" are getting As in a class). If the goal is to get kids to learn the material, grading is a failure; it is only successful as a way of ranking kids based on how fast they learn, not how well.