陳 靜,李 華
(1.貴州中醫(yī)藥大學(xué)信息工程學(xué)院,貴陽(yáng) 550025; 2.貴州師范大學(xué)大數(shù)據(jù)與計(jì)算機(jī)科學(xué)學(xué)院,貴陽(yáng) 550025)
信息化發(fā)展和計(jì)算機(jī)技術(shù)的發(fā)展使得軟件的安全性、可靠性在通信、金融等領(lǐng)域變得更加重要[1],如何系統(tǒng)全面地分析和研究軟件故障數(shù)據(jù)、得出軟件故障數(shù)據(jù)之間的關(guān)系、發(fā)掘出對(duì)軟件開(kāi)發(fā)商和軟件用戶(hù)有用的信息、得出具有實(shí)際價(jià)值的結(jié)論將在很大程度上為軟件的可靠性提供支持[2]。利用軟件測(cè)試過(guò)程中產(chǎn)生的故障數(shù)據(jù),對(duì)軟件可靠性進(jìn)行分析預(yù)測(cè),是當(dāng)前研究的重要方向。
多項(xiàng)式回歸模型是線性回歸模型的一種,此回歸函數(shù)關(guān)于回歸系數(shù)是線性的,所以任何一個(gè)函數(shù)都可以用多項(xiàng)式逼近,這也使得多項(xiàng)式回歸在各領(lǐng)域都有著廣泛的應(yīng)用[3]。軟件故障數(shù)據(jù)包括時(shí)間(天)、故障數(shù)、累計(jì)故障三個(gè)因子,可分別對(duì)時(shí)間(天)與故障數(shù)及時(shí)間(天)與累計(jì)故障數(shù)進(jìn)行線性回歸。
多項(xiàng)式回歸模型(Polynomial Regression model)是線性回歸模型的一種,被廣泛運(yùn)用在信息學(xué)、經(jīng)濟(jì)學(xué)、自然現(xiàn)象的預(yù)測(cè)上。多項(xiàng)式函數(shù)指的是由常數(shù)與自變量x經(jīng)過(guò)有限次乘法與加法運(yùn)算得到的函數(shù)[4]。多項(xiàng)式函數(shù)常用來(lái)擬合各種指標(biāo)的變化趨勢(shì),在分析中扮演著十分重要的角色,其基本表達(dá)式為:
f(x)=an·xn+an-1·xn-1+…+a2·x2+a1·x+a0
(1)
最小二乘法(又可稱(chēng)為最小平方法)是一種基于數(shù)學(xué)的最優(yōu)化計(jì)算技術(shù),應(yīng)用最小二乘法可以簡(jiǎn)單直接地獲取一些未知數(shù)據(jù),可以使通過(guò)這些乘法獲得的已知數(shù)據(jù)與通過(guò)最小二乘法獲得的實(shí)際數(shù)據(jù)之間的數(shù)值誤差的最小平方和達(dá)到最小,公式如下:
(2)
故障數(shù)據(jù)來(lái)自“成績(jī)分析大師APP”,一共30組,即30 d的故障次數(shù)。故障數(shù)據(jù)如表1所示。
表1 故障數(shù)據(jù)Tab.1 Failure data
時(shí)間(天)故障數(shù)累計(jì)故障數(shù)16171 04717161 06318221 08519381 12320391 162211701 33222361 36823261 39424201 41425671 48126731 554271641 71828291 74729131 76030181 778
利用SPSS工具分別對(duì)“時(shí)間與故障數(shù)”和“時(shí)間與累積故障數(shù)”的相關(guān)性進(jìn)行分析,得到的結(jié)果分別如表2和表3所示。
表2 時(shí)間與故障數(shù)相關(guān)性分析Tab.2 Correlation analysis of time and defect numbers
表3 時(shí)間與累積故障數(shù)相關(guān)性分析Tab.3 Correlation analysis of time and the accumulated defect number
由結(jié)果可以看出,時(shí)間與故障數(shù)的皮爾森相關(guān)為-0.138,而時(shí)間與累積故障數(shù)的皮爾森相關(guān)為0.996,相關(guān)系數(shù)的絕對(duì)值與1越相近,則表示越相關(guān)[5],由此可以得到時(shí)間與故障數(shù)弱相關(guān),而時(shí)間與累積故障數(shù)強(qiáng)相關(guān),這也與上述一致,故著重研究“時(shí)間與累積故障數(shù)”之間的關(guān)系。
利用SPSS對(duì)多項(xiàng)式回歸模型進(jìn)行求解。利用一次多項(xiàng)式、二次多項(xiàng)式、三次多項(xiàng)式、冪次方程等對(duì)數(shù)據(jù)進(jìn)行曲線擬合[6],得到時(shí)間與累積故障數(shù)的回歸標(biāo)準(zhǔn)化殘差的常態(tài)P-P圖[7],如圖1所示。
圖1 時(shí)間與累積故障數(shù)的回歸標(biāo)準(zhǔn)化殘差的常態(tài)P-P圖Fig.1 Normal P-P graph of regression standardized residual of time and the accumulated defect number
要得到該模型的模型統(tǒng)計(jì)及參數(shù)評(píng)估,利用模型統(tǒng)計(jì)和參數(shù)評(píng)估可以寫(xiě)出具體的三次方程、二次方程、一次方程,并通過(guò)分析R2來(lái)比較哪個(gè)方程更好。R2越接近1,則代表該模型方程越好[8]。
利用SPSS得到各個(gè)模型的模型統(tǒng)計(jì)及參數(shù)評(píng)估,具體結(jié)果如表4所示。
表4 時(shí)間與累積故障數(shù)的模型統(tǒng)計(jì)及參數(shù)評(píng)估Tab.4 Model statistics of time and the accumulated defect number, and the parameter evaluation
通過(guò)以上結(jié)果,可以構(gòu)建方程如下:
線性:N=56.078T+112.697
二次:N=0.236T2+48.766T+151.694
三次:N=-0.14T3+0.888T2+40.54T+174.650
其中,N代表因變量累計(jì)故障數(shù),T代表自變量時(shí)間(天)[9]。
通過(guò)對(duì)R2結(jié)果0.992、0.993和0.993的比較,可以發(fā)現(xiàn)二次回歸方程和三次回歸方程的決定系數(shù)R2相同且它的值更接近1,可見(jiàn)二次回歸方程和三次回歸方程更符合數(shù)據(jù)的分布。
根據(jù)30 d的“成績(jī)分析大師APP”真實(shí)故障數(shù)據(jù),利用多項(xiàng)式回歸方法建立了故障數(shù)據(jù)的變化函數(shù)模型,得到如下結(jié)果:其一,利用SPSS工具對(duì)時(shí)間與故障數(shù)據(jù)的相關(guān)度進(jìn)行分析得到時(shí)間與故障數(shù)弱相關(guān),而時(shí)間與累積故障數(shù)強(qiáng)相關(guān)。其二,利用多項(xiàng)式回歸模型分析時(shí)間與累積故障數(shù)據(jù),得到多項(xiàng)式的擬合公式,并通過(guò)對(duì)擬合優(yōu)度的比較,得出二次多項(xiàng)式和三次多項(xiàng)式較一次多項(xiàng)式更符合標(biāo)準(zhǔn)。