銀行代理業(yè)務(wù)經(jīng)過(guò)近10年的發(fā)展,正日益成為各家銀行增加利潤(rùn)、留住客戶的主打形象產(chǎn)品。在此主要從技術(shù)上討論代理業(yè)務(wù)平臺(tái),是如何適應(yīng)銀行代理業(yè)務(wù)產(chǎn)品發(fā)展的需要,從無(wú)到有、從簡(jiǎn)單到完備的發(fā)展歷程。
首先明白一個(gè)概念,什么是代理業(yè)務(wù)?簡(jiǎn)單的說(shuō),就是銀行系統(tǒng)利用自身的網(wǎng)點(diǎn)優(yōu)勢(shì)和客戶資源,為第三方單位如電信、移動(dòng)等代理收費(fèi)、扣款等業(yè)務(wù)。此業(yè)務(wù)是在90年代中期隨著銀行系統(tǒng)數(shù)據(jù)集中、網(wǎng)點(diǎn)互聯(lián)的發(fā)展而發(fā)展起來(lái)的,既方便了客戶、又減少了第三方單位的經(jīng)營(yíng)成本,同時(shí)提升了銀行的形象,也為銀行帶來(lái)了新的利潤(rùn)增長(zhǎng)點(diǎn)。
本人有幸經(jīng)歷了銀行業(yè)的代理業(yè)務(wù)產(chǎn)品開(kāi)發(fā)各個(gè)階段,從手工作坊似的低級(jí)階段,到快速圖形界面定制的高級(jí)階段。并對(duì)多種代理業(yè)務(wù)平臺(tái)有實(shí)際的使用經(jīng)歷和感受。
對(duì)銀行系統(tǒng)的軟件開(kāi)發(fā)人員來(lái)說(shuō),代理業(yè)務(wù)帶來(lái)了新的技術(shù)要求和實(shí)施難度。最早出現(xiàn)的代理業(yè)務(wù)一般是話費(fèi)代收,要求的功能很簡(jiǎn)單:話費(fèi)查詢、繳費(fèi)、對(duì)帳等。從安全性和速度方面考慮,銀行需要和委托單位建立專用的通訊信道,當(dāng)時(shí)一般是申請(qǐng)電信的64kDDN專線。然后由銀行方和委托方商量、確定雙方的通訊協(xié)議以及報(bào)文接口,實(shí)際情況是,一個(gè)委托單位一般不會(huì)只和某一家銀行簽訂這種代理協(xié)議,所以如果委托單位已經(jīng)和其他銀行開(kāi)發(fā)了類似的代理系統(tǒng),那么該委托單位從自身系統(tǒng)的維護(hù)和管理方便出發(fā),是不會(huì)和其他銀行另外開(kāi)發(fā)一套新的通訊協(xié)議和報(bào)文接口的,后期參與進(jìn)來(lái)的銀行就只能使自己的系統(tǒng)適用他們已有的系統(tǒng)的需要了。在當(dāng)時(shí),對(duì)每一家委托單位,銀行都要增加新的前置機(jī)、路由器等等硬件設(shè)備。
經(jīng)過(guò)緊張的開(kāi)發(fā)、調(diào)試、試運(yùn)行,到最后成功上線,一個(gè)新的代理業(yè)務(wù)產(chǎn)品的成功推出總會(huì)激起新的委托單位的興趣,從而導(dǎo)致越來(lái)越多的代理業(yè)務(wù)需求??疾炷菐啄甑你y行信息部門(mén)的人員配置,我們會(huì)很容易發(fā)現(xiàn)一個(gè)有趣的現(xiàn)象,那就是所有銀行都在那幾年中逐步增加了代理業(yè)務(wù)開(kāi)發(fā)部門(mén)的力量,代理業(yè)務(wù)開(kāi)發(fā)人員得到越來(lái)越多的重用。慢慢的,這些軟件開(kāi)發(fā)人員積累了越來(lái)越多的有關(guān)代理業(yè)務(wù)的開(kāi)發(fā)經(jīng)驗(yàn)和教訓(xùn),大家發(fā)現(xiàn)代理業(yè)務(wù)系統(tǒng)做了這么多,其實(shí)不同委托單位的系統(tǒng)是存在很多共同點(diǎn)的,開(kāi)發(fā)人員開(kāi)始感覺(jué)自己做了很多重復(fù)性勞動(dòng),既辛苦,又延長(zhǎng)了系統(tǒng)的開(kāi)發(fā)時(shí)間,于是大家開(kāi)始尋找一種軟件產(chǎn)品,能夠支持任務(wù)繁重的代理業(yè)務(wù)開(kāi)發(fā)的工具軟件,結(jié)果發(fā)現(xiàn)還真有一些很有市場(chǎng)頭腦的軟件公司在做這個(gè)產(chǎn)品。
最開(kāi)始出現(xiàn)的產(chǎn)品還不叫代理業(yè)務(wù)平臺(tái),只相當(dāng)于一個(gè)兼容性較好的通用代理業(yè)務(wù)系統(tǒng),是在對(duì)所有的代理業(yè)務(wù)子系統(tǒng)進(jìn)行了共性分析后,把各子代理業(yè)務(wù)系統(tǒng)整合成一個(gè)大的綜合系統(tǒng),再把該系統(tǒng)分成通訊、業(yè)務(wù)邏輯控制、主控等幾個(gè)功能模塊,通過(guò)參數(shù)配置的辦法體現(xiàn)出不同代理業(yè)務(wù)的特色來(lái)。相比以前的開(kāi)發(fā)方法,現(xiàn)在能夠明顯的提高開(kāi)發(fā)進(jìn)度并保證產(chǎn)品質(zhì)量。
下面我們就分析一下代理業(yè)務(wù)平臺(tái)到底要實(shí)現(xiàn)哪些功能。事實(shí)上,代理業(yè)務(wù)平臺(tái)要完成的功能主要就是通訊、業(yè)務(wù)邏輯控制、流程控制這三大塊,雖然不同時(shí)期、不同軟件公司的平臺(tái)產(chǎn)品看起來(lái)形形色色,其主要功能卻沒(méi)有超過(guò)以上三項(xiàng)功能的范圍。
其中通訊模塊要解決的問(wèn)題就是所有中間業(yè)務(wù)都會(huì)遇到的與渠道、后臺(tái)、以及委托方交換信息的問(wèn)題,一般來(lái)說(shuō),在某一個(gè)銀行內(nèi)部,代理業(yè)務(wù)平臺(tái)與渠道、后臺(tái)通訊,其通訊協(xié)議和報(bào)文接口協(xié)議是比較穩(wěn)定、統(tǒng)一的,所以通訊模塊中針對(duì)渠道和后臺(tái)的子模塊一般都是比較清楚、穩(wěn)定的,所有代理業(yè)務(wù)都共用這幾個(gè)相同的通訊模塊,同銀行系統(tǒng)的核心系統(tǒng)一樣,幾年之內(nèi)都不會(huì)改變。但與第三方委托單位的通訊協(xié)議和報(bào)文接口就不一樣了,基本上每一種代理業(yè)務(wù)都對(duì)應(yīng)一種不同的通信協(xié)議和接口數(shù)據(jù)報(bào)文。
代理業(yè)務(wù)平臺(tái)正是要在這不同的通訊協(xié)議和接口報(bào)文的情況下,為開(kāi)發(fā)人員提供一個(gè)比較統(tǒng)一的對(duì)外通訊接口,使應(yīng)用完全與通訊細(xì)節(jié)隔離,在平臺(tái)的總控模塊中體現(xiàn)出一致的調(diào)用接口,從而使業(yè)務(wù)邏輯控制模塊可以完全關(guān)注業(yè)務(wù)方面的細(xì)節(jié),使整個(gè)系統(tǒng)層次分明、結(jié)構(gòu)穩(wěn)定,不至于因?yàn)橥ㄓ嵎矫娴膮f(xié)議和報(bào)文接口的更改影響業(yè)務(wù)處理和流程控制。所以現(xiàn)在的代理業(yè)務(wù)平臺(tái)一般都內(nèi)置了常用的通訊協(xié)議模塊,能夠很方便的處理tcp/ip協(xié)議、cics協(xié)議等各種流行通訊協(xié)議,并提供對(duì)8583報(bào)文協(xié)議、字符流報(bào)文協(xié)議等報(bào)文接口協(xié)議的支持,當(dāng)然,針對(duì)某些單位自定義的通訊協(xié)議和報(bào)文接口協(xié)議,軟件公司也能在代理業(yè)務(wù)平臺(tái)上很方便的構(gòu)造出新的通訊子模塊。
業(yè)務(wù)邏輯控制的概念也是在對(duì)代理業(yè)務(wù)平臺(tái)的功能進(jìn)行整理分析后提出來(lái)的,為了平臺(tái)的軟件結(jié)構(gòu)層次清晰、功能穩(wěn)定,把所有與業(yè)務(wù)控制有關(guān)的部分從系統(tǒng)中剝離出來(lái),單獨(dú)形成業(yè)務(wù)邏輯控制模塊。不同的代理業(yè)務(wù)在平臺(tái)上要調(diào)用不同的業(yè)務(wù)相關(guān)處理函數(shù),要走不同的業(yè)務(wù)處理流程,訪問(wèn)不同的業(yè)務(wù)參數(shù)控制表,這些都要在業(yè)務(wù)邏輯控制模塊中以參數(shù)的形式對(duì)不同的業(yè)務(wù)加以控制。例如查詢?cè)捹M(fèi)交易,只要走委托方通訊,不要求訪問(wèn)后臺(tái),而繳費(fèi)交易則不但要訪問(wèn)第三方,還要訪問(wèn)后臺(tái),特別是有的交易要求先訪問(wèn)第三方,另外的交易有可能要先訪問(wèn)后臺(tái)再訪問(wèn)第三方,等等與交易有關(guān)的控制都放在業(yè)務(wù)邏輯控制模塊中。
流程控制模塊又可以理解為主控模塊,主要完成對(duì)一個(gè)完整交易的流程控制,它根據(jù)業(yè)務(wù)邏輯控制確定的具體交易的流程,調(diào)用相應(yīng)的通訊函數(shù)和業(yè)務(wù)處理函數(shù),一步一步的完成整個(gè)業(yè)務(wù)流程,在流程某一步出現(xiàn)錯(cuò)誤的情況下決定下一步該怎么走,是直接返回錯(cuò)誤給前臺(tái),還是繼續(xù)執(zhí)行?要不要發(fā)起沖正?要對(duì)哪幾個(gè)地方發(fā)起沖正?等等,它還要負(fù)責(zé)總個(gè)平臺(tái)的初始化、啟動(dòng)以及停止。流程控制模塊在一個(gè)平臺(tái)中也是比較穩(wěn)定的模塊,不會(huì)隨業(yè)務(wù)的增加或更改而有什么變化,不同公司、不同時(shí)期的平臺(tái),在流程控制模塊上會(huì)有一定的變更,從而形成不同公司的平臺(tái)特色。
從以上平臺(tái)主要功能模塊的分析我們可以看到,所有代理業(yè)務(wù)平臺(tái)要實(shí)現(xiàn)的功能都是基本相同的,其中通訊模塊和業(yè)務(wù)邏輯控制模塊是根據(jù)不同的委托方和不同的代理業(yè)務(wù)而有所變化的,在實(shí)現(xiàn)上一般采用參數(shù)控制的辦法,開(kāi)發(fā)人員使用平臺(tái)作為開(kāi)發(fā)工具時(shí),將主要針對(duì)不同的公司配置不同的通訊模塊,然后根據(jù)不同的代理業(yè)務(wù)種類定制不同的業(yè)務(wù)邏輯控制,從而能夠比較快速的實(shí)現(xiàn)新代理業(yè)務(wù)產(chǎn)品的開(kāi)發(fā)和上線。至于流程控制模塊,則體現(xiàn)了公司的平臺(tái)產(chǎn)品的特色,盡管要實(shí)現(xiàn)的功能是一樣的,但不同公司的平臺(tái)產(chǎn)品往往體現(xiàn)了不同設(shè)計(jì)思想,當(dāng)然也就形成了各公司不同的流程控制方式。
既然所有的平臺(tái)產(chǎn)品都只是為了以上的三個(gè)功能,那么各個(gè)時(shí)期的代理業(yè)務(wù)平臺(tái)到底有什么不同的特點(diǎn)呢?我們知道,最先出來(lái)的平臺(tái)產(chǎn)品,主要任務(wù)是減少開(kāi)發(fā)人員的重復(fù)工作量,加快開(kāi)發(fā)進(jìn)度,所以當(dāng)時(shí)的平臺(tái)產(chǎn)品可以說(shuō)完全是為這個(gè)目的而設(shè)計(jì)的,既沒(méi)有考慮平臺(tái)本身的易用性,也沒(méi)有考慮一個(gè)平臺(tái)產(chǎn)品兼容多種操作系統(tǒng)的問(wèn)題。這種平臺(tái)產(chǎn)品的代表有上海南天公司的“中間業(yè)務(wù)平臺(tái)”,當(dāng)時(shí)甚至都沒(méi)有為此產(chǎn)品取一個(gè)名字,就叫“中間業(yè)務(wù)平臺(tái)”。這一代產(chǎn)品使用幾年之后,出現(xiàn)了新的產(chǎn)品,雖然要實(shí)現(xiàn)的功能沒(méi)有多大變化,但是針對(duì)平臺(tái)本身進(jìn)行了優(yōu)化,例如提高了報(bào)文接口定制的簡(jiǎn)便性,很多以前需要手工計(jì)算的數(shù)據(jù)現(xiàn)在盡量交給計(jì)算機(jī)自己處理,開(kāi)發(fā)人員只要提供不同報(bào)文之間的最本質(zhì)的區(qū)別的參數(shù)就可以了,另外還考慮了平臺(tái)的兼容性,不但能夠直接在銀行常用的UNIX操作系統(tǒng)上使用,而且提供了windows操作系統(tǒng)上的版本。這也是由于各銀行單位代理業(yè)務(wù)快速發(fā)展的需要,導(dǎo)致各種各樣的平臺(tái)產(chǎn)品爭(zhēng)相出現(xiàn),代理業(yè)務(wù)產(chǎn)品開(kāi)發(fā)更加高效高質(zhì)。這時(shí)期的代表產(chǎn)品有神碼公司的smartagent,以及宇信鴻泰公司的fisp產(chǎn)品等。
這期間,很多平臺(tái)產(chǎn)品更增加了對(duì)代理業(yè)務(wù)的數(shù)據(jù)統(tǒng)計(jì)、報(bào)表打印功能以及參數(shù)管理等功能,相當(dāng)于增加了平臺(tái)的一個(gè)新功能模塊:管理模塊。那么最新的平臺(tái)產(chǎn)品又有什么新的特色呢?在維持原有功能和多系統(tǒng)兼容的情況下,有的平臺(tái)提供了更為簡(jiǎn)便的開(kāi)發(fā)環(huán)境,把總個(gè)平臺(tái)的功能實(shí)現(xiàn)、參數(shù)定制都移植到了圖形界面的windows環(huán)境下,開(kāi)發(fā)人員可以在全圖形界面下實(shí)現(xiàn)原來(lái)在unix機(jī)器上能實(shí)現(xiàn)的功能,這確實(shí)是一個(gè)很大的進(jìn)步,雖然平臺(tái)的本質(zhì)功能沒(méi)有什么改變,但這是軟件公司對(duì)平臺(tái)的功能有了更本質(zhì)上的理解之后才實(shí)現(xiàn)的產(chǎn)品,對(duì)開(kāi)發(fā)人員來(lái)說(shuō),可以擺脫全手工操作的unix平臺(tái),在圖形界面上輕松自如的完成新代理業(yè)務(wù)的增加、修改,把生成的參數(shù)自動(dòng)發(fā)布到unix運(yùn)行機(jī)上,真是一種前所未有的感受。這種新平臺(tái)的實(shí)例有北京先進(jìn)數(shù)通公司的eSWITCH產(chǎn)品。另外,為了適應(yīng)代理業(yè)務(wù)平臺(tái)大批量、大并發(fā)交易的需要,在最新的平臺(tái)設(shè)計(jì)上廣泛使用了消息隊(duì)列機(jī)制,實(shí)現(xiàn)了代理業(yè)務(wù)平臺(tái)在較低系統(tǒng)配置情況下處理大量并發(fā)交易的處理能力。
以上介紹了代理業(yè)務(wù)平臺(tái)從無(wú)到有,從簡(jiǎn)單到完善的發(fā)展歷程,那么代理業(yè)務(wù)平臺(tái)以后會(huì)朝什么方向發(fā)展呢?我個(gè)人認(rèn)為,銀行的代理業(yè)務(wù)應(yīng)用正處于方興未艾的時(shí)期,各軟件公司為了爭(zhēng)奪市場(chǎng),一定會(huì)繼續(xù)在代理業(yè)務(wù)平臺(tái)的可用、易用、美觀等各方面不斷加以改進(jìn),以后在windows的圖形界面下進(jìn)行交易定制、流程定制、報(bào)文接口定制,甚至通訊底層函數(shù)的編碼等等都是可以預(yù)見(jiàn)的,現(xiàn)在在windows環(huán)境下定制生成的結(jié)果文件基本還要手工干預(yù)才能在unix的生產(chǎn)機(jī)上運(yùn)行,以后肯定會(huì)要實(shí)現(xiàn)完全由windows環(huán)境定制、生成、發(fā)布所有交易的功能。這實(shí)際上相當(dāng)于給unix開(kāi)發(fā)平臺(tái)擴(kuò)展了一個(gè)圖形界面的外殼,使程序員充分利用了windows操作系統(tǒng)帶來(lái)的大眾化的友好、實(shí)用的人機(jī)互動(dòng)界面。這種平臺(tái)設(shè)計(jì)思想已經(jīng)為其他unix下的軟件開(kāi)發(fā)工具的發(fā)展、完善提供了可以借鑒的一種新的思路。
首先明白一個(gè)概念,什么是代理業(yè)務(wù)?簡(jiǎn)單的說(shuō),就是銀行系統(tǒng)利用自身的網(wǎng)點(diǎn)優(yōu)勢(shì)和客戶資源,為第三方單位如電信、移動(dòng)等代理收費(fèi)、扣款等業(yè)務(wù)。此業(yè)務(wù)是在90年代中期隨著銀行系統(tǒng)數(shù)據(jù)集中、網(wǎng)點(diǎn)互聯(lián)的發(fā)展而發(fā)展起來(lái)的,既方便了客戶、又減少了第三方單位的經(jīng)營(yíng)成本,同時(shí)提升了銀行的形象,也為銀行帶來(lái)了新的利潤(rùn)增長(zhǎng)點(diǎn)。
本人有幸經(jīng)歷了銀行業(yè)的代理業(yè)務(wù)產(chǎn)品開(kāi)發(fā)各個(gè)階段,從手工作坊似的低級(jí)階段,到快速圖形界面定制的高級(jí)階段。并對(duì)多種代理業(yè)務(wù)平臺(tái)有實(shí)際的使用經(jīng)歷和感受。
對(duì)銀行系統(tǒng)的軟件開(kāi)發(fā)人員來(lái)說(shuō),代理業(yè)務(wù)帶來(lái)了新的技術(shù)要求和實(shí)施難度。最早出現(xiàn)的代理業(yè)務(wù)一般是話費(fèi)代收,要求的功能很簡(jiǎn)單:話費(fèi)查詢、繳費(fèi)、對(duì)帳等。從安全性和速度方面考慮,銀行需要和委托單位建立專用的通訊信道,當(dāng)時(shí)一般是申請(qǐng)電信的64kDDN專線。然后由銀行方和委托方商量、確定雙方的通訊協(xié)議以及報(bào)文接口,實(shí)際情況是,一個(gè)委托單位一般不會(huì)只和某一家銀行簽訂這種代理協(xié)議,所以如果委托單位已經(jīng)和其他銀行開(kāi)發(fā)了類似的代理系統(tǒng),那么該委托單位從自身系統(tǒng)的維護(hù)和管理方便出發(fā),是不會(huì)和其他銀行另外開(kāi)發(fā)一套新的通訊協(xié)議和報(bào)文接口的,后期參與進(jìn)來(lái)的銀行就只能使自己的系統(tǒng)適用他們已有的系統(tǒng)的需要了。在當(dāng)時(shí),對(duì)每一家委托單位,銀行都要增加新的前置機(jī)、路由器等等硬件設(shè)備。
經(jīng)過(guò)緊張的開(kāi)發(fā)、調(diào)試、試運(yùn)行,到最后成功上線,一個(gè)新的代理業(yè)務(wù)產(chǎn)品的成功推出總會(huì)激起新的委托單位的興趣,從而導(dǎo)致越來(lái)越多的代理業(yè)務(wù)需求??疾炷菐啄甑你y行信息部門(mén)的人員配置,我們會(huì)很容易發(fā)現(xiàn)一個(gè)有趣的現(xiàn)象,那就是所有銀行都在那幾年中逐步增加了代理業(yè)務(wù)開(kāi)發(fā)部門(mén)的力量,代理業(yè)務(wù)開(kāi)發(fā)人員得到越來(lái)越多的重用。慢慢的,這些軟件開(kāi)發(fā)人員積累了越來(lái)越多的有關(guān)代理業(yè)務(wù)的開(kāi)發(fā)經(jīng)驗(yàn)和教訓(xùn),大家發(fā)現(xiàn)代理業(yè)務(wù)系統(tǒng)做了這么多,其實(shí)不同委托單位的系統(tǒng)是存在很多共同點(diǎn)的,開(kāi)發(fā)人員開(kāi)始感覺(jué)自己做了很多重復(fù)性勞動(dòng),既辛苦,又延長(zhǎng)了系統(tǒng)的開(kāi)發(fā)時(shí)間,于是大家開(kāi)始尋找一種軟件產(chǎn)品,能夠支持任務(wù)繁重的代理業(yè)務(wù)開(kāi)發(fā)的工具軟件,結(jié)果發(fā)現(xiàn)還真有一些很有市場(chǎng)頭腦的軟件公司在做這個(gè)產(chǎn)品。
最開(kāi)始出現(xiàn)的產(chǎn)品還不叫代理業(yè)務(wù)平臺(tái),只相當(dāng)于一個(gè)兼容性較好的通用代理業(yè)務(wù)系統(tǒng),是在對(duì)所有的代理業(yè)務(wù)子系統(tǒng)進(jìn)行了共性分析后,把各子代理業(yè)務(wù)系統(tǒng)整合成一個(gè)大的綜合系統(tǒng),再把該系統(tǒng)分成通訊、業(yè)務(wù)邏輯控制、主控等幾個(gè)功能模塊,通過(guò)參數(shù)配置的辦法體現(xiàn)出不同代理業(yè)務(wù)的特色來(lái)。相比以前的開(kāi)發(fā)方法,現(xiàn)在能夠明顯的提高開(kāi)發(fā)進(jìn)度并保證產(chǎn)品質(zhì)量。
下面我們就分析一下代理業(yè)務(wù)平臺(tái)到底要實(shí)現(xiàn)哪些功能。事實(shí)上,代理業(yè)務(wù)平臺(tái)要完成的功能主要就是通訊、業(yè)務(wù)邏輯控制、流程控制這三大塊,雖然不同時(shí)期、不同軟件公司的平臺(tái)產(chǎn)品看起來(lái)形形色色,其主要功能卻沒(méi)有超過(guò)以上三項(xiàng)功能的范圍。
其中通訊模塊要解決的問(wèn)題就是所有中間業(yè)務(wù)都會(huì)遇到的與渠道、后臺(tái)、以及委托方交換信息的問(wèn)題,一般來(lái)說(shuō),在某一個(gè)銀行內(nèi)部,代理業(yè)務(wù)平臺(tái)與渠道、后臺(tái)通訊,其通訊協(xié)議和報(bào)文接口協(xié)議是比較穩(wěn)定、統(tǒng)一的,所以通訊模塊中針對(duì)渠道和后臺(tái)的子模塊一般都是比較清楚、穩(wěn)定的,所有代理業(yè)務(wù)都共用這幾個(gè)相同的通訊模塊,同銀行系統(tǒng)的核心系統(tǒng)一樣,幾年之內(nèi)都不會(huì)改變。但與第三方委托單位的通訊協(xié)議和報(bào)文接口就不一樣了,基本上每一種代理業(yè)務(wù)都對(duì)應(yīng)一種不同的通信協(xié)議和接口數(shù)據(jù)報(bào)文。
代理業(yè)務(wù)平臺(tái)正是要在這不同的通訊協(xié)議和接口報(bào)文的情況下,為開(kāi)發(fā)人員提供一個(gè)比較統(tǒng)一的對(duì)外通訊接口,使應(yīng)用完全與通訊細(xì)節(jié)隔離,在平臺(tái)的總控模塊中體現(xiàn)出一致的調(diào)用接口,從而使業(yè)務(wù)邏輯控制模塊可以完全關(guān)注業(yè)務(wù)方面的細(xì)節(jié),使整個(gè)系統(tǒng)層次分明、結(jié)構(gòu)穩(wěn)定,不至于因?yàn)橥ㄓ嵎矫娴膮f(xié)議和報(bào)文接口的更改影響業(yè)務(wù)處理和流程控制。所以現(xiàn)在的代理業(yè)務(wù)平臺(tái)一般都內(nèi)置了常用的通訊協(xié)議模塊,能夠很方便的處理tcp/ip協(xié)議、cics協(xié)議等各種流行通訊協(xié)議,并提供對(duì)8583報(bào)文協(xié)議、字符流報(bào)文協(xié)議等報(bào)文接口協(xié)議的支持,當(dāng)然,針對(duì)某些單位自定義的通訊協(xié)議和報(bào)文接口協(xié)議,軟件公司也能在代理業(yè)務(wù)平臺(tái)上很方便的構(gòu)造出新的通訊子模塊。
業(yè)務(wù)邏輯控制的概念也是在對(duì)代理業(yè)務(wù)平臺(tái)的功能進(jìn)行整理分析后提出來(lái)的,為了平臺(tái)的軟件結(jié)構(gòu)層次清晰、功能穩(wěn)定,把所有與業(yè)務(wù)控制有關(guān)的部分從系統(tǒng)中剝離出來(lái),單獨(dú)形成業(yè)務(wù)邏輯控制模塊。不同的代理業(yè)務(wù)在平臺(tái)上要調(diào)用不同的業(yè)務(wù)相關(guān)處理函數(shù),要走不同的業(yè)務(wù)處理流程,訪問(wèn)不同的業(yè)務(wù)參數(shù)控制表,這些都要在業(yè)務(wù)邏輯控制模塊中以參數(shù)的形式對(duì)不同的業(yè)務(wù)加以控制。例如查詢?cè)捹M(fèi)交易,只要走委托方通訊,不要求訪問(wèn)后臺(tái),而繳費(fèi)交易則不但要訪問(wèn)第三方,還要訪問(wèn)后臺(tái),特別是有的交易要求先訪問(wèn)第三方,另外的交易有可能要先訪問(wèn)后臺(tái)再訪問(wèn)第三方,等等與交易有關(guān)的控制都放在業(yè)務(wù)邏輯控制模塊中。
流程控制模塊又可以理解為主控模塊,主要完成對(duì)一個(gè)完整交易的流程控制,它根據(jù)業(yè)務(wù)邏輯控制確定的具體交易的流程,調(diào)用相應(yīng)的通訊函數(shù)和業(yè)務(wù)處理函數(shù),一步一步的完成整個(gè)業(yè)務(wù)流程,在流程某一步出現(xiàn)錯(cuò)誤的情況下決定下一步該怎么走,是直接返回錯(cuò)誤給前臺(tái),還是繼續(xù)執(zhí)行?要不要發(fā)起沖正?要對(duì)哪幾個(gè)地方發(fā)起沖正?等等,它還要負(fù)責(zé)總個(gè)平臺(tái)的初始化、啟動(dòng)以及停止。流程控制模塊在一個(gè)平臺(tái)中也是比較穩(wěn)定的模塊,不會(huì)隨業(yè)務(wù)的增加或更改而有什么變化,不同公司、不同時(shí)期的平臺(tái),在流程控制模塊上會(huì)有一定的變更,從而形成不同公司的平臺(tái)特色。
從以上平臺(tái)主要功能模塊的分析我們可以看到,所有代理業(yè)務(wù)平臺(tái)要實(shí)現(xiàn)的功能都是基本相同的,其中通訊模塊和業(yè)務(wù)邏輯控制模塊是根據(jù)不同的委托方和不同的代理業(yè)務(wù)而有所變化的,在實(shí)現(xiàn)上一般采用參數(shù)控制的辦法,開(kāi)發(fā)人員使用平臺(tái)作為開(kāi)發(fā)工具時(shí),將主要針對(duì)不同的公司配置不同的通訊模塊,然后根據(jù)不同的代理業(yè)務(wù)種類定制不同的業(yè)務(wù)邏輯控制,從而能夠比較快速的實(shí)現(xiàn)新代理業(yè)務(wù)產(chǎn)品的開(kāi)發(fā)和上線。至于流程控制模塊,則體現(xiàn)了公司的平臺(tái)產(chǎn)品的特色,盡管要實(shí)現(xiàn)的功能是一樣的,但不同公司的平臺(tái)產(chǎn)品往往體現(xiàn)了不同設(shè)計(jì)思想,當(dāng)然也就形成了各公司不同的流程控制方式。
既然所有的平臺(tái)產(chǎn)品都只是為了以上的三個(gè)功能,那么各個(gè)時(shí)期的代理業(yè)務(wù)平臺(tái)到底有什么不同的特點(diǎn)呢?我們知道,最先出來(lái)的平臺(tái)產(chǎn)品,主要任務(wù)是減少開(kāi)發(fā)人員的重復(fù)工作量,加快開(kāi)發(fā)進(jìn)度,所以當(dāng)時(shí)的平臺(tái)產(chǎn)品可以說(shuō)完全是為這個(gè)目的而設(shè)計(jì)的,既沒(méi)有考慮平臺(tái)本身的易用性,也沒(méi)有考慮一個(gè)平臺(tái)產(chǎn)品兼容多種操作系統(tǒng)的問(wèn)題。這種平臺(tái)產(chǎn)品的代表有上海南天公司的“中間業(yè)務(wù)平臺(tái)”,當(dāng)時(shí)甚至都沒(méi)有為此產(chǎn)品取一個(gè)名字,就叫“中間業(yè)務(wù)平臺(tái)”。這一代產(chǎn)品使用幾年之后,出現(xiàn)了新的產(chǎn)品,雖然要實(shí)現(xiàn)的功能沒(méi)有多大變化,但是針對(duì)平臺(tái)本身進(jìn)行了優(yōu)化,例如提高了報(bào)文接口定制的簡(jiǎn)便性,很多以前需要手工計(jì)算的數(shù)據(jù)現(xiàn)在盡量交給計(jì)算機(jī)自己處理,開(kāi)發(fā)人員只要提供不同報(bào)文之間的最本質(zhì)的區(qū)別的參數(shù)就可以了,另外還考慮了平臺(tái)的兼容性,不但能夠直接在銀行常用的UNIX操作系統(tǒng)上使用,而且提供了windows操作系統(tǒng)上的版本。這也是由于各銀行單位代理業(yè)務(wù)快速發(fā)展的需要,導(dǎo)致各種各樣的平臺(tái)產(chǎn)品爭(zhēng)相出現(xiàn),代理業(yè)務(wù)產(chǎn)品開(kāi)發(fā)更加高效高質(zhì)。這時(shí)期的代表產(chǎn)品有神碼公司的smartagent,以及宇信鴻泰公司的fisp產(chǎn)品等。
這期間,很多平臺(tái)產(chǎn)品更增加了對(duì)代理業(yè)務(wù)的數(shù)據(jù)統(tǒng)計(jì)、報(bào)表打印功能以及參數(shù)管理等功能,相當(dāng)于增加了平臺(tái)的一個(gè)新功能模塊:管理模塊。那么最新的平臺(tái)產(chǎn)品又有什么新的特色呢?在維持原有功能和多系統(tǒng)兼容的情況下,有的平臺(tái)提供了更為簡(jiǎn)便的開(kāi)發(fā)環(huán)境,把總個(gè)平臺(tái)的功能實(shí)現(xiàn)、參數(shù)定制都移植到了圖形界面的windows環(huán)境下,開(kāi)發(fā)人員可以在全圖形界面下實(shí)現(xiàn)原來(lái)在unix機(jī)器上能實(shí)現(xiàn)的功能,這確實(shí)是一個(gè)很大的進(jìn)步,雖然平臺(tái)的本質(zhì)功能沒(méi)有什么改變,但這是軟件公司對(duì)平臺(tái)的功能有了更本質(zhì)上的理解之后才實(shí)現(xiàn)的產(chǎn)品,對(duì)開(kāi)發(fā)人員來(lái)說(shuō),可以擺脫全手工操作的unix平臺(tái),在圖形界面上輕松自如的完成新代理業(yè)務(wù)的增加、修改,把生成的參數(shù)自動(dòng)發(fā)布到unix運(yùn)行機(jī)上,真是一種前所未有的感受。這種新平臺(tái)的實(shí)例有北京先進(jìn)數(shù)通公司的eSWITCH產(chǎn)品。另外,為了適應(yīng)代理業(yè)務(wù)平臺(tái)大批量、大并發(fā)交易的需要,在最新的平臺(tái)設(shè)計(jì)上廣泛使用了消息隊(duì)列機(jī)制,實(shí)現(xiàn)了代理業(yè)務(wù)平臺(tái)在較低系統(tǒng)配置情況下處理大量并發(fā)交易的處理能力。
以上介紹了代理業(yè)務(wù)平臺(tái)從無(wú)到有,從簡(jiǎn)單到完善的發(fā)展歷程,那么代理業(yè)務(wù)平臺(tái)以后會(huì)朝什么方向發(fā)展呢?我個(gè)人認(rèn)為,銀行的代理業(yè)務(wù)應(yīng)用正處于方興未艾的時(shí)期,各軟件公司為了爭(zhēng)奪市場(chǎng),一定會(huì)繼續(xù)在代理業(yè)務(wù)平臺(tái)的可用、易用、美觀等各方面不斷加以改進(jìn),以后在windows的圖形界面下進(jìn)行交易定制、流程定制、報(bào)文接口定制,甚至通訊底層函數(shù)的編碼等等都是可以預(yù)見(jiàn)的,現(xiàn)在在windows環(huán)境下定制生成的結(jié)果文件基本還要手工干預(yù)才能在unix的生產(chǎn)機(jī)上運(yùn)行,以后肯定會(huì)要實(shí)現(xiàn)完全由windows環(huán)境定制、生成、發(fā)布所有交易的功能。這實(shí)際上相當(dāng)于給unix開(kāi)發(fā)平臺(tái)擴(kuò)展了一個(gè)圖形界面的外殼,使程序員充分利用了windows操作系統(tǒng)帶來(lái)的大眾化的友好、實(shí)用的人機(jī)互動(dòng)界面。這種平臺(tái)設(shè)計(jì)思想已經(jīng)為其他unix下的軟件開(kāi)發(fā)工具的發(fā)展、完善提供了可以借鑒的一種新的思路。