本文讲的是国家开发银行统一软件环境USE解决方案,近日,第四届中国SOA标准化研讨会成功召开,会议上来自各行业专家、用户、政府等相关人员,就SOA 标准以及发展进行了相关的探讨。以下是上海普元信息技术股份有限公司 战略技术总监钱军就国家开发银行统一软件环境USE解决方案做了详细的介绍。
▲上海普元信息技术股份有限公司 战略技术总监钱军
现在压在咱们这个IT程序员身上用户给他们三座大山,其实站在用户的角度看,我们的技术也给他们压力有三座大山,现在一个是技术,今天刚才用GTE,明天就SOA了,明天云的又来了。第二个是你这个产品版本升级,你3.0还没有用熟呢,马上就到10.0了,这是第二座大山。第三个,我这边技术还没有怎么做好呢,结果人走了。这三座大山也是压得用户够呛,我们SOA到底能干什么?某种角度可以换一个思路,如果我们程序员把三座大山都背在身上的话基本上是无解。如果用户把这个技术问背在身上的话也是无解。我们可以从技术角度看用户的三座大山,如果放在旁边看的话就是三座金山,是我们取之不尽的财富资源,如果他们没有什么需求的话我们就没有事干了,所以换一个角度看这个问题也可能有更好的想法。
回到国家开发银行的项目,国家开发银行是作为一个金融里头的政策性的银行,他的主体的业务,随着这个银行的不断地改制和变化,它有很多的变化,从07年以后的话,他本身自己有一些政策性的投资逐渐地增加了他的金融产品,本身他对他的业务上,IT的支撑系统也提出了很多这样的要求。我在第一条跟大家分享的就是他自己制订的IT整体上的规划,他们在执行的时候他基本上每年大概会有什么呢?上百个项目要去实施,这些项目主要是说,是说软件开发的项目。在他的角度来看的话,他做的两年之后发现很有问题,问题很简单,就是我刚才给大家描述的压在客户身上也有三座大山,他周边有十几家厂商,他要协调这些厂商的关系并且他们的需求在不断的变化,银行也是变得很快的,有可能要涉及到调整一个表单,发现这个表单可能涉及到几个系统。要去跟N个厂商沟通,如果有的厂商还说对不起我给你开发的这个技术员工走了,要重新了解的话要很长时间,他跟领导汇报,领导说不行,下个月比较搞出来,这样他就很难办了.
从他这个角度来说,当我这个企业对自己的IT系统有了一种比如说管控的要求,我自己,因为我是要把它交给开发商开发,但是我自己对这个系统有多大的程度的掌控能力,当他有了这个方面的切身感受的时候,可能SOA就离他不远了,在这个情况下他到08年开始,他们专门成立了一个应用架构的小组,这个架构小组干什么呢?想做一个自己的平台,用平台的这种思路,是不是想去解决什么呢?解决他们刚才说的这些业务的问题。那么,他们的这个,我们也介绍介绍用户怎么去选择这样的一种平台,他们自己的话,当然要进行调研,形成他们的一些选型报告,同时他们还要到先进单位,比如说在他们系统内部,在G2E这个方向上,中国建设银行做得更好,因为建设银行有2千人左右的开发队伍在G2E上,所以他们专门去取经,专门跑到建行在厦门的开发中心,看建行的平台是怎么做的,在这个基础上面他们形成自己的调研报告,当然结论的话是什么呢?我今天能够站在这里给大家介绍国家开发银行的案例,是因为他们最终选择的技术实施的路线当中有普元参与其中。这样的话我们才有这样的机会跟大家分享这样的案例。
那么实际上的话,围绕说整体上国家开发银行想做的这些事情,最根本的目标就是要改进软件的这个交付和应用管控的能力,这是一个,他们认为这是一个持续的过程,不是一朝一夕,我今天建设完就能改进的过程,实际上他是一个持续改进的过程,但是它必须迈出一步,迈出这一步的话,刚才就是说,他实际上最想解决的问题就是什么呢?不是说我软件的互通互联的问题软件互通互连是其中的一个问题。但是如果说我是甲方,我能够看清楚我未来十年的业务变化,如果我能够决定只用一家开发商,这家开发商十年不变给我服务,所有的SOA的问题,用最简单的方式就解决了,对吧?我做一个统一的规划,然后用这一个公司给他付十年的钱,把钱都给他,合同签好,让他的这支队伍在我这儿根深蒂固,那么所有的业务就都做到了。但是问题我的业务不能看清,开发商业务这边我也不能看清,两者都不能看清,我还想持续改进我的能力怎么办?就必须从组织、工具,过程和复用去考虑一种渐进的和支持的模式。这种模式和普元有什么关系?
普元核心的说,我们自己有大概十年左右的时间,致力于在这个方向上,公司的一个解决方案的特点是什么?普元本身自己是提倡一个SOA的平台化组件化,产品化的这样的一种解决方案,什么意思呢?就是普元本身通过这些年自己积累了几个底层的核心平台,这几个核心平台包括围绕开发平台的EOS平台,还有围绕着业务编排的流程平台,以及围绕这个服务的治理和管理的ESB平台,这些平台不是同一年进行部署的,而是根据自己的业务需求不断积累起来的,在这样的基础上,他为了面向每个客户都提倡基于自己的平台,然后通过用户的需求,我们自己通过自己的知识库,构建库,组件库,完成客户最终的平台化,这样的解决方案的思路,正是这样的思路和国家开发银行,刚才我讲的他的这样的需求,两者一拍即合,形成最终下面的这样的一个整体上,国家开发银行的一个,他们叫统一软件环境的这样的项目。这个项目就是为了整体上是作为国家开发银行,统一的所有的应用的一个开发运行管理的这样一个支撑性的平台,这个平台的核心目的,就是为了去把刚才我们讲的,对应用的交付和管控能力这件事情要落地。
如何落地呢?就落在了这样一个从标准到产品工具的这样的系统中。这个系统的话,首先是由什么?是由一组规范组成的。包括项目的实施到方法论,以及到技术上的一些规范,这些规范我们说,如果要落地,必须固化到一些直接能够指导项目的开发、管理以及应用的过程中,所以这样的话就要固化一组环境,这组环境,最主要的包括集成、监控、运行环境,以及上面围绕他的整体业务的一组可复用的业务框架,这是在平台要固化落地的东西,这些落地的话要沉淀成什么呢?
最初是普元提供的一个知识库、固件库,要按照他们的规则,沉淀成国家开发银行面向他们自己的所有的应用的一个知识库、服务库。每一类的东西都要起到他的不同的作用,这样的话去形成一个整体上的软件的统一环境。SOA起到什么作用呢?我用这个图解释一下。
SOA首先是什么?SOA是作为一种软件技术,如果我要去做一个软件,在SOA来看的话,你就是在做一个组件,在做一个松耦合的模块,这个模块按照SOA的定义,我们用黑框框住,这是一个组件包,这个包是为了形成一个松耦合的可管控的模式,这是一个分层的结构,在这个组件包当中清晰地表达了SOA技术结构在这个系统中的应用。因为从普元来讲,从2007年以后,它的产品就完全支持了SOA,我们所制订的SCA和SDO(音)体系,所有的SOA技术对软件的组件包来讲是符合SOA的规范的。其次对于组件包和组件包之间,他们之间的这个数据交换和上下文环境,我们会让它形成一定的规范支持,同时这样的一个组件,它本身需要和哪些打教导呢?要和服务管理、统一报表、流程引擎打交道,所以要在整个平台上要有一组访问接口,这样整体上的话SOA落地到这样一组平台和工具上,落地到几个方面呢?
1、他们的技术架构 ;
2、软件开发和运行,我们的运行是在整个G2E的环境下,现在目前还不能跨到点NET上,我们目前还只是在G2E上面做这个事情,这是整体深,技术上的SOA的架构。我们刚才说SOA还应该包括一些方法论和实施方法,这个我们把它分成,我们按照方法规范平台工具,我们说知识积累和组织建设,把它分成三个方向去进行。这个东西有好有坏,不是说每一家都要遵循一定的(规律),但是应该说做一种持续的演变的考虑。
我们还要强调的是,从SOA来讲,做一个项目要有一个面向SOA,面向服务的设计过程。不管你是做互联互通也好,还是做接口也好,如果你不从服务的方法来考虑设计,那个接口不会自己长出来,系统的互联互通不是整个变的,他是在整个系统的做之前,要按照服务的方向去做一定的分析和设计,去考虑一定的面向未来业务变化的冗余,这个方法是一定要做的考虑。当然整个项目的话,如我们讲的,必须有一定的对过程的指导意义,这样的话它就会落在一组开发过程的规范上面,包括软件的开发,以及等等这些方面。
整个项目的话,目前已经实施完全完成了,而且在这个上面已经有国家开发银行的11个项目在整体的这样一个统一的,SOA架构上去实施,包括神州数码、包括东南融通,包括宇兴一城(音),很多的他们的外包上,都在这样的整体架构下去组建自己的构件,形成一个良性循环的过程。
总结一下,SOA到底会形成什么样的技术路线?我们认为目前,对于某一类用户是非常有用,这类用汇首先自己有积累,对SOA技术规范有心得,这样他能沉淀成SOA给他提供的这样一种框架,是一种能够继承开发环境、管理环境和运行环境的完整的框架,以及可以复用的技术资源,这个技术资源包括技术组件也包括业务组件,能起到哪些成效呢?从软件的生命周期,到我们讲的最大限度降低对外包上的依赖,形成自己对系统的管控是非常重要的,普元在这个方面拥有自己的SOA的信息技术,我们标准组也正在积极申请这样的一个专题是叫继承服务开笔,我们想的话,服务和构建可视化这两个方向,我们希望有更多的单位一起参与,做出一定特色的满足中国用户需求的这样的规范。
作者: 紫甘蓝
来源: IT168
原文标题:国家开发银行统一软件环境USE解决方案