- 軟件測試:實踐者方法
- 孫志安等編著
- 654字
- 2024-09-19 17:31:54
2.6 時間問題
軟件質量及其度量、分析、預測、評價等無不與時間密切相關。對于不同對象,時間含義不一樣。通常,軟件運行、測試、維護等過程中,使用執行時間(Execution Time)、時鐘時間(Clock Time)、日歷時間(Calendar Time)三種時間度量。執行時間是指軟件運行時實際占用CPU的時間;時鐘時間是軟件從運行開始到運行結束所經歷的時長,包括等待時間和輔助時間,但不包括停機時間;日歷時間是日常生活中所使用的時間。如果計算機資源被軟件連續占用,該軟件占用CPU的一個時間段,則執行時間與時鐘時間成正比。
對于上述三種時間單位,較日歷時間,執行時間能更好地表征軟件系統的運行行為,是軟件測試及軟件質量度量常用的時間度量,但為了便于理解及使用,最終與日歷時間關聯,尤其是不同系統之間進行比較時,尤為如此。因此,需要在日歷時間與執行時間之間進行轉換。如果難以得到執行時間,可用其他時間的近似值,如時鐘時間、加權時鐘時間、主要運行時間或其他計時單位代替。
在軟件系統運行、維護、測試等過程中,一旦確定時間基準,即可用累積失效函數(Cumulative Failure Function,CFF)、失效密度函數(Failure Intensity Function,FIF)、失效平均時間函數(Mean Time to Failure Function,MTFF)、平均無故障間隔時間(Mean Time Between Failure,MTBF)、平均失效時間(Mean Time To Failure,MTTF)、平均修復時間(Mean Time To Repair,MTTR)等任一種描述軟件失效行為。CFF表示與每一時間點相關的平均累積失效;FIF表示累積失效函數的變化率;MTFF表示觀察到下次失效的期望時間。這三種度量密切相關且可以相互轉化。例如,失效密度是累積失效函數相對于時間的瞬時值,如果可靠性函數呈指數分布,其平均失效時間即為失效密度函數的導數。