?

軟件測試工作量估算方法在DCU測試中的應用

2017-12-02 03:03株洲中車時代電氣股份有限公司陳明奎
電子世界 2017年22期
關鍵詞:測試人員用例軟件測試

株洲中車時代電氣股份有限公司 陳明奎 段 靜

軟件測試工作量估算方法在DCU測試中的應用

株洲中車時代電氣股份有限公司 陳明奎 段 靜

DCU是列車牽引系統核心控制部件,在列車正式上線運行前,需對DCU軟件進行充分測試。軟件測試工作量的估算對于DCU測試工程化管理至關重要,為此,本文對目前較為常見的DCU工作量測試估算方法進行介紹,提出提高估算準確度的計算方法優化策略,以某DCU測試項目為實際操作用例,進行項目統計、測試設計,和估計值與實際值之間的偏差結果分析,探討軟件測試工作量估算方法在DCU測試中的應用方法。

DCU測試;軟件測試;工作量估算;估算方法

引言

DCU(Driver Control Unit,傳動控制單元)是列車牽引系統的核心控制部件之一,用于控制列車的變流器和牽引電機,為保證列車安全運行,在正式上線運行前,需對DCU軟件進行充分的測試。在DCU測試中的軟件測試工作量估算主要憑借以往經驗,估算結果存在較大的誤差,為此本文從軟件測試估算量的原理入手,分析DCU軟件測試工作量估算的影響因素,探討軟件測試工作量估算在DCU測試中的作用,針對目前普遍采用的軟件測試估算工作量估算方法的優缺點進行分析,以便于更好的提出DCU測試中軟件測試工作量估算方法的解決方案。并通過實際用例進行應用,證明本文研究的軟件測試工作量估算方法可以提高DCU測試的準確性。

1.軟件測試工作量估算介紹

1.1 軟件測試工作量估算原理

軟件測試工作量估算要通過項目分析明確項目的整體規模,再估計軟件測試工作量的規模,最后得到軟件測試的生產率。軟件測試工作量的估算過程中會存在三種情況,一是工作量估算無誤差的理想化狀態,二是工作量估算過程中因軟件測試原因導致估算出現誤差,三是因軟件設計或開發存在缺陷導致估算出現誤差,所以引入軟件測試生產率,軟件測試工作量估算可以表示為:

其中w為軟件測試工作量,s為軟件項目測試規模,p為軟件測試生產率。

1.2 軟件測試工作量估算影響因素

在軟件測試量估算前,首先需要了解軟件的整體規模,軟件需要測試的用例數量和測試要求難度,軟件規模是軟件測試工程量初步預估的基礎,通過軟件規模的判斷可大體確定軟件開發的周期、難度及產生的費用。測試用例是軟件功能與性能的用例參考,軟件測試用例在軟件測試工作量的影響方面主要是測試用例的可用性、精簡性、代表性、可執行性和可重用性,這些都是影響軟件測試工作量估算的重要參考。

1.3 軟件測試工作量估算的作用

在一個軟件開發項目團隊中,軟件測試工作量要占據軟件開發總工作量的40%以上,測試成本占總開銷的近50%。軟件開發中的成本、質量與進度之間的平衡關系對軟件項目的成敗具有直接的關系,而軟件測試則是平衡軟件開發各資源關系的重要方法。據統計,目前有超過70%以上的軟件開發消耗成本在軟件測試方面,軟件測試的質量關系軟件后期的應用與維護,為此軟件測試工作量的計算是軟件開發的數據重要支持,其準確性關系到軟件開發的成敗。

2.軟件測試估算工作量估算方法

2.1 基于規模的估算方法

基于規模的估算方法中可以采用功能點數的方式進行度量,功能點數是把對表的輸入與輸出按照估算規則轉化為功能點,對功能點數的工作量進行累加的到軟件測試的總工作量。通常把測試用例的數量最小值作為程序功能點總數的1.15∧,測試用例的數量最大值等于程序功能點數的1.3∧,測試用例工作量的平均值相當于程序功能點數的1.2∧?;谝幠5墓浪惴椒ㄔ谲浖y試中非常常見,其主要是由于方法簡單、工作量小,對于一般中小型測試項目具有較好的適用性。但是受估算參考籠統化、誤差離散化、歷史數據規?;蜆I務邏輯算法復雜化的影響,基于規模的估算方法存在應用的局限性,并且受測試人員工作水平參差不齊的影響,在維護性項目中基于規模的估算方法工作量非常的龐大,估算的準確性難以保證。

