SOA重塑證券企業應用架構

CloudSpace發表於2008-08-20

  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服務,這在軟體產品升級時更容易得到廠商的支援。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14789789/viewspace-430104/,如需轉載,請註明出處,否則將追究法律責任。

相關文章