信息化 频道

SOA重塑证券企业应用架构

  【IT168 信息化】IT建设:路越走越窄

  随着证券业务的快速变化,企业IT投资越来越大,系统越建越多,IT建设的路反倒越走越窄了,越来越难以快速应对频繁的业务变化发展的需要。

  目前,证券企业拥有了众多的IT系统,使用不同的架构和平台。如证券交易系统、企业的互联网站、办公自动化系统、客户关系管理系统、数据仓库、商业智能(BI)系统、总部综合管理系统、财务管理系统等等。其中证券交易系统是企业的核心系统,证券交易系统在渠道接入方面又包括柜台交易系统、网上交易系统和电话委托系统等。这些系统的大部分来自不同的软件开发商,少数由企业自行开发。

  证券企业内的各系统之间有着如下三种不同的联系:

  ● 相互独立。如企业的互联网站、财务软件等都独立于其他系统。

  ● 通过专用程序把一个系统的数据传给另一个系统。

  ● 通过TCP/IP包交换接口进行系统集成。

  证券交易系统通过TCP/IP包交换接口进行系统调用或集成,主要的缺点是没有统一的TCP/IP包交换接口标准,且只提供与证券交易相关的接口,证券交易系统其余的众多功能并没有提供接口,其他系统无法重用这些功能。通过TCP/IP包交换方式调用对编程也不便利。

  与TCP/IP包交换接口相比,通过专用程序进行系统集成要更糟糕得多。以转存营业部证券交易系统数据到总部各系统的数据采集程序为例,如果要更改或增加采集数据内容,需要熟悉数据采集程序的全部源码。由于IT人员流动性高的特点,几年前编写数据采集程序的开发人员已经离开公司,因此必须让新的维护人员去熟悉这些源代码,然后才能进行修改。

  

  重构功能,还是梳理流程?

  证券企业实施SOA,首先要做全局规划。由此引申出两条道路,是从重构功能入手,还是由梳理流程开始实施SOA?

  证券企业实施SOA,首先要做全局规划,要对自己所有的系统做全面的评估,要了解这些系统有哪些功能,哪些系统中具有共性的功能可以跨系统复用,有多少系统需要改造,还需要上哪些新的系统。

  SOA实施先从影响小的部门级系统入手,从办公、管理、决策分析等非核心应用系统开始,立足现有系统,循序渐进地开展SOA。证券企业的总部综合管理系统(包括稽查监控,各种业务查询与汇总,业务报表等)是不影响企业实时交易业务的系统,适合最先实施SOA的系统。

  如何识别服务是实施SOA的关键,服务必须代表有形的业务概念。确定服务模块有两种方法。

  一种是从软件功能的角度:将现有应用系统中所能提供的功能以列表的形式列出,如果发现相同的功能模块在不同的系统都有所实现,那么这些功能模块可以以服务模块的形式加以合并和重构。这种方法是基于软件功能层面的,所以是低级的确定服务的方式,相对容易,可以在实施的初期使用,然后再逐渐调整。例如查询客户资料(包括客户资金,股票等)功能是证券交易系统、客户关系管理系统(CRM)、总部稽查监控管理系统等都有的功能。像这样一些多个系统共有的软件功能,同时又是有形的业务功能就可以作为SOA的基础服务。

  另一种是从业务流程的角度:通过对业务流程进行分析,可以清楚地知道我们需要完成什么样的工作,对于这些工作,又需要什么样的信息系统。由此可以清楚地知道哪些功能性要求可以以服务的形式加以实现。对业务流程进行充分的分析可以帮助我们更好地了解其业务流程,明白真正需要的是什么,从而更好地改善企业的业务流程,提高其效能。对于SOA架构的系统而言,服务模块最好通过业务流程管理来确定。

  如上图所示,是股票委托业务流程的主要步骤,该流程与银证转账服务资金转出的业务流程有些共同的步骤(确定客户可用资金余额,冻结转出资金,根据银行确认将冻结资金转为资金减少)。这些为多个流程所共用并具有有形的业务功能(如冻结资金)可作为基础服务,而股票委托业务流程,银证转账业务流程将作为核心的流程服务以及公共企业服务(跨企业服务)。

  服务的四个级别

  SOA分为不同的成熟级别,SOA的成熟度越高,所实施服务的难度越大。下表是四种实现不同SOA成熟度的服务,依次从低到高递增。

  实施SOA按照循序渐进,由易到难的原则,从基础服务开始依次实施这些服务。随着SOA的不断扩展,成熟度也不断提高。

  证券企业现有各类业务系统交换的大都是数据,如证券交易数据、股票行情数据等。通过SOA,各类业务系统交换的不是独立的数据,而是服务之间的相互调用。通过增加一些Web服务,使得数据采集程序存取数据都使用Web服务,将原有的数据采集程序整合为向SOA提供ETL(抽取、转换、装载)服务,将数据仓库从一个数据源演变为能独立提供服务的系统。这样只需要把ETL、数据仓库的服务接入到ESB(企业服务总线)中,总部综合管理系统的应用程序前端和商业智能BI前端工具就可以方便地从ESB中获取需要的服务,通过调用服务来获取证券交易系统或数据仓库的数据,而不是直接取得数据。这样当抽取装载的数据结构发生变化时只需修改相关的服务即可,增强了灵活性。

  企业中软件开发商提供的软件产品的SOA实施较难控制,很大程度上取决于这些软件产品本身的架构。如证券交易系统。开发商最关心的是该系统的功能是否满足要求,而不关心该系统的功能是否被其他的系统重用。因此需要向开发商提出,在不影响交易效率的情况下提供企业所需功能的Web服务,这在软件产品升级时更容易得到厂商的支持。

0
相关文章