学做架构师
辉瑞制药公司中国区的SOA项目目前还处在架构阶段,在接下来的2年里,辉瑞制药公司中国区会构建15个左右不同的应用系统,包括客户关系管理(CRM)、供应链管理(SCM)、工作流程(Workflow)、人力资源(HR)、呼叫中心(Call Center)等。潘俊杰现在要做的是把这些应用进行重新梳理,找出这些应用共同的“服务”需求。
中远集运公司的EDI项目第一期已经完成。经过 1年多的实践,陈怀海对“服务”的概念已经有了很清晰的认识。他说:“我们过去所说服务只是技术服务,比如读写服务、邮件发送服务。而SOA所谓的‘服务 ’是根据业务需要,把技术服务进行归纳封装,形成一个‘服务’模块。面向应用的时候,只要把这些模块按照一定的流程组装起来就可以了。”
潘俊杰举了一个例子,辉瑞制药公司中国区的很多应用都需要和员工数据库相连,这个共同的需求可以做成一个服务模块。很多应用的工作流程会有重合的地方,比如请假系统和考勤系统,每一名员工都要向他的上级汇报。这样的一个流程也可以做成一个服务模块。这些模块在今后的系统建设中都可以重复利用。即使有新的应用,也只要把这些模块按照新的规则重新组装一下,最多做一些小的改动或增加一些新模块。
听起来似乎很容易,实施起来却费劲。中远集运公司EDI项目的第一期从2004年10月开始进入论证阶段,20多个EDI项目组成员,加上IBM公司SOA实验室10个资深专家,历时1年多。在这个过程中,研发、实施、测试等还是同时进行的。潘俊杰说,观念的改变也非常困难。辉瑞制药公司中国区的SOA项目除了合作伙伴萨蒂扬计算机服务有限公司(Satyam Computer Services Ltd.,下称“萨蒂扬公司”)的实施顾问外,还有自己的实施队伍。4~6名资深人士专门负责系统架构工作,光架构工作就做了4个月。潘俊杰说:“要改变观念,学会从服务导向的思路去考虑架构,但很多人并不知道怎么做。”
这正如毛新生在他的一篇文章中指出的,如何找到和确定服务,如何处理服务粒度(Service Granularity,即服务所公开功能的范围),如何通过服务体现和实现业务目标,如何详细说明服务,如何确定与已有系统的关系等,这对很多IT组织机构都是一个难题。
先锋者的条件
中远集运公司的EDI一期项目完成了公司在国内所有EDI平台的整合,下一步他们准备完成全球的整合。SOA的有效实施,使得中远集运公司厦门口岸的EDI项目只用了2天左右,陈怀海说以前至少需要2~3周。同时,由于统一了应用,众多硬件平台也简化成两个硬件平台。马涛认为 SOA带来了“基础设施简化,维护成本降低,IT系统灵活性增强”的好处。潘俊杰对此表示强烈认同。
国内的SOA应用环境还没有成熟,先行者并不好当。马涛认为,第一,企业自身需要一支成熟的IT队伍,否则就会完全听从第三方而没有主见。第二,IT队伍必须熟悉公司的业务。中远集运公司有专门的企业咨询发展部,是计算机中心的直接用户,负责提出业务需求。而计算机中心有业务分析小组,小组成员基本是IT背景,对业务相对熟悉。企业咨询发展部和业务分析小组相当于业务部门和IT部门之间的桥梁。所以,他们能够很快地梳理出服务。第三,企业要有一定的商业科技基础知识。用户对需求有一个认知的过程,没有一定的商业科技,他们很难提出需求。
潘俊杰则认为,SOA实施周期非常长,需要和业务部门有很好的沟通。因为项目的成功需要IT部门和业务部门的相互理解,紧密配合。另外,他认为,对合作伙伴的选择也很重要,要综合考虑很多因素。辉瑞制药公司中国区最后选择萨蒂扬公司作为合作伙伴,正是基于对供应商能力的综合考虑。辉瑞制药公司中国区要寻找在中国有分公司的供应商,供应商必须精通微软公司(Microsoft)的平台,同时熟悉技术和业务,包括熟悉CRM系统并通晓医药行业等。“不能只是关注他们在SOA方面的能力,我们综合考虑所有的需求。”潘俊杰总结说。
(信息周刊)