第一級 初始級
tmm初始級軟體測試過程的特點是測試過程無序,有時甚至是混亂的,幾乎沒有妥善定義的。初始級中軟體的測試與除錯常常被混為一談,軟體開發過程中缺乏測試資源,工具以及訓練有素的測試人員。初始級的軟體測試過程沒有定義成熟度目標。
第二級 定義級
tmm的定義級中,測試己具備基本的測試技術和方法,軟體的測試與除錯己經明確地被區分開。這時,測試被定義為軟體生命週期中的乙個階段,它緊隨在編碼階段之後。但在定義級中,測試計畫往往在編碼之後才得以制訂,這顯然有背於軟體工程的要求。
tmm的定義級中需實現
3個成熟度目標
:制訂測試與除錯目標,啟動測試計畫過程,制度化基本的測試技術和方法。
(i)制訂測試與除錯目標
軟體組織必須消晰地區分軟體開發的測試過程與除錯過程,識別各自的目標,任務和括動。正確區分這兩個過程是提高軟體組織測試能力的基礎。與除錯工作不同,測試工作是一種有計畫的活動,可以進行管理和控制。這種管理和控制活動需要制訂相應的策略和政策,以確定和協調這兩個過程。
制訂測試與除錯目標包含
5個子成熟度目標
: 1)
分別形成測試組織和除錯組織,並有經費支援。
2)規劃並記錄測試目標。
3)規劃井記錄除錯目標。
4)將測試和除錯目標形成文件,並分發至專案涉及的所有管理人員和開發人員。
5)將測試目標反映在測試計畫中。
(ii)
啟動測試計畫過程
制訂計畫是使乙個過程可重複,可定義和可管理的基礎。測試計畫應包括測試目的,風險分析,測試策略以及測試設計規格說明和測試用例。此外,測試計畫還應說明如何分配測試資源,如何劃分單元測試,整合測試,系統測試和驗收測試的任務。啟動測試計畫過程包含
5個子目標
: 1)
建立組織內的測試計畫組織並予以經費支援。
2)建立組織內的測試計畫政策框架並予以管理上的支援。
3)開發測試計畫模板井分發至專案的管理者和開發者。
4)建立一種機制,使使用者需求成為測試計畫的依據之一。
5)評價,推薦和獲得基本的計畫工具並從管理上支援工具的使用。
(iii)
制度化基本的測試技術和方法
為改進測試過程能力,組織中需應用基本的測試技術和方法,並說明何時和怎樣使用這些技術,方法和支援工具。將基本測試技術和方法制度化有
2個子目標
: 1)
在組織範圍內成立測試技術組,研究,評價和推薦基本的測試技術和測試方法,推薦支援這些技術與方法的基本工具。
2)制訂管理方針以保證在全組織範圍內一致使用所推薦的技術和方法。
第** 整合級
在整合級,測試不僅僅是跟隨在編碼階段之後的乙個階段,它已被擴充套件成與軟體生命週期融為一體的一組已定義的活動。測試活動遵循軟體生命週期的
v字模型。測試人員在需求分析階段便開始著手制訂測試計畫,並根據使用者或客戶需求建立測試目標,同時設計測試用例並制訂測試通過準則。在整合級上,應成立軟體測試組織,提供測試技術培訓,關鍵的測試活動應有相應的測試工具予以支援。在該測試成熟度等級上,沒有正式的評審程式,沒有建立質量過程和產品屬性的測試度量。整合級要實現
4個成熟度目標,它們分別是
:建立軟體測試組織,制訂技術培訓計畫,軟體全壽命週期測試,控制和監視測試過程。
(i)建立軟體測試組織
軟體測試的過程及質量對軟體產品質量有直接影響。由於測試往往是在時間緊,壓力大的情況下所完成的一系列複雜的活動,因此應由訓練有素的專業人員組成測試組。測試組要完成與測試有關的多種活動,包括負責制訂測試計畫,實施測試執行,記錄測試結果,制訂與測試有關的標準和測試度量,建立鍘試資料庫,測試重用,測試跟蹤以及測試評價等。建立軟體測試組織要實現
4個子目標
: 1)
建立全組織範圍內的測試組,並得到上級管理層的領導和各方面的支援,包括經費支援。
2)定義測試組的作用和職責。
3)由訓練有素的人員組成測試組。
4)建立與使用者或客戶的聯絡,收集他們對測試的需求和建議。
(ii)
制訂技術培訓計畫
為高效率地完成好測試工作,測試人員必須經過適當的培訓。制訂技術培訓規劃有
3個子目標
: 1)
制訂組織的培訓計畫,並在管理上提供包括經費在內的支援。
2)制訂培訓目標和具體的培訓計畫。
3)成立培訓組,配備相應的工具,裝置和教材
(iii)
軟體全生命週期測試
提高測試成熟度和改善軟體產品質量都要求將測試工作與軟體生命週期中的各個階段聯絡起來。該目標有
4個子目標
: 1)
將測試階段劃分為子階段,並與軟體生命週期的各階段相聯絡。
2)基於已定義的測試子階段,採用軟體生命週期
v字模型。
3)制訂與淵試相關的工作產品的標準。
4)建立測試人員與開發人員共同工作的機制。這種機制有利於促進將測試活動整合於軟體生命週期中
(iv)
控制和監視測試過程
為控制和監視測試過程,軟體組織需採取相應措施,如
:制訂測試產品的標準,制訂與測試相關的偶發事件的處理預案,確定測試里程碑,確定評估測試效率的度量,建立測試日誌等。控制和監視測試過程有
3個子目標
: 1)
制訂控制和監視測試過程的機制和政策。
2)定義,記錄並分配一組與測試過程相關的基本測量。
3)開發,記錄並文件化一組糾偏措施和偶發事件處理預案,以備實際測試嚴重偏離計畫時使用。 在
tmm的定義級,測試過程中引入計畫能力,在
tmm的整合級,測試過程引入控制和監視活動。兩者均為測試過程提供了可見性,為測試過程持續進行提供保證。
第四級 管理和測量級
在管理和測量級,測試活動除測試被測程式外,還包括軟體生命週期中各個階段的評審,審查和追查,使測試活動涵蓋了軟體驗證和軟體確認活動。根據管理和測量級的要求,軟體工作產品以及與測試相關的工作產品,如測試計畫,測試設計和測試步驟都要經過評審。因為測試是乙個可以量化並度量的過程。為了測量測試過程,測試人員應建立測試資料庫。收集和記錄各軟體工程專案中使用的測試用例,記錄缺陷並按缺陷的嚴重程度劃分等級。此外,所建立的測試規程應能夠支援軟體組終對測試過程的控制和測量。管理和測量級有
3個要實現的成熟度目標
:建立組織範圍內的評審程式,建立測試過程的測量程式和軟體質量評價。
(i)建立組織範圍內的評審程式
軟體組織應在軟體生命週期的各階段實施評審,以便盡早有效地識別,分類和消除軟體中的缺陷。建立評審程式有
4個子目標
: 1)
管理層要制訂評審政策支援評審過程。
2)測試組和軟體質量保證組要確定並文件化整個軟體生命週期中的評審目標,評審計畫,評審步驟以及評審記錄機制。
3)評審項由上層組織指定。通過培訓參加評審的人員,使他們理解和遵循相牢的評審政策,評審步驟。
(ii)
建立測試過程的測量程式
測試過程的側量程式是評價測試過程質量,改進測試過程的基礎,對監視和控制測試過程至關重要。測量包括測試進展,測試費用,軟體錯誤和缺陷資料以及產品淵量等。建立淵試測量程式有
3個子目標
: 1)
定義組織範圍內的測試過程測量政策和目標。
2)制訂測試過程測量計畫。測量計畫中應給出收集,分析和應用測量資料的方法。
3)應用測量結果制訂測試過程改進計畫。
(iii)
軟體質量評價
軟體質量評價內容包括定義可測量的軟體質量屬性,定義評價軟體工作產品的質量目標等項工作。軟體質量評價有
2個子目標
: 1)
管理層,測試組和軟體質量保證組要制訂與質量有關的政策,質量目標和軟體產品質量屬性。
2)測試過程應是結構化,己測量和己評價的,以保證達到質量目標。
第五級 優化,預防缺陷和質量控制級
由於本級的測試過程是可重複,已定義,已管理和己測量的,因此軟體組織能夠優化調整和持續改進測試過程。測試過程的管理為持續改進產品質量和過程質量提供指導,並提供必要的基礎設施。優化,預防缺陷和質量控制級有3個要實現的成熟度目標
: (i)應用過程資料預防缺陷。這時的軟體組織能夠記錄軟體缺陷,分析缺陷模式,識別錯誤根源,制訂防止缺陷再次發生的計畫,提供跟蹤這種括動的辦法,並將這些活動貫穿於全組織的各個專案中。應用過程資料預防缺陷有礴個成熟度子目標
: 1)成立缺陷預防組。
2)識別和記錄在軟體生命週期各階段引入的軟體缺陷和消除的缺陷。
3)建立缺陷原因分析機制,確定缺陷原因。
4)管理,開發和測試人員互相配合制訂缺陷預防計畫,防止已識別的缺陷再次發生。缺陷預防計畫要具有可跟蹤性。
(ii)
質量控制在本級,軟體組織通過採用統計取樣技術,測量組織的自信度,測量使用者對組織的信賴度以及設定軟體可靠性目標來推進測試過程。為了加強軟體質量控制,測試組和質量保證組要有負責質量的人員參加,他們應掌握能減少軟體缺陷和改進軟體質量的技術和工具。支援統計質量控制的子目標有
: 1)軟體測試組和軟體質量保證組建立軟體產品的質量目標,如:產品的缺陷密度,組織的自信度以及可信賴度等。
2)測試管理者要將這些質量目標納入測試計畫中。
3)培訓測試組學習和使用統計學方法。
4)收集使用者需求以建立使用模型
(iii)
優化測試過程在測試成熟度的最高端,己能夠量化測試過程。這樣就可以依據量化結果來調整測試過程,不斷提高測試過程能力,並且軟體組織具有支援這種能力持續增長的基礎設施。基礎設施包括政策,標準,培訓,裝置,工具以及組織結構等。優化測試過程包含
: 1)識別需要改進的測試括動
2)實施改進。
3)跟蹤改進程式。
4)不斷評估所採用的與測試相關的新工具和新方法。
5)支援技術更新。
(iv)
測試過程優化所需子成熟度目標包括
: 1)建立測試過程改進組,監視測試過程並識別其需要改進的部分。
2)建立適當的機制以評估改進測試過程能力和測試成熟度的新工具和新技術。
3)持續評估測試過程的有效性,確定測試終止準則。終止測試的準則要與質盤目標相聯絡。
自動化測試成熟度模型
自動化測試成熟度模型 這裡討論一下不同的指令碼技術及用途。接下來要討論的這些技術並不是相互排斥的,事實恰好相反,它們是相輔相成的,每種種指令碼技術在支援指令碼完成測試用例的時間和開銷上都有各自的長處和短處。應該注意到,對於軟體測試來說,使用哪種指令碼技術並不是最主要的,指令碼所支援的實現測試用例體現...
軟體測試成熟度與自動化測試
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!kerry zallar 在 are you ready for automation 中提到軟體測試的成熟度對於成功實現自動化測試的影響,其中的乙個圖對我來說很有啟發 我想大部分在嘗試自動化測試而未獲得成功的軟體企業要首先看看這個圖,看自己的軟體...
CMM軟體成熟度模型
cmm軟體成熟度模型 cmm是指 能力成熟度模型 其英文全稱為 capability maturity model for software,英文縮寫為sw cmm,簡稱cmm。它是對於軟體組織在定義 實施 度量 控制和改善其軟體過程的實踐中各個發展階段的描述。cmm的核心是把軟體開發視為乙個過程,...