2.2 基于用例的估算方法

基于用例的估算方法是通過以往相同或者相似類型的軟件項目測試工作量來估算目標軟件測試的工作量?;谟美墓浪惴椒ㄒ筌浖y試必須具備參照的用例,根據用例所花費的人力、物力和財力計算出目標項目的工作量,用例可以為其中某個相似的模塊花費的工作量,但是受編程人員和測試人員技術水平和工作能力差異性的影響,基于用例的估算方法在準確性方面仍有所偏差,并且若是開發的軟件項目無參照用例則無法使用該方法。

2.3 基于項目的估算方法

基于項目的估算方法對軟件測試管理工作量與支持活動工作量的要求較高,管理工作量和支持活動工作量越高則軟件測試的準確性就越大。以項目為基礎的估算方法是完全根據項目開展過程中產生的工作量進行估算,其能夠較為真實的反映軟件開發的全過程,較為準確的得到軟件測試的工作量,但是受軟件開發過程中變化情況的復雜性,基于項目的估算方法軟件測試工作量估算結果變動非常大,在每個任務開展的過程中都存在諸多的不確定因素,這導致軟件測試人員需要經常反復進行測試,增加測試的工作量。

3.軟件測試工作量估算方法優化

如果將測試人員的經驗、熟練度和穩定性等按照等級劃分成為上、中、下三等,并對其賦權值為N上,N中和N下,則N上gt;N中gt;N下,N上+N中+N下=1,假定軟件測試工作量估算過程匯中無缺陷,軟件規模工作量設為A,N上的規模估算總和為X1,N中的規模估算總和為Y1,N下的規模估算總和為Z1,以加權算術平均法進行計算得到軟件規模工作量為:

本文引入質量估算模型對軟件測試工作量估算中存在的缺陷進行計算,從外部軟件開發的需求、設計、編碼三方面存在的缺陷為中心,假設引入的總缺陷量為H,則根據質量估算模型得到公式:

其中,i為缺陷因子,j為缺陷類型,DI為驅動因子,Aj是缺陷類型j的基線DI比率調整因子,(DI)ij為第j個類型與第i個因子的缺陷引入的驅動因子。n為驅動因子需要的成本參數。

表1 影響測試生產率因素及系數

軟件測試工作內部也存在工作量估算的缺陷,以測試需求缺陷、測試設計缺陷和測試執行缺陷三方面作為質量估算模型參數得到軟測測試內部缺陷總數為E,則根據質量估算模型得到公式:

公式中,X為DI驅動因子的個數。由此,可根據軟件規模工作量進行內部和外部的劃分,內部工作量和外部工作量的總和減去因缺陷增加的規模,軟件測試工作量的值A’為:

將軟件測試工作量估算影響因素按照影響重要程度進行等級劃分,并折算成系數得到軟件測試工作量估算影響因素系數表如表1所示。

將所有的影響因素生產率設為S,產生的折算系數和為O,則生產率可表示為:

軟件測試工作量為:

項目估算方法中軟件測試管理與支持活動工作量是軟件測試工作量估算準確性的保障。假設軟件測試中的測試人員熟練程度高的個數為a,其測試活動所需的工作總量為Ma,測試支持活動工作總量為Qa,測試人員熟練度為中的個數為b,其測試活動所需的工作總量為Mb,測試支持活動工作總量為Qb,測試人員熟練度為低的個數為c,其測試活動所需的工作總量為Mc,測試支持活動工作總量為Qc,則測試管理和支持活動工作量分別為:

通過以上的優化得到軟件的最后工作量估算實際值為:

4.軟件測試工作量估算方法在DCU測試中的應用

4.1 項目介紹

