一種評估軟件可靠性的方法
【專利摘要】本發(fā)明公開了一種評估軟件可靠性的方法,包括計算軟件中每個軟件模塊的缺陷率和使用率;根據(jù)獲得的各軟件模塊的缺陷率和使用率,計算軟件中每個軟件模塊的失效率;根據(jù)獲得的各軟件模塊的失效率,計算軟件的失效率;根據(jù)獲得的軟件的失效率和預(yù)先設(shè)置的軟件的失效率與軟件可靠性等級的對應(yīng)關(guān)系,確定軟件可靠性等級。通過本發(fā)明提供的技術(shù)方案,在緊急情況下,能夠及時給出軟件可靠性的評估結(jié)果,從而滿足了緊急情況下快速評估軟件的可靠性的需要。
【專利說明】一種評估軟件可靠性的方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及軟件測試技術(shù),尤指一種評估軟件可靠性的方法。
【背景技術(shù)】
[0002] 如今,人們在生產(chǎn)和生活中處處都會使用各種各樣的軟件,軟件質(zhì)量的好壞直接 關(guān)系到軟件的使用效果和人們對軟件的認可度,因此,用于有效保證軟件質(zhì)量的軟件測試 越來越得到重視,軟件測試在整個軟件開發(fā)周期中也占據(jù)了越來越多的時間。通常,測試人 員根據(jù)預(yù)先制定的軟件測試需求,對軟件的功能、性能和可靠性進行測試。軟件的可靠性指 的是,軟件產(chǎn)品在給定的條件下和規(guī)定的時間內(nèi)完成規(guī)定功能的能力,是衡量軟件質(zhì)量好 壞和能否向市場發(fā)布的核心指標(biāo)。
[0003] 目前,軟件測試中的評估軟件可靠性的方法包括:首先對軟件進行長時間(至少 為7*24小時)的高性能和多功能的測試,然后,檢查軟件的主要功能和性能指標(biāo)是否滿足 軟件測試需求,如果檢查的結(jié)果為滿足,則說明軟件可靠性高,可以向市場發(fā)布軟件,否則 說明軟件存在缺陷,需要進一步完善后重新評估軟件的可靠性。這種基于長時間的測試來 評估可靠性的方法(下文簡稱為傳統(tǒng)方法),由于所需測試時間較長,在緊急情況(例如軟 件產(chǎn)品必須1天之后向市場發(fā)布)下,無法及時給出可靠性的評估結(jié)果,從而無法滿足緊急 情況下快速評估軟件的可靠性的需要。
【發(fā)明內(nèi)容】
[0004] 為了解決上述技術(shù)問題,本發(fā)明提供了一種評估軟件可靠性的方法,能夠快速評 估出軟件的可靠性,從而能夠滿足緊急情況下快速評估軟件的可靠性的需要。
[0005] 為了達到本發(fā)明目的,本發(fā)明公開了 一種評估軟件可靠性的方法,包括如下步 驟:
[0006] 計算軟件中每個軟件模塊的缺陷率和使用率;
[0007] 根據(jù)獲得的各軟件模塊的缺陷率和使用率,計算軟件中每個軟件模塊的失效率;
[0008] 根據(jù)獲得的各軟件模塊的失效率,計算軟件的失效率;
[0009] 根據(jù)獲得的軟件的失效率和預(yù)先設(shè)置的軟件的失效率與軟件可靠性等級的對應(yīng) 關(guān)系,確定軟件可靠性等級。
[0010] 所述軟件模塊的失效率P的計算公式為:P = P (A) *P (B) *k ;其中,
[0011] k為軟件模塊的現(xiàn)有缺陷數(shù)量與預(yù)先設(shè)定的軟件模塊的最大缺陷數(shù)量的比值, P(A)為軟件模塊的缺陷率,P(B)為軟件模塊的使用率。
[0012] 所述計算軟件模塊的缺陷率包括:
[0013] 根據(jù)獲取的軟件模塊的開發(fā)人員水平等級和預(yù)先設(shè)置的軟件模塊的開發(fā)人員水 平等級與軟件模塊的開發(fā)人員水平參數(shù)的對應(yīng)關(guān)系,確定軟件模塊的開發(fā)人員水平參數(shù);
[0014] 根據(jù)獲得的軟件模塊的復(fù)雜度等級和預(yù)先設(shè)置的軟件模塊的復(fù)雜度等級與軟件 模塊的復(fù)雜度參數(shù)的對應(yīng)關(guān)系,確定軟件模塊的復(fù)雜度參數(shù);
[0015] 計算軟件模塊的復(fù)雜度參數(shù)和軟件模塊的開發(fā)人員水平參數(shù)的比值與軟件模塊 的原始缺陷率的乘積,所得的積值對應(yīng)的百分數(shù)為軟件模塊的缺陷率P (A)。
[0016] 所述軟件模塊的原始缺陷率為0. 5。
[0017] 所述計算軟件模塊的使用率包括:
[0018] 根據(jù)獲得的軟件中各軟件模塊按照核心度由高到低的排序結(jié)果、和軟件中軟件 模塊的數(shù)量n,計算軟件模塊的使用率P(B);其中,P(B)的計算公式為P(B) = (n+l-i)/ (1+2+…+n)*100%,其中,i為軟件模塊在排序結(jié)果中的序號。
[0019] 所述軟件的失效率為軟件中各軟件模塊的失效率的總和。
[0020] 預(yù)先設(shè)置縮短測試時間的傳統(tǒng)評估軟件可靠性的方法的評估結(jié)果和本發(fā)明方法 的評估結(jié)果的組合、與綜合的評估結(jié)果的第一對應(yīng)關(guān)系,其中,本發(fā)明方法的評估結(jié)果為所 述軟件可靠性等級;
[0021] 該方法還包括,根據(jù)縮短測試時間的傳統(tǒng)評估軟件可靠性的方法的評估結(jié)果和本 發(fā)明方法的評估結(jié)果、以及第一對應(yīng)關(guān)系,確定綜合的評估結(jié)果。
[0022] 本發(fā)明還包括一種評估軟件可靠性的裝置,包括缺缺陷率計算單元、使用率計算 單元、失效率計算單元、總失效率計算單元和可靠性等級評估單元,其中,
[0023] 缺陷率計算單元,用于計算軟件中每個軟件模塊的缺陷率;
[0024] 使用率計算單元,用于計算軟件中每個軟件模塊的使用率;
[0025] 失效率計算單元,用于根據(jù)來自缺陷率計算單元和使用率計算單元的各軟件模塊 的缺陷率和使用率,計算軟件中每個軟件模塊的失效率;
[0026] 總失效率計算單元,用于根據(jù)來自失效率計算單元的各軟件模塊的失效率,計算 軟件的失效率;
[0027] 可靠性等級評估單元,用于根據(jù)來自總失效率計算單元的軟件的失效率和預(yù)先設(shè) 置的軟件的失效率與軟件可靠性等級的對應(yīng)關(guān)系,確定軟件可靠性等級。
[0028] 所述軟件模塊的失效率P的計算公式為:P = P (A) *P (B) *k ;其中,k為軟件模塊的 現(xiàn)有缺陷數(shù)量與預(yù)先設(shè)定的軟件模塊的最大缺陷數(shù)量的比值,P(A)為軟件模塊的缺陷率, P(B)為軟件模塊的使用率;
[0029] 軟件的失效率為軟件中各軟件模塊的失效率的總和。
[0030] 所述缺陷率計算單元包括水平評估模塊、復(fù)雜度等級評估模塊和缺陷率計算模 塊,其中,
[0031] 水平評估模塊,用于根據(jù)獲取的軟件模塊的開發(fā)人員水平等級和預(yù)先設(shè)置的軟件 模塊的開發(fā)人員水平等級與軟件模塊的開發(fā)人員水平參數(shù)的對應(yīng)關(guān)系,確定軟件模塊的開 發(fā)人員水平參數(shù);
[0032] 復(fù)雜度等級評估模塊,用于根據(jù)獲得的軟件模塊的復(fù)雜度等級和預(yù)先設(shè)置的軟件 模塊的復(fù)雜度等級與軟件模塊的復(fù)雜度參數(shù)的對應(yīng)關(guān)系,確定軟件模塊的復(fù)雜度參數(shù); [0033] 缺陷率計算模塊,用于計算軟件模塊的復(fù)雜度參數(shù)和軟件模塊的開發(fā)人員水平參 數(shù)的比值與軟件模塊的原始缺陷率的乘積,所得的積值對應(yīng)的百分數(shù)為軟件模塊的缺陷率 P(A),其中,軟件模塊的原始缺陷率為0. 5。
[0034] 所述使用率計算模塊具體用于,根據(jù)獲得的軟件中各軟件模塊按照核心度由高到 低的排序結(jié)果、和軟件中軟件模塊的數(shù)量n,計算軟件模塊的使用率P(B);其中,P(B)的計 算公式為P(B) = 〇1+1-1)八1+2+-+11)*100%,其中,1為軟件模塊在排序結(jié)果中的序號。
[0035] 與現(xiàn)有技術(shù)相比,本發(fā)明的技術(shù)方案包括:計算軟件中每個軟件模塊的缺陷率和 使用率;根據(jù)獲得的各軟件模塊的缺陷率和使用率,計算軟件中每個軟件模塊的失效率; 根據(jù)獲得的各軟件模塊的失效率,計算軟件的失效率;根據(jù)獲得的軟件的失效率和預(yù)先設(shè) 置的軟件的失效率與軟件可靠性等級的對應(yīng)關(guān)系,確定軟件可靠性等級。。通過本發(fā)明的技 術(shù)方案,能夠快速評估出軟件的可靠性,這樣,在緊急情況下,能夠及時給出軟件可靠性的 評估結(jié)果,從而滿足了緊急情況下快速評估軟件的可靠性的需要。
[0036] 另外,在緊急情況下,本發(fā)明技術(shù)方案也可以與縮短測試時間的傳統(tǒng)方法結(jié)合使 用,綜合這兩種方法的評估結(jié)果給出綜合的評估結(jié)果,這樣相比于每個方法的評估結(jié)果,綜 合的評估結(jié)果的精確度更高,從而提高了緊急情況下評估軟件的可靠性的精確度。
[0037] 本發(fā)明的其它特征和優(yōu)點將在隨后的說明書中闡述,并且,部分地從說明書中變 得顯而易見,或者通過實施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點可通過在說明書、權(quán)利 要求書以及附圖中所特別指出的結(jié)構(gòu)來實現(xiàn)和獲得。
【專利附圖】
【附圖說明】
[0038] 附圖用來提供對本發(fā)明技術(shù)方案的進一步理解,并且構(gòu)成說明書的一部分,與本 申請的實施例一起用于解釋本發(fā)明的技術(shù)方案,并不構(gòu)成對本發(fā)明技術(shù)方案的限制。
[0039] 圖1為本發(fā)明評估軟件可靠性的方法的流程圖;
[0040] 圖2為本發(fā)明計算軟件模塊的缺陷率的流程圖;
[0041] 圖3為本發(fā)明評估軟件可靠性的裝置的組成結(jié)構(gòu)示意圖;
[0042] 圖4為本發(fā)明裝置中缺缺陷率計算單元的組成結(jié)構(gòu)示意圖。
【具體實施方式】
[0043] 為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚明白,下文中將結(jié)合附圖對本發(fā)明 的實施例進行詳細說明。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中 的特征可以相互任意組合。
[0044] 在附圖的流程圖示出的步驟可以在諸如一組計算機可執(zhí)行指令的計算機系統(tǒng)中 執(zhí)行。并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順 序執(zhí)行所示出或描述的步驟。
[0045] 在執(zhí)行本發(fā)明方法之前,為了得到本發(fā)明方法的輸入信息,軟件的總體架構(gòu)人員 需要通過分析和評估給出待評估軟件的如下信息:
[0046] 軟件中各軟件模塊的開發(fā)人員水平等級,其中,軟件模塊的開發(fā)人員水平等級可 以為高、中、或低。
[0047] 軟件中各軟件模塊的復(fù)雜度等級,其中,軟件模塊的復(fù)雜度等級可以為高、中、或 低。
[0048] 軟件中各軟件模塊按照核心度由高到低的排序結(jié)果,例如,假設(shè)一個軟件中有4 個軟件模塊,分別為軟件模塊1、軟件模塊2、軟件模塊3和軟件模塊4,該軟件的各軟件模 塊按照核心度由高到低的排序結(jié)果為:軟件模塊3、軟件模塊4、軟件模塊1、軟件模塊2。通 過這個排序結(jié)果可以看出,軟件模塊3的核心度最高,軟件模塊4的核心度次之,依此類推。 并且規(guī)定,軟件模塊3的在排序結(jié)果中的序號為1,軟件模塊4的在排序結(jié)果中的序號為2, 依此類推。
[0049] 圖1為本發(fā)評估軟件可靠性的方法的流程圖,如圖1所示,該方法包括如下步驟:
[0050] 步驟101 :計算軟件中每個軟件模塊的缺陷率和使用率。
[0051] 圖2為本發(fā)明計算軟件模塊的缺陷率的流程圖,如圖2所示,包括如下步驟:
[0052] 步驟201 :根據(jù)獲取的軟件模塊的開發(fā)人員水平等級和預(yù)先設(shè)置的軟件模塊的開 發(fā)人員水平等級與軟件模塊的開發(fā)人員水平參數(shù)的對應(yīng)關(guān)系,確定軟件模塊的開發(fā)人員水 平參數(shù)。其中,
[0053] 軟件模塊的開發(fā)人員水平等級與軟件模塊的開發(fā)人員水平參數(shù)的對應(yīng)關(guān)系可以 為如下面的表1所示的對應(yīng)關(guān)系。
[0054]
【權(quán)利要求】
1. 一種評估軟件可靠性的方法,其特征在于,該方法包括: 計算軟件中每個軟件模塊的缺陷率和使用率; 根據(jù)獲得的各軟件模塊的缺陷率和使用率,計算軟件中每個軟件模塊的失效率; 根據(jù)獲得的各軟件模塊的失效率,計算軟件的失效率; 根據(jù)獲得的軟件的失效率和預(yù)先設(shè)置的軟件的失效率與軟件可靠性等級的對應(yīng)關(guān)系, 確定軟件可靠性等級。
2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述軟件模塊的失效率P的計算公式為: P = P(A)*P(B)*k ;其中, k為軟件模塊的現(xiàn)有缺陷數(shù)量與預(yù)先設(shè)定的軟件模塊的最大缺陷數(shù)量的比值,P(A)為 軟件模塊的缺陷率,P(B)為軟件模塊的使用率。
3. 根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述計算軟件模塊的缺陷率包括: 根據(jù)獲取的軟件模塊的開發(fā)人員水平等級和預(yù)先設(shè)置的軟件模塊的開發(fā)人員水平等 級與軟件模塊的開發(fā)人員水平參數(shù)的對應(yīng)關(guān)系,確定軟件模塊的開發(fā)人員水平參數(shù); 根據(jù)獲得的軟件模塊的復(fù)雜度等級和預(yù)先設(shè)置的軟件模塊的復(fù)雜度等級與軟件模塊 的復(fù)雜度參數(shù)的對應(yīng)關(guān)系,確定軟件模塊的復(fù)雜度參數(shù); 計算軟件模塊的復(fù)雜度參數(shù)和軟件模塊的開發(fā)人員水平參數(shù)的比值與軟件模塊的原 始缺陷率的乘積,所得的積值對應(yīng)的百分數(shù)為軟件模塊的缺陷率P (A)。
4. 根據(jù)權(quán)利要求3所述的方法,其特征在于,所述軟件模塊的原始缺陷率為0. 5。
5. 根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述計算軟件模塊的使用率包括: 根據(jù)獲得的軟件中各軟件模塊按照核心度由高到低的排序結(jié)果、和軟件中軟件模塊的 數(shù)量n,計算軟件模塊的使用率P(B);其中,P(B)的計算公式為P(B) = (n+l-iV(l+2+··· +n)*100%,其中,i為軟件模塊在排序結(jié)果中的序號。
6. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述軟件的失效率為軟件中各軟件模塊 的失效率的總和。
7. 根據(jù)權(quán)利要求1所述的方法,其特征在于,預(yù)先設(shè)置縮短測試時間的傳統(tǒng)評估軟件 可靠性的方法的評估結(jié)果和本發(fā)明方法的評估結(jié)果的組合、與綜合的評估結(jié)果的第一對應(yīng) 關(guān)系,其中,本發(fā)明方法的評估結(jié)果為所述軟件可靠性等級; 該方法還包括,根據(jù)縮短測試時間的傳統(tǒng)評估軟件可靠性的方法的評估結(jié)果和本發(fā)明 方法的評估結(jié)果、以及第一對應(yīng)關(guān)系,確定綜合的評估結(jié)果。
8. -種評估軟件可靠性的裝置,其特征在于,包括缺缺陷率計算單元、使用率計算單 元、失效率計算單元、總失效率計算單元和可靠性等級評估單元,其中, 缺陷率計算單元,用于計算軟件中每個軟件模塊的缺陷率; 使用率計算單元,用于計算軟件中每個軟件模塊的使用率; 失效率計算單元,用于根據(jù)來自缺陷率計算單元和使用率計算單元的各軟件模塊的缺 陷率和使用率,計算軟件中每個軟件模塊的失效率; 總失效率計算單元,用于根據(jù)來自失效率計算單元的各軟件模塊的失效率,計算軟件 的失效率; 可靠性等級評估單元,用于根據(jù)來自總失效率計算單元的軟件的失效率和預(yù)先設(shè)置的 軟件的失效率與軟件可靠性等級的對應(yīng)關(guān)系,確定軟件可靠性等級。
9. 根據(jù)權(quán)利要求8所述的裝置,其特征在于, 所述軟件模塊的失效率P的計算公式為:P = P (A) *P (B) *k ;其中,k為軟件模塊的現(xiàn)有 缺陷數(shù)量與預(yù)先設(shè)定的軟件模塊的最大缺陷數(shù)量的比值,P(A)為軟件模塊的缺陷率,P(B) 為軟件模塊的使用率; 軟件的失效率為軟件中各軟件模塊的失效率的總和。
10. 根據(jù)權(quán)利要求8或9所述的裝置,其特征在于,所述缺陷率計算單元包括水平評估 模塊、復(fù)雜度等級評估模塊和缺陷率計算模塊,其中, 水平評估模塊,用于根據(jù)獲取的軟件模塊的開發(fā)人員水平等級和預(yù)先設(shè)置的軟件模塊 的開發(fā)人員水平等級與軟件模塊的開發(fā)人員水平參數(shù)的對應(yīng)關(guān)系,確定軟件模塊的開發(fā)人 員水平參數(shù); 復(fù)雜度等級評估模塊,用于根據(jù)獲得的軟件模塊的復(fù)雜度等級和預(yù)先設(shè)置的軟件模塊 的復(fù)雜度等級與軟件模塊的復(fù)雜度參數(shù)的對應(yīng)關(guān)系,確定軟件模塊的復(fù)雜度參數(shù); 缺陷率計算模塊,用于計算軟件模塊的復(fù)雜度參數(shù)和軟件模塊的開發(fā)人員水平參數(shù) 的比值與軟件模塊的原始缺陷率的乘積,所得的積值對應(yīng)的百分數(shù)為軟件模塊的缺陷率 P (A),其中,軟件模塊的原始缺陷率為0. 5。
11. 根據(jù)權(quán)利要求8或9所述的裝置,其特征在于,所述使用率計算模塊具體用于,根據(jù) 獲得的軟件中各軟件模塊按照核心度由高到低的排序結(jié)果、和軟件中軟件模塊的數(shù)量n,計 算軟件模塊的使用率P(B);其中,P(B)的計算公式為P(B) = (n+l-iV(l+2+…+n)*100%, 其中,i為軟件模塊在排序結(jié)果中的序號。
【文檔編號】G06F11/36GK104156312SQ201410392341
【公開日】2014年11月19日 申請日期:2014年8月11日 優(yōu)先權(quán)日:2014年8月11日
【發(fā)明者】孫言弟, 趙霞, 呂廣杰 申請人:浪潮(北京)電子信息產(chǎn)業(yè)有限公司