技术开发 频道

SOA:技术问题还是管理问题?

    【IT168 技术文章】

    尽管在产品、理念、标准、路线等诸多方面存在不少的差异,三家SOA主要厂商IBM、SAP以及BEA今年却有了一个相同的方面,那就是把SOA推广的重点从IT人员转移到了业务人员。

    IBM在它的SOA峰会上表明,业务人员对于实施SOA的影响力已经超过了技术人员,其今年提出了SOA的5个切入点,其中技术方面只有两个,而业务方面却有3个;BEA则干脆在丽江举办了面向企业架构师的论坛,共同探讨如何优化企业现有的IT与业务架构的问题:SAP也在收获ERP市场的同时紧盯SOA市场,其从应用入手的策略更是直接从业务突破。

    和两年前这些企业集中“进攻”CIO相比,这种转变不得不让我们再次思考一个问题,在经过了两年多的灌输与扫盲阶段之后,SOA为何将业务和管理放在了技术的前面?

    表面是技术实质是管理

    从SOA的定义上来看,它就和之前的ERP、CRM等有着很大的不同,SOA既不是一个产品,也不是一个纯正的技术项目,它更多地指的是一种以服务为核心的设计架构,是一种理念,也是一种方法论。简单来讲,SOA是一种帮助企业解析流程,使企业能够充分重复利用资源、达到非常好的优化、提升效率的一种理念。

    从这个角度上来说,SOA能帮助企业实现业务与IT同步,有效降低成本,提高灵活性,从而提升竞争优势。这一系列的好处似乎让人无法拒绝,但为什么SOA被无数专家看好,而目前采纳并真正实现其价值的企业尚不多见呢?

    实际上最大的问题是对于SOA在理解上出现了偏差,过分强调了技术而忽略了管理变革上的难度。

    根据国际数据集团(IDG)最近进行的SOA调查,有半数以上的企业认为,组织和管理问题是他们实施SOA所面临的主要障碍。

    在实施SOA的时候,一个现实的问题是必然要改变原有的流程与组织架构,这样SOA虽然能实现IT和业务的真正的协调,但实现真正的协调同时势必会带来大量管理问题。因为人们已经习惯于使用专用资源构建运行在专用设备上的系统和应用,这样有利于了解依赖关系。

    同样,SOA从技术方面实现了从IT应用中分离出业务流程,人们因此可以充分利用在企业不同部门中构建的服务,但随着应用开发变得更加水平化,对于IT而言,追踪所有集成点之间的依赖关系,了解变化或问题隔离的影响,也因此变得更加困难。不仅如此,即使从部门之间的关系来看,在实施SOA时,需要先将现有的IT系统打包,这就意味着我们要对现有的IT系统进行一些改造,需要打通业务部门之间的屏障,实现各业务部门的数据共享,这可能需要改变业务流程。在改变业务流程的过程中,很自然会涉及组织部门之间的利益和关系,甚至还可能会改变组织结构。

    很多SOA的失败案例并不是因为技术问题,而是组织架构上没有办法实现SOA理念。沪士电子(昆山)有限公司IT经理王翔分析,SOA并不是单纯的IT概念,而是与组织、管理、商业模式紧密联系在一起:“这是一个系统工程,需要企业各方面力量的协调。”

    在这样的情况下,作为实施的IT部门与各个业务部门之间很难达成共同的认识与理解,所有的整体性问题都有一个共同点,就是它们的报偿机制对于每一个部门都很难定义,而且都是需要先贡献,过一段时间才能获得回报。这对于一个组织来说,本身就是一个很大障碍。可见,建立SOA需要重新搭建企业组织架构,需要每个部门公开自己的信息作为前提,这就很容易牵扯到每一个部门的利益。

    对企业来说,能否成功实施SOA并不仅仅是一个技术问题,它还涉及到战略、商业模式、组织、业务流程甚至企业文化等诸多管理问题。在帮助客户实施SOA的过程中,首先遇到的就是管理难题,其次是沟通协作,最后才是技术。

    所以说,尽管从外表看起来SOA是一个技术投资,但是从内在实质来看,SOA更多还是一个管理问题。

    在技术和管理之间找到平衡

    实施SOA并非只有技术问题,关键是以技术变革解决企业管理变革难题,现在一些企业已经开始通过SOA实践实现业务变革的目标。

    自2004年起,中远集装箱运输有限公司基于SOA开发新的电子数据交换(EDI)平台,他们的实施经验表明,真正的SOA实施应该是以业务为主导。中远集运内部由资深业务人员组成企业资讯发展部(BPS),从业务视角搭建整体IT架构。

    “我们的经验是,SOA更多需要业务流程等前提投入,BPS在SOA项目之前就在搞业务流程优化,这为SOA项目奠定了良好的基础。” 中远集运计算机中心研发负责人马涛认为。在项目实施之前,中远集运把业务流程从头到尾梳理一遍,定义了业务关键点,以及明确每个关键点将涉及到哪些关键业务操作,分析这些关键业务操作中哪些与EDI平台相关,EDI平台又需要为这些业务操作提供哪些服务,最终中远集运为EDI平台定义了40多个基于SOA的服务。

    不难看出,在中远的SOA项目中业务与IT配合十分关键。业务部门要理解IT的需要,同样,IT部门也要理解业务流程。相互良好的配合才能实现整个项目的顺利进展,如果一开始就站在IT角度,肯定无法顺利完成这个项目。一个成功的SOA项目一定是一个兼顾管理和技术的项目。

    尽管SOA在本质上是一个管理变革,但是在实施方面却不能偏重业务部门,还是要由IT部门进行统筹。在这一点,很多中国企业都走过弯路。

    根据埃森哲的发现,中国企业具有很强烈的分散式管理特点,体现在IT管理上就是,各个部门的IT经理除了要向CIO汇报外,也要对该部门的业务负责人汇报,这使CIO的管理权威大打折扣。相当一部分的SOA项目因为没有建立起一个相对权威的领导部门最终失败。

    此外,SOA决不是简单的一蹴而就的项目,而是一个有可能需要耗费几年时间,需要分阶段实施的蓝图方案。实现SOA首先必须面向整个企业对需求进行全面的评估,同时企业必须认识到,“SOA是一个征程,而不只是一个项目或计划。我们无法将卡车开到你的门前,给你一套软件,或提供几位专家让您的企业在一夜之间就变成SOA企业。”这也许是对SOA项目的最直白的描绘。
 

0
相关文章