本文以某地鐵DCU測試項目為例,采用DCU實時測試環境對軟件進行測試,測試項點包括:上電初始化、方向處理功能、控制信號處理功能、變流器邏輯控制功能、牽引特性曲線功能、制動特性曲線功能等26個測試項點。測試類型包括功能性測試、性能測試、接口測試、交互測試和文檔審查,環境數據分別進行各類型的測試,參與測試人員共計3名,對測試人員工作量進行估算,按照本文的軟件測試工作量估算優化方法計算出DCU測試的工作總量。

4.2 測試設計

測試人員技術水平按照以往工作經歷劃分為高、中、低三個級別,讓測試人員分別采用基于規模的估算方法進行軟件測試規模的預估,得到的結果如表2所示。

表2 軟件測試規模預估結果

以測試人員的技術水平進行賦權值,分別表示為N1=0.5,N2=0.3,N3=0.2,得到軟件測試規模估算結果為:

根據表2得到DCU測試項目的測試人員測試設計生產率各因素的折算系數分別為:用例可重用性系數0.1,用例復雜度系數0.03,用例錯誤密度系數為0.1,用例精簡性系數為0.1,測試人員技術水平系數為0.2。按測試執行生產率計算各因素的折算系數分別為:復雜度系數為0.08,重用性系數為0.05,測試人員操作熟練度系數為0.1,精簡性為0.05,可執行性系數為0.12,測試環境系數為0.1,測試工具系數為0.1,測試數據可用性系數為0.1,硬件穩定性系數為0.1。為此得到DCU測試設計的生產率為:

測試人員人均測試生產執行率為:

由此得到測試設計的工作量(人時)為:

測試執行的工作量為:

引入軟件測試管理工作量與支持活動工作量,測試人員技術水平按照以往工作經歷劃分為高、中、低三個級別,測試人員需要的管理工作量和支持活動工作量如表3所示:

表3 管理工作量和支持活動工作量(人時)需求

得到軟件測試管理工作量(人時)與支持活動工作量(人時)的結果分別為:

軟件測試總工作量(人時)為:

4.3 測試結果

以DCU測試項目實際測試工作量結果進行參考,在測試過程中功能性測試、性能測試、接口測試、交互測試和文檔審查的統計、設計、執行、管理與活動支持的實際值,測試工作量實際結果如表4所示。

通過表4的測試結果與本文的總DCU測試預估值偏差約為15.43,工作量的估算值接近實際工作量,估算方法基本可以滿足實現預計的規模,可正確反映出DCU測試所需的人力、物力和財力,為項目開發工作量估算提供了可靠的支持。

表4 DCU測試項目實際工作量結果(此表格數據建議重新整理)

5.結語

DCU(牽引控制單元)是機車、動車、城軌的重要組成部件,對DCU軟件測試工作量的估算是保證項目實施的人力、物力、財力分配準確性的關鍵,為此本文提出了軟件測試工作量估算方法優化策略,將影響軟件測試工作量估算準確性的因素折算成系數,并將測試人員工作水平劃分出上、中、下三等,再加上測試管理工作量與支持活動工作量,由此得到軟件工作量估算的公式。在以某地鐵DCU測試項目為例進行實際測試工作量估算中,運用優化公式進行計算得到的最后結果與工程實際的工作量結果幾乎接近,由此證明了該算法的可行。

[1]丁曉峰.地鐵車輛DCU牽引控制單元測試裝置[J].科研,2015(10):70-70.

[2]賀晉寧,杜偉偉,高靜.軟件自動化測試的探索實踐[J].國外電子測量技術,2016,35(7):1-4.

[3]亓卓亞.軟件項目中工作量估算方法的研究[J]辦公自動化,2017(12):33-39.

猜你喜歡
測試人員用例軟件測試
移動應用眾包測試人員信譽度復合計算模型研究
UML用例間包含關系與泛化關系的比較與分析
UML用例模型中依賴關系的比較與分析
基于OBE的軟件測試課程教學改革探索
航天軟件測試模型構建與應用
聯鎖軟件詳細設計的測試需求分析和用例編寫
從出土文獻用例看王氏父子校讀古書的得失
EXCEL和VBA實現軟件測試記錄管理
高校分析測試中心測試隊伍建設方案初探
淺析軟件測試中的心理學應用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合