Scenario A: Task a single team, staff them and let them do their thing. Cross your finger and hope they get it done.
Scenario B: Look across offices, org groups, whatever, and task 2-3 (sometimes more) teams with your task. Let them start work on it and get regular demos and updates. Eventually, pick a winner.
B looks very wasteful from the outside, until you realize that many software projects fail (like 50%). So more attempts give you a higher chance of success. Downside: Internal politics, waste, attrition from engineers throwing away code/busy work.
A is great if you can do it, but you're putting all your eggs in one basket.
A lot of times this is just bad org/bureaucracy though, but it can be done to great effect.
Disclaimer: Worked for a CEO with a large outsourced engineering base and several offices. Would see multiple attempts at different offices all the time. Eventually, grudgingly acknowledged there was a method to that madness. Trump also is famous for this (although his seemed more madness).