金融行業(yè)各類軟件系統(tǒng)由于應(yīng)用領(lǐng)域、交易的重要程度、應(yīng)用人群各有不同,可能存在的安全隱患和質(zhì)量上的風(fēng)險也不盡相同,為了深入分析各類軟件系統(tǒng)的特點,我們嘗試從用戶性質(zhì)(行內(nèi)、行外)、交易筆數(shù)、單筆交易金額、交易的復(fù)雜度(如幣種多、客戶等級多、交易種類多、交易價格浮動、實時牌價、政策約束條件多、交易的動作數(shù))、實時程度(實時,T+0,T+I,T+2,批量等多個層次)、是否和行外系統(tǒng)相連接等六個維度對金融企業(yè)現(xiàn)有的軟件應(yīng)用系統(tǒng)進(jìn)行風(fēng)險分析,從更為客觀全面的角度來綜合考量各種金融軟件系統(tǒng)可能存在的風(fēng)險級別,然后根據(jù)ISO/IEC9126對6個軟件特性、21個子特性的要求,分析和比較各類常見金融軟件系統(tǒng)需要重點測試的軟件特性,提出有針對性的測試策略和思路,才能在有限的資源和時間條件下,大限度地做好軟件測試工作,提高各類金融軟件系統(tǒng)的質(zhì)量,達(dá)到控制風(fēng)險、規(guī)避風(fēng)險的終目的。
   
    金融軟件系統(tǒng)的風(fēng)險分析
   
    1、用戶性質(zhì),用戶性質(zhì)從大的層次可以分為行內(nèi)、行外兩類。應(yīng)用于行內(nèi)各級管理、業(yè)務(wù)人員的軟件系統(tǒng)一般有人事、財務(wù)、黨務(wù)、培訓(xùn)等內(nèi)部經(jīng)營管理類軟件系統(tǒng)。相對于服務(wù)于行外用戶的金融軟件系統(tǒng)來說,經(jīng)營管理軟件系統(tǒng)可能造成的風(fēng)險不大,對軟件質(zhì)量性能和功能的要求不高。對于行外的用戶群體來說,又存在優(yōu)質(zhì)客戶和非優(yōu)質(zhì)客戶的等級劃分問題,關(guān)鍵是服務(wù)于優(yōu)質(zhì)客戶的軟件系統(tǒng)的相應(yīng)軟件質(zhì)量要求較高。
   
    2、交易筆數(shù),交易筆數(shù)一般可采納日交易筆數(shù)和峰值并發(fā)交易筆數(shù)兩個數(shù)據(jù),交易筆數(shù)決定了金融軟件系統(tǒng)需要承擔(dān)的并發(fā)壓力,以及軟件失效可能造成的影響面大小。對于交易筆數(shù)較大的金融軟件系統(tǒng)需要進(jìn)行并發(fā)壓力測試,對軟件質(zhì)量的要求也更高。
   
    3、單筆交易金額,單筆交易金額的大小,決定了金融軟件系統(tǒng)失效可能承擔(dān)的資金風(fēng)險。單筆交易金額越大的系統(tǒng),對軟件質(zhì)量要求越高。
   
    4、交易的復(fù)雜度,交易的復(fù)雜度可以通過分析交易要素的復(fù)雜程度來界定,對于一筆金融交易業(yè)務(wù)來說,一般可以從幣種數(shù)量、客戶等級數(shù)、交易種類數(shù)、交易價格變動程度、相關(guān)的政策和業(yè)務(wù)規(guī)則、交易的動作數(shù)(完成一筆交易需要執(zhí)行的動作數(shù))等方面來界定。例如, 國際業(yè)務(wù)的交易復(fù)雜度較高,常規(guī)存取款的金融交易復(fù)雜度較低。金融交易復(fù)雜度越高的系統(tǒng)對軟件質(zhì)量要求越高。
   
    5、實時程度,交易的實時程度可以分為實時,T+0,T+I,T+2,批量等多個層次。不同層次的實時程度決定了軟件系統(tǒng)的不同復(fù)雜度以及軟件失效可能造成的不同影響面。實時金融交易系統(tǒng)對軟件質(zhì)量要求高。批量的金融交易系統(tǒng)對軟件質(zhì)量要求低。
   
    6、是否和行外系統(tǒng)相連接,如果一個應(yīng)用系統(tǒng)不和行外系統(tǒng)相連接,相對應(yīng)的資金和交易風(fēng)險較低,對軟件質(zhì)量的要求也較低。通過上述6個維度的風(fēng)險分析,我們可以客觀全面地獲得各類金融軟件系統(tǒng)可能存在的資金和安全上的風(fēng)險,提出不同級別的軟件質(zhì)量要求,下面我們依據(jù)ISO/IEC9126對軟件的外部和內(nèi)部質(zhì)量提出的6個軟件特性和21個子特性,分析常見的各類金融軟件系統(tǒng),獲得不同優(yōu)先級別的軟件測試特性,給出有針對性的軟件測試策略和思路,為我們開展軟件測試工作和分配各種資源提供更有價值的決策參考依據(jù)。
   
    ISO/IEC9126將軟件的外部和內(nèi)部質(zhì)量分為6個軟件特性,細(xì)化為21個子特性,具體是功能性(適合性、準(zhǔn)確性、互操作性/互用性、依從性、安全性)、可靠性(成熟性、容錯性、易恢復(fù)性)、易用性(易理解性、易學(xué)性、易操作性)、效率(時間特性、資源特性)、維護(hù)性(易分析性、易改變性、穩(wěn)定性、易測試性)、可移植性(適應(yīng)性、易安裝性、遵循性、易替換性)。
   
    常見金融軟件系統(tǒng)的測試特性分析根據(jù)應(yīng)用領(lǐng)域的不同,現(xiàn)有金融行業(yè)的軟件系統(tǒng)一般可以分為經(jīng)營管理類、金融業(yè)務(wù)類、統(tǒng)計分析類等。金融管理類軟件系統(tǒng)主要提供各類金融業(yè)務(wù)的實時或批量服務(wù),也是我們一般理解的生產(chǎn)業(yè)務(wù)系統(tǒng)。統(tǒng)計分析類軟件系統(tǒng)主要通過對生產(chǎn)經(jīng)營數(shù)據(jù)進(jìn)行采集、統(tǒng)計、分析,為金融決策提供參考依據(jù)。經(jīng)營管理類軟件主要為企業(yè)管理的各個方面提供服務(wù),例如,人事、財務(wù)、培訓(xùn)、黨務(wù)、辦公等。
   
    1.經(jīng)營管理類軟件系統(tǒng),經(jīng)營管理類軟件一般有財務(wù)、人事、黨務(wù)、培訓(xùn)等
   
    各類軟件系統(tǒng)。這些系統(tǒng)基本上由單位內(nèi)經(jīng)營管理人員使用,業(yè)務(wù)量不大,系統(tǒng)壓力較小,并且一般在內(nèi)網(wǎng)使用,系統(tǒng)安全性較高,對軟件的易用性要求較高。優(yōu)先級別高的測試特性是功能的準(zhǔn)確性,優(yōu)先級別次高的測試特性是易用性。
   
    2.統(tǒng)計分析類系統(tǒng),統(tǒng)計分析類軟件系統(tǒng)通過對金融企業(yè)的各項經(jīng)營數(shù)據(jù)進(jìn)行采集、分析,為金融業(yè)務(wù)決策提供依據(jù)。其主要特點有大批量的交易數(shù)據(jù)采集、統(tǒng)計分析,生成大量的統(tǒng)計報表。在功能準(zhǔn)確性的基礎(chǔ)上,對于報表的準(zhǔn)確性要求較高,優(yōu)先級別高的測試特性是功能的準(zhǔn)確性,優(yōu)先級別次高的測試特性是報表數(shù)據(jù)的準(zhǔn)確性。同時由于進(jìn)行大數(shù)據(jù)量的處理,需要對批量數(shù)據(jù)處理進(jìn)行時間特性和資源特性的分析。
   
    3.新興業(yè)務(wù)實時交易系統(tǒng),下面我們以兩個常見的新興業(yè)務(wù)實時交易系統(tǒng)為例進(jìn)行分析。
   
    (1)個人網(wǎng)上銀行系統(tǒng)。通過對該軟件系統(tǒng)上述6個維度的分析,個人網(wǎng)上銀行系統(tǒng)的用戶性質(zhì)、交易筆數(shù)、實時程度等三個維度均對軟件質(zhì)量的要求較高,軟件失效造成的影響面較大,系統(tǒng)峰值壓力較大,系統(tǒng)存在的資金交易風(fēng)險較高,優(yōu)先級別高的測試特性是功能的安全性、效率、準(zhǔn)確性,優(yōu)先級別次高的測試特性是功能的成熟性。
   
    (2)國際業(yè)務(wù)系統(tǒng)。通過對該軟件系統(tǒng)上述6個維度的風(fēng)險分析,國際業(yè)務(wù)系統(tǒng)的用戶性質(zhì)、單筆交易金額、交易的復(fù)雜度、實時程度、是否和行外系統(tǒng)相連接等5個維度均對軟件質(zhì)量的要求較高,軟件系統(tǒng)存在的資金交易風(fēng)險較高,優(yōu)先級別高的測試特性是軟件功能的準(zhǔn)確性,優(yōu)先級別次高的測試特性是軟件功能的安全性、容錯性、成熟性、依從性。
   
    4.傳統(tǒng)金融交易實時系統(tǒng),傳統(tǒng)金融交易實時系統(tǒng)由于開發(fā)和使用的時間一般都較長,業(yè)務(wù)需求穩(wěn)定,系統(tǒng)的成熟度較高,穩(wěn)定性較好。
   
    優(yōu)先級別高的測試特性是功能的準(zhǔn)確性,優(yōu)先級別次高的測試特性是安全性、容錯性、成熟性。因此,筆者建議采用軟件自動化測試較為適宜。