You're defending something that wasn't even being questioned, but since you brougt it up let me write unnecesarilly long post;
There's a situation where fotm spec is, let's say, ele shaman and ele shaman can kick much more *** than, for example, enh shaman. So you play enh shaman and you enter arena with 2 other enh shamans, and you see that on other side there's 3 ele shamans. They wreck your team with no problem, if we assume that skill is similar in both teams. Now, what do you do? You switch your comp a little bit. Change some specs. You balance your team by yourself. So next time, instead of triple enh, you go enh/ele/resto and you stand better chances. You balanced your game. Same thing with BGs. Each team will make optimal selection to try and be better than other team. Only thing here, you don't have only 3 characters to switch, you have 10. 10 on each side, and by some silly math, there's bigger chance that teams will be more balanced in 10v10 scenario. Why? Because noobs get carried and pros carry. Stuff averages out more precisely when you have bigger pool of players. This is balance.
And now you want to ask me, but why are there situations where pug gets overrun and loses in 5 mins with score 0:3. Simple, it's pug. Same thing happens in arena when 2 randoms decide they gonna conquer world only to end up having 5 matches lost in a row. The higher you climb the ladder the more balanced stuff gets because people are more equal in skill. Same thing with battlegrounds; if you take 5 decent people from your guild you can communicate with, you can give better fight. And finally if you take 10 really good players into rated BG then stuff gets interesting, because you won't go against 10 pugs (usually), but rather 10 similarly skilled players. And battle will be much more balanced than you think.