IT是这样一个领域,每年它都会宣称发生了十年一遇的重大变革,至少在词汇的发明方面上是这样的。真的假的靠谱的不靠谱的“大词”夹杂在一起,永远令听众无所适从。噪音大了,真正重要的信息反而抓不住。一个行之有效的办法就是耳听为虚,眼见为实,对概念炒作充分警惕。
尽管如此,当Ray Ozzie这样的人物说话的时候,我们还是可以放下矜持,认真倾听一下的。现任微软CTO的Ray Ozzie在历史上并不是一个喜欢发明和炒作概念的人,然而也偶有为之。1980年代末,这个人创造了groupware的概念,并带队开发了Lotus Notes/Domino。1990年代末,他又将协作与互联网融合起来,开发了Groove套件。Lotus ND至今仍然是IBM的五虎上将之一,而Groove则正在被融入微软的Office当中。所以当这个人信誓旦旦地说,“软件加服务”会是软件应用模型的一个根本性变迁时,就由不得我们不认真考虑一下。
到目前为止,微软并没有正式地对“软件加服务(Software + Service,或简称S+S)”加以明确地说明。目前存在的一些讨论都是以非正式的方式透露出来的,比如微软高层人士在各种场合的讲话,国外媒体刊发的一星半点的文字,以及从微软雇员博客上透露出来的Ray Ozzie的“内部讲话精神”。根据这些并不系统的材料,我们大致可以得出结论,S+S将是2008年微软重点发力炒作的概念。
所谓“软件加服务”,从字面理解并不困难,其意义也非常直白。Ray Ozzie说:
“Software + Service是微软面向下一代计算所采取的策略方式。通过结合软件与服务的长处,我们可以帮助客户实现功能、可选择性和灵活性的最大化。把客户/服务器软件体系与社区特征,特别是与服务的“随时更新”特质结合起来,将明显优于单纯软件或单纯服务的方式。广义的S+S方案将数个领域中发生的变革,如SaaS,Service Oriented,Web 2.0等,统一起来,使整个产业逐渐合流到S+S的思路上来,同时也允许各家从不同的起点出发,采取不同的路径和策略前进。”
从这段陈述中,我们可以知道,第一,S+S是要把软件与服务的长处结合起来,第二,S+S高于SaaS、SOA、Web 2.0等概念,其气魄不小。
那么到底这种思路靠不靠谱?软件和服务的长处是什么?这些长处可能结合起来吗?这种结合是什么样子的?我们必须详细地考察一番。
直观地看,S+S是对当下热门的概念“软件即服务(Software as a Services, SaaS)”的一个修正。SaaS强调软件的服务化,让作为实体的软件在用户面前消失,代之以通过网络向用户提供服务。而S+S则维护了软件的地位,认为以实体存在的软件能够给用户带来价值,因此必须保留在用户的机器上。对待软件的不同态度,是S+S与SaaS的最引人注目的分歧。因此,理解SaaS的优势和不足,是认识S+S的关键。
SaaS这种思路的出发点是,用户的目的在于使用服务,而软件只是为了提供服务所不得不存在的“讨厌的附属品”,如果能够让用户无需接触软件就享受服务,则对于用户是最好不过的事情。,事实上,SaaS可以被看成是在公众互联网领域里发生的Web 2.0运动对于企业应用的冲击和启发的结果。SaaS这个缩写词最早在2005年3月在Software Development Forum上出现,其时Web 2.0正是如火如荼。SaaS认为,传统上企业应用通过软件来提供,用户必须缴纳昂贵的license费用,同时所能够使用的功能通常只是一小部分,这导致了严重的浪费。此外,虽然用户的本意不过是使用软件所提供的服务,但由于服务以软件实体作为载体,就不得不要求用户支出额外的人员和费用来对软件进行维护。这些都是对用户利益的损害。对于软件服务提供商来说,以软件形式提供的服务同样会招致大规模的运维服务开销,并且迫使公司进行地理上的分布,更不得不将最宝贵的人力资源分散使用。因此,软件作为实体的存在对于供需双方来说都是一种负担。
随着互联网带宽的飞速发展,Web系统的成熟度、可靠性和安全性的提高,以及应用的标准化程度提升,将Web作为企业应用服务的发布平台的时机已经成熟。SaaS提出,使用Web作为载体和平台,服务提供商以Web站点或者Web服务的方式向用户提供服务,而用户则“随取随用,按需付费”。对于用户来说,这不但降低了服务使用的成本,而且免除了运维之类的苦役,精简了人员,使之更容易集中精力发展自己的核心竞争力。对于开发商而言,SaaS可以用一套系统服务多家地理上分散的客户,采取互联网推广、“先尝试后购买”的方式快速地扩展市场,而自己则可以将研发力量集中起来,快速地发展产品本身。在客户服务方面,由于核心服务运行在本地,所有技术服务工作都可以集中解决,不但降低了客服成本,而且能够对客户提供更快速的实时反应服务。此外,由于客户的核心业务数据存在于自己的机器上,因此客户黏性大大提高。集中运营、按需付费、按需提供服务的方式实际上给予了开发商更强有力的控制手段,把开发商变成了运营商。最后,供需双方直接通过互联网接触,避免了传统方式的层层中间环节,需方可以花更少的钱,而供方则可以获得更高的利润。
在某些领域,SaaS已经进行了一些成功的实践,最为人称道的如Saleforce的CRM,WebEx的视频会议服务,Google的企业级email服务,以及一些在线的人力资源和会计服务。综上所述,SaaS是将整个产业推向新层次的具有重大全局意义的思想。
然而,SaaS在当前还存在不少的实际困难。首先,目前以浏览器为主体的客户端所能提供给用户的使用体验是相当糟糕的,Ajax技术一定程度上缓解了这个问题,但是其改善非常有限,并且招致了巨大的额外的复杂性,对服务的可靠性和运维成本带来危害。其次,客户要求享受深度专业化、个性化的服务,要求服务高度可配置,再考虑到在线服务的规模巨大,这就要求服务端软件既功能强大又高度可定制,既灵活又高效,还必须具有无限的可扩展性和坚如磐石的可靠性,这对服务端软件体系提出了重大的挑战,可以说到目前为止不存在应对这一挑战的通用解决方案。第三,用户对于核心应用和数据的外移存在深层次的心理障碍,在短时间内不容易消除。第四,计算任务没有合理分配,压力集中在服务端,客户端吃不饱,服务端吃不消,无法对计算机产业的整体发展提供持续的动力。第五,用户的整个业务系统依赖于多个在线服务,则其可靠性等于所有这些在线服务的可靠性的乘积,这个乘积是一个按指数速度下降的函数,也就是说,用户系统正常运作的可能性将会随着SaaS应用的深入程度迅速下降。以Google这样强悍的技术实力,在中国的Gmail服务尚且会出现几乎每周必有的短暂失效,如果SaaS广泛推开,用户应用的可用性可能会迅速趋近于0。
由此可见,尽管SaaS许诺了一个美好无比的景象,但是其实可能只不过是一个乌托邦。
S+S正是在这样一个背景下产生的,它承认Service的优点,并且将其最主要的几个优势,如在线发布,零安装部署,实时更新,运维成本低廉等保留下来,同时维护了软件的地位,强调软件在提供更好的用户体验,提供更佳的用户定制能力以及更合理的计算资源分布方面的优势,从而平衡了软件与服务,为用户带来立刻可用的价值。
S+S中的Software,并非传统意义上的软件,而是可以零成本部署的新一代软件,这是S+S实施成功的关键。如果软件仍然需要繁琐的安装和维护过程,那么SaaS的大部分优点就会被冲销。达成软件零成本部署方式有多种,RIA是其中的一种,而使用虚拟化技术,从网络上直接下载应用程序至本地虚拟机上执行,也是一种正在发展的可行技术。目前来看,RIA仍然是主流,微软的Silverlight和Adobe的AIR是目前的主要RIA方案。另一种解决这一问题的思路,就是在“无处不在”的普及软件上下功夫,例如将Office变成S+S的Software端。由于用户普遍安装有Office,所以就新的应用而言,部署和维护也可以做到零成本。
一旦实现这一点,S+S方案的优势就会凸显出来,运行在客户端的软件可以充分利用计算资源,负担合理的业务功能,向用户提供极佳的体验。这不但提高了应用的专业化和用户可定制化程度,而且大大简化服务端体系架构。而同时,客户端软件可以通过网络即时更新,客户不必耗费人力成本进行软件的运营维护,同时可以获得快速的响应。对服务提供商来说,S+S提供了SaaS的大部分好处,强有力的控制手段,快速低成本地市场推广,集中的运营维护优势。因此,综合以上分析,可以知道,表面上看,S+S保留了软件,显得没有SaaS“革命”,是一种退步,但在当前情况下,S+S实际上是以退为进,是将软件应用推向新阶段的现实可行的重大战略。尽管这一思路是微软提出,但是实际上各家软件厂商都可以在这个领域里一展拳脚。
目前在面向消费者的领域已经有一些颇具S+S味道的应用登场。例如微软与纽约时报合作的Times Reader,软件本身免费提供,但是阅读服务需要每月付14.95美金,这样一种鲜明的盈利模型也是令整个产业向往的。Adobe已经宣布,5年内让Photoshop上网,这实际上也将是一种面向消费者的S+S模式。相信不久,面向企业的S+S的典型案例就会出现。
当然,对于微软的S+S也存在一些担忧,例如有人担心这是微软逆大势而动,变着法子兜售Windows和Office的阴谋。但是从上面的分析来看,无论这种看法是否站得住脚,S+S概念本身是代表了当前软件业发展的正确方向,即使在开源领域,它也是必由之路。当然,也正因为第一个提出S+S的是微软,因此对于那些摩拳擦掌准备进入这个领域的企业来说,也有必要提个醒,那就是应当尽可能坚持开放标准。
联系客服