首页 > Linux操作系统 > Linux操作系统 > 银行SOA之路有多远
2007年11月,IBM画出了六大行业的SOA(面向服务的架构)落地路线图,并发布SOA技术白皮书,仿佛实施SOA已箭在弦上。同月,普元的SOA中国路线图技术实践全国路演继成都、广州、上海之后,在北京落幕;今年的全国路演也即将拉开帷幕。思杰(Citrix)自进入中国,就始终坚持将业务“交付”出去的方案策略,提出了SOA的另一面——应用交付。麒麟远创搭车SOA,推出了新一代业务驱动的银行综合前置系统。TmaxSoft公司也将其在韩国新韩银行核心系统的SOA实践带入中国……主流IT企业纷纷推出基于SOA的产品。然而与产业界的火热相反,用户似乎并不为所动。尤其是一向走在信息化前列的金融行业,对SOA的反应显得过于冷淡,在银行业要找一个SOA的应用案例似乎不太容易。
金融业对SOA究竟是如何考虑的?是什么阻碍了SOA在金融行业的应用?前不久在北京召开的“2008中国银行业SOA应用发展论坛”为金融与IT产业界打开了一扇沟通之门。
银行是否需要SOA
SOA由Gartner在1996年首次提出,后又预测2008年SOA将成为占据绝对优势的软件工程技术。多年来,相关IT企业从未停止对SOA的宣传、推广。从2005年的理念传播,到2006年的产品发布,乃至2007年的企业SOA框架和路线图研讨,似乎不实施SOA已有落伍之嫌。然而银行是否确实需要SOA,曾经备受争议。
中国银行业面临的首要问题是如何向全球的银行靠拢,普元公司董事长刘亚东认为,必须在3~5年内完成“靠拢”,否则面对外资银行的进入,国内银行就会失去竞争力。银行业需要SOA的重要因素之一是IT必须满足业务流程在极短时间内的变化需求。SOA的核心是把巨大的软件变成若干个很小的基于流程的模块。例如,我们看到的不再是一个信贷管理系统中600万或者1000万个业务,而是信贷管理系统中的2000个业务流程,并封装成不同的服务独立存在。
对SOA的理解,大家有不同的视角与看法。按照SandyCarter在《SOA&Web2.0——新商业语言》中的观点。SOA是一种业务驱动的IT体系架构方式,支持对业务的整合,使其成为一种相互联系、可重用的业务任务或服务。
“其实银行早已注意到了SOA理念的提出,从对理念的接受来讲,银行不仅接受它,而且已经将SOA的理念应用于实践中。”中国人民银行科技司副司长李晓枫在本次论坛上表示。金融业竞争激烈,业务要求快速部署、灵活反映。如何做到业务的柔性、弹性是科技部门一直关注的重点。而且将SOA理念运用到银行信息化工作中是一种有益的尝试。银行在IT规划和应用架构设计上,对系统的柔性要求很高,如核心业务系统,虽然设计得很小,但很稳定,其外围灵活,易于配置,是SOA理念的具体体现。其次在业务产品的创新、业务流程的重组等方面,也需要实现SOA的灵活性。此外,网上银行、呼叫中心都应加入SOA的服务范畴。
据记者了解,正在紧锣密鼓研发中的中国进出口银行新一代核心业务系统就采用了SOA的架构设计理念;中国人民银行清算总中心的第二代支付系统,也将考虑SOA的先进理念,使系统更加灵活、高效。
银行需要什么样的SOA
SOA的明星效应风靡全球,一些IT企业纷纷搭乘SOA列车,将产品披上SOA的外衣,为行业用户讲述SOA的优势与价值。然而,SOA与中国银行业的实际应用距离有多远?什么样的SOA可助力金融信息化?
“四年前我们就开始和银行谈论SOA了”。IBM高级技术执行官程静将银行业对SOA的认识分为了三个阶段:初次接触时,银行认为IT企业是在谈理论、讲概念。与其通过相关IT产品来实现银行应用间的交互连接,还不如科技部门自己去做应用间的接口。第二阶段,银行认为IT企业是在谈论企业服务总线(ESB)、银行应用集成(EAI)。经过多年的研究与积累,程静认为第三阶段从2007年开始,SOA就与实际应用更加贴近了。对银行的业务人员来讲,SOA是“业务服务集”,可根据业务的动态需求,快速调整IT所提供的服务;对应用开发架构师而言,SOA属开发或架构的方式方法,通过重用、动态组合等技术手段,简化应用的部署过程。
从银行信息化发展来看,银行所需要的并不是IT企业标榜SOA的产品,银行IT人员自己也可以通过C、Cobol等工具开发相关的SOA产品;更不能认为只要部署了相关的SOA产品,我们就SOA了。
李晓枫强调,银行需要利用SOA的先进理念来指导信息化工作的长远发展,通过SOA的架构设计、软件开发有利于对业务进行整合,快速部署新业务。银行业在应用SOA时需要注意两个技术问题。
一是SOA和WEB服务的关系问题。SOA早于XML和WEB服务出现。SOA在技术上的重要特点是连通和重用,XML和WEB服务的标准化、与产品平台的无关性可将SOA推向具体实现层面。我国银行业信息化起步较早,还存在许多基于传统技术的应用,如采用C、Cobol、PowerBuilder开发的软件普遍存在。但掌握JAVA、J2EE、.NET的技术人员逐步占据人数优势。传统技术路线的应用以其稳定、专有、安全见长,但由于技术趋冷,会导致总体拥有成本(TCO)上升、运行风险加大。目前各银行在核心应用上普遍采用传统技术,非核心银行应用积极选择JAVA技术、J2EE架构,推行WEB服务。由于担心WEB服务的不稳定、低效率、耗资性、难控制、存在安全风险等问题,在银行核心应用中少有采取WEB服务的技术案例。因此银行在实施SOA时,需要不断审视、评估技术路线和项目方案;从业务驱动的角度,改进原有架构的应用弹性,利用新的服务模块迅速部署。
二是ESB的规划问题。ESB作为实现SOA连通和重用的技术基础设施,是促使企业开展更高价值的SOA项目的技术先决条件。其主要功能包括服务之间的消息路由、传输协议转换、消息格式转换和服务质量管理等。如果ESB规划不好,容易出现ESB产品选择不当、滥用的情况,带来ESB本身的连通和重用问题。引入ESB意味着增加了一个集中处理环节,因此需要正确处理ESB的服务监控、高可用、服务质量管理和服务连续性。
找准SOA的切入点
据了解,在美国市场,SOA项目有3类、7个切入点。第一类,提高客户服务。其中包括用信息手段为客户提供高品质服务、让客户的数据通过统一视图呈现出来、与客户互动。第二类,应用结构优化。其中包括让系统更灵活、更经济、更易创建。第三类是跨企业集成。中国的市场与北美有很大不同,金融业也不例外,我们如果简单地把美国银行的流程搬到中国的银行,绝对行不通。因此银行需要结合自身需求,寻找适合的SOA切入点。
Carter在对SOA的描述中指出,SOA的切入点包括人员、流程、信息、重用以及连通性。其中重用和连通性是以IT为中心的切入点,为企业提供IT基础;人员、流程和信息是以业务为中心的切入点。此外,SOA相关IT企业也都结合自己的产品,从银行业非核心系统切入,开展实验性尝试。
对银行而言,切入点的选择已经从技术选型转变为了业务问题。李哓枫指出,仅从人员角度出发,首先要求IT人员了解业务,同时要求业务人员精通技术。其次是怎样通过流程封装成一个个的服务,具有技术和业务的难度。人员、流程、信息三个纬度决定了SOA切入点的选取应从业务出发。
结合自身的实践经验,交通银行软件开发中心周衡昌处长认为,银行应考虑实际情况,以一个独立的项目为主,制订明确的目标,采取循序渐进的方式创造和重用服务,并随着时间推移逐渐完善SOA应用。这不仅是技术问题,更重要的是银行的业务需求及整体规划。通过交通银行SOA架构的成功上线,我们体会到从ESB切入,通过建立一个总线,逐步连接其他应用,或许是不错的选择。
SOA如何落地银行业
IDC在2007年发布的SOA技术白皮书中称,2008年是中国企业的SOA应用实施开局年。然而,对中国银行业来说,SOA应用之路似乎还面临着诸多挑战。会上,来自银行界的领导一致认为,现阶段银行业的SOA应用之路还需要跨过以下四道槛。
复合型人才需尽快出炉
复合型人才是建设现代化银行的宝贵资源,是SOA的应用基础。银行要部署SOA,实现信息的集成应用,迫切需要业务人员普及IT知识。服务的重用、系统间的联通性、服务的共享等技术问题,IT部门可以自己解决。而SOA的灵活应用是建立在业务人员对IT深度了解与熟练掌握的基础之上的。此外,由业务部门提交需求说明书,科技部门进行开发的传统方式需要改变了。科技人员要加快对业务知识的学习,只有科技部门有懂业务的人才,业务部门有懂科技的精英,SOA的成功实施才能提上日程。
明确“服务”提取的主角
SOA的核心是“服务”,怎样消除业务流程冗余,提取核心服务单位,一直没有被旗帜鲜明地提出来。怎么提取,由谁来提取,是问题的关键。对此,人民银行由科技部门重新梳理开发的软件,将可以重用、复用的流程单独提取,作为服务包,最终让多个系统共用。
商业银行的服务单元提取问题有待进一步明确。如果由业务部门来提取,他们缺乏相关的IT背景与意识;如果由科技部门来提取,是否会越俎代庖?如何引导业务部门重视核心单元的提取问题,值得思考。李晓枫指出,要以业务为中心,加强信息资源规划,把握我国改革和业务发展出现的有力时机,促进业务流程和业务模型的优化,最终实现服务重用。
标准化制订成关键
长期以来,软件行业缺乏规范的标准,难以形成足够的标准化构件。SOA的成功实施,首先要加强应用标准的制订工作,规范SOA的相关技术应用,保证技术上的连通和重用;制订业务标准,加强业务横向联系。
如果没有标准的服务开发规范,每个人、每个系统就会通过不同的思维方式,最终使服务种类五花八门,降低SOA服务的通用性。周衡昌详细介绍了交通银行在SOA项目实施过程中的标准化制订工作。首先要制订标准化“服务”的开发规范。怎样的业务模块才是“服务”,又如何才能从业务需求中分析出“服务”,需要一套可行的规范。第二,“服务”交互技术标准的确立。SOA实现随需应变的关键是标准的“服务”能够快速拼装出新的功能。即要求“服务”技术的实现必须做到平台的无关化,且得到主流应用开发平台的支持,软件开发人员仅需考虑应用功能的实现即可。
科技先行,需业务驱动
科技人员眼光要长远,规划要有预测性。但从具体的产品开发、实现来讲,还是要坚持以业务驱动为导向。业务部门必须拿出很好的需求说明书,科技部门才能着手开发。SOA的实施需要倡导“科技先行,业务驱动”的发展模式。完善业务和技术的协调机制,促使业务和技术协作。开展对流程、应用、数据和技术的全面管理。落实服务的定义者、提供者、使用者和管理者的角色,建立与SOA相适应的组织架构,将流水线作业思想引入软件开发过程。不断完善应用、数据和技术架构,合理区分信息系统前后台建设、渠道建设、安全建设,提高系统架构的灵活性。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/22954790/viewspace-629836/ ,如需转载,请注明出处,否则将追究法律责任。