软件外包能缩短软件开发周期的道理很容易理解,如果很复杂的软件开发工作都在一个公司内部完成,那么可能耗费1年甚至几年的时间。例如,如果Microsoft Windows Vista的软件需求分析、框架设计、详细设计、软件编码、软件测试、软件多语言本地化等工作都在Microsoft公司内部实现,那么微软可能需要招聘很多的内部员工,动用很多的项目经理管理这些人员,对这些人员进行技术、语言和流程培训,花费的时间肯定比外包更长。这样的软件即使开发出来了,等到能够发布这些技术可能过时了,其他竞争对手的相似产品肯定已经早已占领了市场。