Outsourcing is the practice of paying an outside organization to develop a program instead of developing it in-house. Outsourcing companies can have more expertise in an applications area, more developers available to work at a given time, and a larger library of reusable code to draw from. The combination can result in a dramatic reduction in the time needed to deploy a new product. In some instances, Outsourcing can save development cost, too.
Potential reduction from nominal schedule:
Improvement in progress visibility:
Effect on schedule risk:
Chance of first-time success:
Chance of long-term ...