软件公司生存方式探析:软件外包和软件定制开发业务优缺点对比
在国家经济产业划分中软件公司是被划分在第三产业中的行业,属于技术服务类。因此,软件公司是为客户提供其所需要的软件和相关服务的供应商。在软件服务的大概念下,随着近年来新的业务模式和经营理念的出现,其下已经分化出不同的服务内容和业务种类,但是总体上来说通常按照业务形态划分为软件外包和软件定制开发。
当下的软件开发行业中,在谈到软件公司的业务模式时,解决方案、外包、服务、业务流程外包等名词满天飞,在这些专有名词的后面,又有一套通俗的名词伴随,如做项目、人力外包、卖人头、呼叫中心等等。面对一个正处于沿着上升通道欣欣向荣发展的行业以及伴随着如此众多的业务模式和概念时,我们注意到很少有人去认真的分析其中的关系和差异。
软件外包
软件外包,是指软件公司接受另外一家公司(发包方)的发包邀请,为发包方提供软件开发服务或者与软件相关的业务服务。在软件外包服务中,软件公司提供的软件开发服务叫信息技术外包(ITO),ITO的典型例子是银行将其后台的软件处理系统的开发、测试、上线等工作发包给具备金融领域知识的软件公司来完成,因为在金融软件领域,特别是在软件开发领域,上述的工作不是银行业务人员的专长,因此需要对外发包。
另外一种在软件外包服务中由软件公司提供的业务服务一般叫做业务流程外包(BPO),BPO就是发包方将其一些具有重复性质的非核心业务流程外包给供应商,这样做有利于降低成本,同时让自己或者自己的客户从BPO服务供应商处获得较高的专业服务质量。BPO服务的一个例子就是美国的汽车生产商将自己的售后服务业务外包给印度的BPO提供商,这样的话当一位美国客户在晚上想投诉一个汽车缺陷时将由在地球另外一端正在白天工作的印度人在电脑系统中处理其投诉。
此外,近年来在外包领域来还有新的业务形式出现,如知识流程外包(KPO)。KPO是从BPO的高端演化出的新业务形式。KPO是指外包供应商为发包方客户提供基于研究与分析、技术与决策技能的服务。
外包业务模式的特点是门槛相对低、前期投入少,业务执行的风险较小,但是利润不高,。因为大部分客户将非核心的业务外包,因此技术和业务门槛相对低,而且大部分的外包业务都是由客户控制质量、成本和交付时间,因此外包供应商可以在这方面以及研发方面降低投入。但是由于上述两个特点,也导致外包行业竞争激烈,人力成本居高不下,因此在正常情况下利润偏低。
软件定制开发
软件定制开发是指软件公司针对需要某种软件进行业务处理的客户所提出的软件需求进行软件开发工作。软件定制开发按照面向客户的不同分为两类,一种是通用解决方案,即软件公司根据某些已经体现出的,或者可以预期的问题、不足、缺陷、需求等所提出的一个利用软件解决问题的方案。提出方案后软件公司组织资源进行软件的分析、架构、设计、开发、测试工作并最终以产品的方式销售给软件需求者。另外一种的解决方案是定制解决方案。所谓定制,是指软件公司接到某个客户或者某个行业的软件需求后,按照某个客户或者行业的特定要求,为其存在的业务、问题等软件需求专门量身定做一套软件,从而解决特定客户的特定问题。
一个软件公司在任意一个经营时间点上或者时间段内都有可能从事外包或者解决方案业务。这两种业务模式可以单独存在,也可以同时存在于一个软件公司中。这就产生了一系列问题,如果是单独存在,为什么有的软件公司以外包为主业,有的专注于解决方案?为什么有时一家软件公司在不同时间段内以不同的业务模式工作?当这两种业务模式同时存在于一家软件公司内时,这两种业务模式间存在什么样的关系?
软件公司在外包业务模式和解决方案业务模式之间的选择表面上是一个软件公司内部战略和战术上的自发选择,实质上这种自发的选择是建立在服务业务模型内部两种业务模式间的螺旋式发展这一内在规律的基础上。由于软件服务业务中面临的业务复杂度的不断提升,导致软件公司必须在两种业务模式之间演进和转换。软件公司以外包模式获取生存空间,在获取足够生存空间后在螺旋式发展内在规律的引导下转换到解决方案模式获取成长空间。当软件公司在解决方案模式下的的成长空间因业务复杂度提升而变小时,就会再次转到外包模式下来换取生存空间并逐渐为下一次的转换积累到足够的业务和技术能力。