摘要:很多軟件企業(yè)沒有完整不變的需求作為測試依據(jù),導致項目工作開展中測試人員很被動。針對這一行業(yè)現(xiàn)狀,結(jié)合軟件測試STEP過程改進模型,提出測試過程引導開發(fā)過程的測試預防共享策略。發(fā)揮測試人員把需求分析,設(shè)計,質(zhì)量控制提前量化的作用。重新定位軟件測試過程管理和控制流程,確立企業(yè)通過STEP過程改進模型預防質(zhì)量風險的辦法。
關(guān)鍵詞:STEP模型;軟件需求;軟件測試過程改進
中圖分類號:TP311
文獻標識碼:A
文章編號:1009-3044(2020)04-0209-02
收稿日期:2019-10-28
作者簡介:郭文欣(1988—),女(滿族),重慶人,專任教師,碩士,研究方向為軟件測試與管理。
1 軟件測試過程現(xiàn)狀
軟件測試基礎(chǔ)理論中,作為指導測試進行的測試依據(jù)可以是文檔或者信息。測試過程可以依據(jù)它來進行測試分析及測試用例編寫。在當前的大部分企業(yè)中測試依據(jù)多被認為是需求規(guī)格說明書或原型圖等。但是,由于國內(nèi)IT行業(yè)內(nèi)需求分析力量薄弱,又或者是甲方用戶需求模糊不定,需求文檔或需求信息常常出現(xiàn)功能描述不清,歧義性,需求缺失等情況。很多團隊需求變更的溝通只局限于用戶、需求調(diào)研人員和開發(fā)團隊之間,測試團隊沒有追蹤需求。這些情況對測試工作質(zhì)量保證具有一定負面影響,在需求文檔始終得不到確定和修正的情況下,如何在測試過程中規(guī)避需求不一致和缺失帶來的質(zhì)量風險是值得思考的。
2 STEP過程改進模型的提出
早在20世紀中期,軟件測試過程的演變就標志著軟件質(zhì)量成本效益的發(fā)展,軟件測試過程管理已經(jīng)成為軟件質(zhì)量的重要保證。早期的測試階段從調(diào)試為主時期、證明為主、破壞為主時期、評估為主時期演變發(fā)展為預防為主時期21。
STEP(Systematic Test Evaluation Process系統(tǒng)化測試評估過程)過程改進模型是在證明成本效益過程中不斷實踐產(chǎn)生的以預防為主的生命周期模型,它包括測試中的某些評審和分析活動,包括:評審軟件需求,確定是否可定義令人滿意的測試標準;分析軟件設(shè)計,確定針對設(shè)計的測試條件;評審產(chǎn)品,如測試計劃和測試數(shù)據(jù),確定其充分性[1]。
3 基于STEP指導企業(yè)測試過程改進
3.1 STEP過程改進模型的假設(shè)
STEP過程改進模型是非規(guī)范性的,企業(yè)使用STEP模型需要滿足一些前提條件,見表1。
3.2 STEP過程改進模型的策略
基于STEP模型測試共享預防策略,測試人員在軟件設(shè)計之前就應開發(fā)出全面的測試集,將測試集設(shè)計置于軟件設(shè)計之前。在這一策略中,授予測試部門產(chǎn)品發(fā)布權(quán)或延遲發(fā)布權(quán),測試人員應對產(chǎn)品執(zhí)行時的失敗承擔責任,該策略由以下四個部分組成[2]:
(1)向開發(fā)人員提供質(zhì)量測試計劃和測試設(shè)計的清晰定義,包括指導方針、措施和示例;
(2)在軟件設(shè)計之前要求基于需求信息的測試設(shè)計,在軟件實現(xiàn)之前要求基于軟件設(shè)計的測試設(shè)計;
(3)形成良好的測試計劃、設(shè)計和執(zhí)行記錄文檔;
(4)上級充分授權(quán)及批準結(jié)果。
4 基于STEP模型確立企業(yè)改進內(nèi)容
通過STEP模型的策略,確立企業(yè)在過程實施中可分三個
要素設(shè)計測試。核心要素是基于軟件需求信息的開發(fā),測試計劃必須對軟件失效風險進行評估且在開發(fā)周期的最早期開始,測試人員在開發(fā)活動開始前參與市場需求調(diào)研產(chǎn)出需求設(shè)計,向客戶、分析人員、設(shè)計人員和程序員展示軟件需求和設(shè)計結(jié)果。第二要素以軟件設(shè)計信息為基礎(chǔ),使用測試用例集來提供對用戶和開發(fā)人員都可訪問的軟件測試用例設(shè)計集來反哺開發(fā)設(shè)計。最后的要素以軟件實現(xiàn)信息為基礎(chǔ),測試用例設(shè)計及執(zhí)行的同時產(chǎn)出新需求納入產(chǎn)品的下一個開發(fā)版本。企業(yè)的過程改進活動見圖1。
這一預防生 命周期測試過程改進活動,前期在設(shè)計、編碼之前,就要進行測試需求設(shè)計和測試用例框架編寫,把經(jīng)過評審的測試需求,設(shè)計,質(zhì)量控制提前量化。測試團隊需要參加項目調(diào)研分析、參與各項討論活動會議,跟蹤記錄詳細需求(包括客戶或需求人員的口頭約定)。深入掌握業(yè)務、國家行業(yè)規(guī)范、規(guī)避受法律法規(guī)限制的系統(tǒng)風險。這樣才能跟蹤到任何一個細小的需求點,同時對易用性、安全性進行測試集設(shè)計。項目團隊全員參與評審,形成一個完備的測試覆蓋面,用例設(shè)計和測試執(zhí)行過程中對于需求的補充一律納入下一個版本開發(fā)計劃。當前版本產(chǎn)出測試報告記錄和缺陷、評估記錄[3]。
5 結(jié)束語
在實際項目開發(fā)中,作為測試人員,如何在需求不完備的情況下,利用自己的知識,技能,儲備和經(jīng)驗,應用各方面的條件來實現(xiàn)測試過程。作為測試規(guī)劃和設(shè)計的先決條件,STEP模型強調(diào)需求分析式的預防模型,設(shè)法解決了測試被動到主導的問題。將測試引導開發(fā)視為風險管理的一種形式,能夠較好控制軟件失效的預期成本。
參考文獻:
[1]Gelperin D,Hetzel B.The growth of software testing[J].Communications of the ACM,1988,31(6):687-695
[2]Rex Black.高級軟件測試經(jīng)理[M].劉琴,譯.北京:清華大學出版社,2012.
[3]商惠華.基于過程改進的軟件質(zhì)量管理模型[J].計算機工程與設(shè)計,2011,32(5):1725-1729.
[通聯(lián)編輯:代影]