大体来看,SaaS需要经过两个发展阶段:第一阶段是将本地部署的软件云化,或者基于云计算的特征,开发天然就带有"云化基因"的企业应用;第二阶段是SaaS应用生态,各个SaaS厂商基于API接口相互嵌入,最终形成共生的应用生态体系。 系统之间兼容性差,是传统软件的一大弊病。SaaS作为软件云化的产物,对软件产业很重要的一个变革,就是通过标准化和API,来实现不同软件产品之间的融合。随着SaaS应用的增多,开放API接口并且相互嵌入,成为多数厂商的一个选择。 API是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。简单的说,各个SaaS只需要专注于某个核心功能,对该功能进行不断地优化。其他功能可以通过调用其他应用的API来实现,而不用什么都需要自己开发。 本地化部署的软件,一般都是某一家厂商独自开发,然后由专门的系统集成商来进行系统集成。各个软件之间的兼容性并不好,尤其是不同厂商的产品兼容性更差。就像是不同国家的铁轨标准不同,一个国家的火车不能直接进入另一个国家,这会对国家间的物流、贸易带来严重的阻碍。同样的道理,不兼容的软件系统,也不利于数据在系统之间的流动,就会造成信息孤岛。 云计算的发展,让企业部署的软件云化。SaaS应用不用本地安装,更多的是只需要一个登陆账户,就能享受各种服务。这种服务方式,让各个SaaS厂商在"云端"进行相互嵌入和相互集成变得更加便捷。 目前市场上存在两种集成方式,一种是几个厂商之间相互开放API接口,进行应用的相互嵌入,这类方式比较适用于关系比较好、功能互补性强的厂商之间;另一种是IaaS厂商通过开放PaaS平台的API接口,接入多家SaaS应用。这种方式,是实力较强的厂商,单方面兼容其他实力较弱的厂商,会面临一个主导权争夺的问题,也就是谁来兼容谁。对于用户而言,未来比较理想的状态是用户根据自身需求,对SaaS应用进行"可插拔"式的操作。就像插座一样,根据需要插上各个应用,不需要了就"拔掉"。 需要指出的是,要让SaaS厂商放弃大而全的功能,刚开始会是很一件困难的事情。如果可以通过卖100元的机器,谁会愿意只卖1元钱的零件呢?但是,如果大家都造完整的机器,必然同质化严重,谁也卖不出多少钱;相反,专注于做零件,可以把销量做得很大,也未尝不是一门赚钱的生意。 理想情况是:供给端,各个厂商进行充分的专业化分工,专注于少数核心功能,然后通过API接口为企业用户提供丰富的应用选择。需求端,企业用户面对一个异常丰富的应用市场,选购自己需要的"零件",然后快速方便地组装起适合自己的解决方案。 当然,要达到这样的理想状态,还需要经过较长时间的市场发展,是各方相互博弈和相互妥协的结果。毕竟,大家都想自己去兼容别人,而不想被别人兼容。