neither work well. Letsthink about it logically here. Say instead of LoL its literally any team effort ever with multiple roles, say soccer for example. No team ever would decide who is goalie or striker by whoever screams goalie first and they sure wouldnt say "well who ever comes in the door first is mid field, second striker and third goalie:. Its just such a terrible idea to let roles be decided by basically random chance. Plus with only a little over a minute to figure it out you have little time to react. For example say im playing support and pick morgana...when all of a sudden some dick decides to auto lock support and arguably the whole game is thrown even before it starts. The most common example is "Everything but jg is called, i cant jg...screw my team duo top piss of i top or tilt".
teambuilder is the way to go....u go into a Q after declaring 1 or 2 roles u can fill(i think 2 is much more reasonable than 1 personally) and are matched with other ppl wanting those roles, every game mode should be like this, especially ranked...Pros dont learn every role, hell they only learn 1 why should a bronze or silver player need 4 roles. Besides its a GAME, its supposed to be FUN...when u demand ppl play something they dont want to it takes that away, it would be like if i just wanted to play Fallout all day but a third the time my xbox makes me play skyrim instead, skyrim is similar and a great game...but not what i wanted and not why i logged in to play.