Something that is missing in this dialogue si something I've observed:
In many gaming groups, you will likely have at least one guy who will fill any hole the party needs. What class he plays really doesn't matter to him.
If one of these guys is in your group, then there's really no need to tell or force people to play what is needed, just say "Hey Bill, we got no muscle" or "Dang, you guys have no ranged support".
As a DM I encourage people to play the character they want to play.
As a player I usually fill holes, though I prefer to play magic types overall. My basic thought is its the personality of the character I am going to play that makes the fun not the abilities the character brings to the table. So if I end up a cleric or a fighter or a rogue I don't care. i'll be slightly happier if the spell caster slot was the hole that needed filling.
In one of the SR games i am playing we have 8 players so overlap was cool, my first character was the tank type since that was the only hole I saw. Troll with combat sense and a high reaction was fun too bad melee combat sucks so bad in 4e. Didn't help vs the drone with the assault cannon. My next character was a mage even though we had one, that was our biggest hole due to the player sucking at it. He mainly sat around doing nothing complaining that he had nothing to do, and I'm like why don't you cast a spell or summon something.
2nd SR game(my Sunday one)the GM initially said only 1 mage, we have riggers, we need a street sam. And hey its been fun. No bioware since the setting is 2050, but that left me lots of build points for edge and its been a blast, heck my last couple games due to an injury he has had only one arm and until I save up ore money for a replacement he will stay that way. Total blast, and i get to fill in a needed role which is fun to me.