You sub contract out hardware assemblies (and software) when you start feeling market pressure and your cost has grown to be competitive.
Then you find, as a prime contractor, that you are still responsible for the product. You still have to maintain expertise. And, to keep the vendors in line you have to be able to at least threaten to bring the work back in house. All of this greatly reduces the cost advantage.
Now days, the concept is "only sub out work that is done better than you can do; where better includes technical performance".