data to get the job done. Information shared by email, chats, or by the water cooler can get lost easily and not reach everyone. With central repositories and an automated software process, you can define "laws" of your project and the tools enforce your laws.
By now you might think that I have a negative opinion of offshore software engineering. To the contrary, I believe that offshore development has expanded from a niche to a serious model in recent years. Nevertheless, offshore companies need to prove that the model works with repeated success stories.
The argument "Software development in the United States is too expensive...I'll just go offshore" is only half of he story. The margin between offshore salaries and local salaries will decrease in the future. Based on the laws of economy, American software engineers, who are in low demand, will need to lower their salaries. The offshore engineers, who are in high demand, will increase their salaries. Theoretically--and taking this example to an extreme--offshore development will have the same or higher price tag relative to today's engineer.
The decline in the number of students seeking computer science degrees in the United States could make offshore development a one-way street. The slowly declining number of onshore American engineers will no longer able to cover mission-critical software engineering within intelligence, defense, bio-technology, and capital (stock) markets. Innovation in these areas is crucial, and software engineering ala Wal-Mart does not fit all needs.
The lack of innovation in building software systems offshore is, in my opinion, the biggest concern. Innovation will more likely occur when people who experience the problem find a solution. In an offshore approach, the distance between a problem and a possible solution is vast. Therefore, I believe that offshore-models need to demonstrate that they can translate requirements into innovation and the right business model for the onshore partner.