❶ 什麼是類比估演算法=自上而下的估算
類比估演算法也被稱作自上而下的估算,是一種通過比照已完成的類似項目的實際成本,去估算出新項目成本的方法。 類比估演算法適合評估一些與歷史項目在應用領域、環境和復雜度方面相似的項目。其約束條件在於必須存在類似的具有可比性的軟體開發系統,估算結果的精確度依賴於歷史項目數據的完整性、准確度以及現行項目與歷史項目的近似程度。 採用這個方法的前提是: a. 對以前項目規模和工作量的計量是正確的; b. 至少有一個以前的項目的規模和新項目類似; c. 新項目的開發周期、使用的開發方法、開發工具與以前項目的類似,而且開發人員的技能和經驗也不能與原。類比法的基本步驟是:1、整理出項目功能列表和實現每個功能的編碼行數;2、標識出每個功能列表與歷史項目的相同點和不同點,特別要注意歷史項目做得不夠的地。方;(吃一塹,漲一智;避免犯同樣的錯誤)3、通過步驟1和2得出各個功能的估計值;4、產生規模估計。優點:估計較為准確;缺點:要依賴於實際經驗;必須要有類似的項目可供參考 採用類比法往往還要解決可重用代碼的估算問題。估計可重用代碼量的最好辦法就是由程序員或系統分析員詳細地考查已存在的代碼,估算出新項目可重用的代碼中需重新設計的代碼百分比、需重新編碼或修改的代碼百分比以及需重新測試的代碼百分比。根據這三個百分比,可用下面的計算公式計算等價新代碼行:等價代碼行= [(重新設計% +重新編碼% +重新測試%)/3]×已有代碼行比如:有10,000行代碼,假定35%需要重新設計,55%需要重新編碼,75%需要重新測試,那麼其等價的代碼行可以計算為: [(30% + 50% + 70%)/3]×10,000= 5,500 等價代碼行。即:重用這10000代碼相當於編寫 5500代碼行的工作量。
❷ 軟體測試評估的方法有哪些;分析這些方法有哪些特徵。
1. 黑盒測試
黑盒測試顧名思義就是將被測系統看成一個黑盒,從外界取得輸入,然後再輸出。整個測試基於需求文檔,看是否能滿足需求文檔中的所有要求。黑盒測試要求測試者在測試時不能使用與被測系統內部結構相關的知識或經驗,它適用於對系統的功能進行測試。
黑盒測試的優點有:
1)比較簡單,不需要了解程序內部的代碼及實現;
2)與軟體的內部實現無關;
3)從用戶角度出發,能很容易的知道用戶會用到哪些功能,會遇到哪些問題;
4)基於軟體開發文檔,所以也能知道軟體實現了文檔中的哪些功能;
5)在做軟體自動化測試時較為方便。
黑盒測試的缺點有:
1)不可能覆蓋所有的代碼,覆蓋率較低,大概只能達到總代碼量的30%;
2)自動化測試的復用性較低。
2. 白盒測試
白盒測試是指在測試時能夠了解被測對象的結構,可以查閱被測代碼內容的測試工作。它需要知道程序內部的設計結構及具體的代碼實現,並以此為基礎來設計測試用例。
白盒測試的直接好處就是知道所設計的測試用例在代碼級上哪些地方被忽略掉,它的優點是幫助軟體測試人員增大代碼的覆蓋率,提高代碼的質量,發現代碼中隱藏的問題。
白盒測試的缺點有:
1)程序運行會有很多不同的路徑,不可能測試所有的運行路徑;
2)測試基於代碼,只能測試開發人員做的對不對,而不能知道設計的正確與否,可 能會漏掉一些功能需求;
3)系統龐大時,測試開銷會非常大。
3. 基於風險的測試
基於風險的測試是指評估測試的優先順序,先做高優先順序的測試,如果時間或精力不夠,低優先順序的測試可以暫時先不做。有如下一個圖,橫軸代表影響,豎軸代表概率,根據一個軟體的特點來確定:如果一個功能出了問題,它對整個產品的影響有多大,這個功能出問題的概率有多大?如果出問題的概率很大,出了問題對整個產品的影響也很大,那麼在測試時就一定要覆蓋到。對於一個用戶很少用到的功能,出問題的概率很小,就算出了問題的影響也不是很大,那麼如果時間比較緊的話,就可以考慮不測試。
基於風險測試的兩個決定因素就是:該功能出問題對用戶的影響有多大,出問題的概率有多大。其它一些影響因素還有復雜性、可用性、依賴性、可修改性等。測試人員主要根據事情的輕重緩急來決定測試工作的重點。
4. 基於模型的測試
模型實際上就是用語言把一個系統的行為描述出來,定義出它可能的各種狀態,以及它們之間的轉換關系,即狀態轉換圖。模型是系統的抽象。基於模型的測試是利用模型來生成相應的測試用例,然後根據實際結果和原先預想的結果的差異來測試系統。