If there's only three different roles (Tank, Healer, DPS), why have so many different race/class combinations?
The short answer is that some people enjoy complexity.
There's no detail in that, though.
Those 3 archtypes break down into sub-specializations.
Healers and DPS pick, by virtue of which class they roll and how they spec it, whether they want to focus on healing/smashing the fuck out of one or two things at a time, or healing/smashing many things at a time, but not (per capita) as hard as they would be if they went for a single-target focus.
Tanking specs are a little different (for death knight). One spec gives you more "oh, shit" buttons, while another makes you better at getting the attention of many monsters at once. The latter is pretty much unused. I do not believe that Paladin, Warrior, and Druid make that same decision, because they only have one tanking tree.
On top of the role specializations (many-targets vs one-target), Blizzard put certain attributes that augment the abilities of other people in the party/raid on certain classes. Shaman damage is unimpressive, when all is said and done, compared to that of a rogue, but they bring buffs that rogues don't bring, so it could be said that in the absence of other shamans, the shaman contribution to a raid's damage output is comparable (or higher) than that of a single rogue. Blizzard possibly thinks this is balanced. (They have also talked about giving other classes Bloodlust, a BIG short-duration haste buff, and possibly a shaman's most significant contribution.)
My theory about why some of the classes are handled this way is that Blizzard is providing non-competitive players the opportunity to contribute. They let someone settle into a "bitch" role (being responsible for providing a buff or debuff) at the expense of personal glory, but in exchange, expectations on them are a little lower than they might be at the top of the DPS pyramid.
This means you can be a shaman who fucks up the order of damaging abilities he uses (priority system, or skill rotation, depending on class), but no one cares that much, provided that you keep dropping your totems and using Bloodlust when the raid calls for it, and provided you don't get yourself killed. This is because 80% (or whatever) of the use the raid gets out of you comes from you being there and using abilities that strengthen a bunch of the other players.
Meanwhile, if you are a Rogue, Death Knight, or any class with a "greedy" spec that focuses on personal DPS, rather than filling in buffs for raid DPS, you have to be putting forth more effort for the raid to be getting 80% of your character's potential out of you.
I'll edit this post later. I have a lab report to finish.