中外运:信息系统实施服务导向架构(SOA)的实践之路
2007-2-14 15:31:00 来源:物流天下 编辑:56885 关注度:摘要:... ...
据有关报道:作为国内实施服务导向架构(SOA)的先行者,中国外运股份有限公司(下称中外运)2年前就在其核心业务系统“海运船货代系统”实施了SOA的架构。
采用SOA架构使得中外运构建这样复杂的业务系统变得更加灵活,从而更快地响应业务的需求。
“海运船货代系统”是中外运的一个核心业务系统,有将近200多家分支机构、上万名业务人员都在使用这个系统,涉及的营业额每年达上百亿元之巨。
由于中外运不同分支机构、不同地区的业务不尽相同,以及各地海关、港口的要求、流程有所差异,所以各地分支机构对于信息系统的要求也不完全一样。中外运原来的业务系统就是由各地30多个不同的系统“拼装”而成的。但随着业务的发展,这种系统“诸侯割据”的局面必须改变,否则会越来越影响数据的及时传输和共享。
中外运决策部门和IT团队经过讨论,认为对这么多基于异构平台的系统进行集成的代价太大,最后决定重新开发一个统一的核心业务系统。这个系统要照顾到各地业务模式的差异和需求的变动以及今后的可扩展性。中外运信息管理部负责人说:“这是我们最后选择SOA的根本原因。”
事实上,中外运采用SOA架构和编程是在2004年春节后。之前的一年,有60多人的IT团队一直在进行业务梳理、需求分析以及架构讨论的工作,他们同时还请了惠普公司(HP)作为咨询顾问。当时SOA还没有像现在这样被炒得热火朝天,但是需求分析的最后结果是只有实施SOA,才能解决开发复杂系统所面临的各种问题。
据介绍,“海运船货代系统”涉及的业务、用户比较多,既有内部的也有外部的应用,是一个相对复杂的系统。实施SOA的架构后,不同系统、不同模块之间的关系被统一为“请求和服务”。系统构建者可以只关注每个功能点及其提供的服务,而暂且不必考虑模块相互间的关系,避免了系统由于复杂而出现的混乱。另外,由于系统工程浩大,“海运船货代系统”由不同的人开发不同模块,相互之间协作比较困难。SOA的架构提供了统一的软件工程标准,使得不同模块开发人员之间的沟通更加容易。还有重要的一点是,中外运各地的业务模式不完全相同,往往80%~90%的业务相同,还有10%~20%的业务却不相同,甚至不兼容。应用SOA就可以在已经开发的功能模块上做一些修改,从而减少很多重复的工作。
实践证明,中外运选择SOA的架构是正确的。目前“海运船货代系统”已经在中外运的大部分分支机构上线并使用,成为该项业务的有力支撑。张思宇表示,随着分支机构扩展或者业务变化,需要对系统进行相应改变时,他们就不需要像以前那样重新写编码,只要把现成的相关模块做一些修改,就可以封装成新的服务。
作为中外运实施SOA的负责人曾先后被几家软件厂商邀请参加相关SOA会议,当时他听了半天,也没听明白厂商所讲的SOA到底是怎么回事;而他在某次会上的演讲,也让下面的听众面面相觑,小声嘀咕“怎么和厂商说的SOA似乎不是一回事”。
事实上,中外运在搭建该系统过程中,并没有购买任何SOA厂商的产品,整个系统都是按照SOA的架构自己开发的。张思宇表示,两个应用系统或功能模块之间在搭建的时候也可以按照SOA的架构,相互注册服务,而不需要再通过中间平台。软件厂商的SOA产品类似这样的中间平台,更适合已有现成应用系统的企业。这样的企业通过使用厂商的SOA产品,实现SOA的架构会更容易。
先将业务流程和需求梳理出来,然后做出一个个服务模块,这种事先把系统功能完全抽象成SOA模块的做法在企业中几乎很难实现。尤其对于复杂的业务来说,工程过于浩大。中外运的做法是,先做出各个功能之间耦合比较紧密的程序,然后将程序切割成小块,每一块再做一些相应的修改,形成耦合比较松的关系。
尽管SOA给中外运的核心业务系统带来了更大的灵活性,但中外运信息管理部负责人并不主张所有的企业信息系统都“SOA化”。他表示:“SOA可取之处很多,但也有一定的弊端”。最大的弊端是资源代价大,程序复杂,程序运行中的一些步骤会耗用大量的资源。另外,SOA项目周期相对较长,投入较大,短时间内不一定能看到回报。所以,企业的应用程序如果不是很复杂,就不一定要实施SOA。 “企业一定要清楚,为什么要实施SOA,是否有这个需求。”
Copyright © 2006-2020 56885.net All rights reserved..