Queue times may be even longer than 7 minutes. The problem builds upon itself. When the system lacks players of a certain role it creates a bottleneck.
Let's say there are 100 players online, obviously there will be more at any given moment but I'm using 100 to keep the example simple. Let's also assume that there are 22 people queuing for top, 22 for jungle, 22 for mid, 20 for adc, and 14 for support. This seems like a safe assumption in our hypothetical scenario, given adc and support are the least popular roles.
In this situation, match making is able to find 14 games immediately since there are 14 players queuing in each role. But what then? How does the game find people to play with those 8 top, jungle and mid players, and those 6 adc players?
Let's say 6 people log on and they all queue for support, a very unlikely scenario but let's roll with it. Then 6 more games may begin. But now, not only is there a lack of support players, there aren't enough adc players either. There are still 2 people left in top, jungle, and mid roles who are looking for a bot lane.
Now assume 5 people log on and they each queue for a different role, again a highly unlikely situation but for the sake of the example roll with it. Match making can start another game but 3/5 of the players who just logged on have to wait for more players to queue before they even have a chance at getting into a game. Chances are those 5 people that just logged on, aren't each going to queue for a different role and the bottleneck just gets worse and worse with time.