在軟件開發的瀑布模型中,測試是一個非常重要的工程階段。從保證軟件質量的角度來說,軟件測試是軟件質量保證工程的一個重要組成部分,也是最重要的質量保證手段。為了保證所提交的軟件產品能夠滿足客戶的需求,以及在使用中的可靠性,就必須對所開發的軟件產品進行系統而全面的測試;谶@一需求,軟件測試作為軟件開發過程中的一個重要階段,受到了軟件開發組織的普遍重視,并形成了一整套比較成熟的測試理論和技術方法。 然而,隨著軟件開發技術的不斷發展,以及軟件系統的規模和復雜性的不斷增加,傳統的軟件測試理論和技術已經不能夠很好地滿足開發組織在產品質量、開發成本以及研制周期等方面的需求。本文主要從軟件測試的組織和管理角度,闡述了CMMI模型規范對軟件測試技術的應用和擴充,對于軟件開發組織如何發展和完善軟件開發中的測試工作進行了初步探索。 1、 傳統的軟件測試技術和測試過程模型 傳統的軟件測試只是作為軟件開發過程中的一個特定階段,并且只針對軟件成品進行測試。如圖1所示,在瀑布式開發過程模型中,測試是在編碼完成之后和軟件產品交付運行之前的一個工程階段,所有的審查和評審活動都是針對軟件成型產品而開展。這樣的軟件測試主要關注的是對軟件的驗收測試,在一定程度上保證了所提交的軟件產品的質量。但是,全面質量管理的理論認為,軟件的高質量是開發和設計出來的,而不是測試出來的。因此,僅僅依靠對軟件產品進行測試的質量保證活動顯然是遠遠不夠的。隨著軟件開發過程模型和開發技術的不斷發展,軟件測試理論和技術也應該得到相應的發展。
隨著全面質量管理思想在軟件開發領域的應用,軟件測試也由最初的只針對軟件成品擴展到了針對軟件半成品和過程產品的全過程測試。這是對軟件測試的一種擴充。擴充后的軟件測試貫穿了軟件開發的全過程,包括從軟件需求分析、軟件概要設計、軟件詳細設計、編碼、集成、驗收等各個工程階段。相應地,各階段所開展的測試分別為需求測試、架構測試、詳細設計測試、單元測試、集成測試以及驗收測試等。這樣的軟件測試涵蓋了軟件開發的整個工程過程,對于識別和控制軟件缺陷、提高軟件質量起到了很明顯的成效。 2、 CMMI模型對軟件測試的支持和擴充 CMMI模型主張在開發過程中注重對過程和產品的度量,以量化的形式提供對管理過程的支持,以及對過程進行相應的評估和改進。這實際上就是對軟件測試技術的一種應用和擴充。CMMI模型將測量和分析作為一個單獨的過程域,充分體現了對開發過程中的測量技術的重視,該過程域的目的就是開發和維持度量能力,以便支持對管理信息的需要。 測量和分析過程域共有三個目標,其中兩個為特定目標,一個為共性目標。 第一個目標是協調測量和分析活動。為實現這一目標,模型中給出了四個方面的特定實踐,它們分別是確定測量對象,建立測量目標;詳細說明度量值,以處理測量目標;規定數據收集和存儲規程,說明如何獲得并存儲測量數據;規定分析規程,說明如何對度量數據進行分析和報告,并且安排優先順序。該目標中所針對的測量對象既包括組織所開發出的軟件產品、半成品以及過程產品,也包括對開發過程本身的度量。因此,在測量和分析過程中不僅要用到傳統軟件測試中的一些技術和方法,還需要在測量過程中引入統計過程控制等理論方法,提供對過程度量和改進的支持。 第二個目標是提供度量結果,以便處理信息需要和目標。為實現這一目標,模型中也給出了以下幾方面的特定實踐:收集度量數據,即獲得制定的度量數據;分析并解釋度量數據;管理并存儲度量數據、度量規范和分析結果;通報分析結果,向所有的干系人報告測量和分析活動的結果。在這一目標中,主要關注的是對測量結果的分析和使用。在傳統的軟件測試中,只要產品通過了需求方的驗收,達到了合同要求,開發組織一般也就不再重視對軟件測試結果數據的管理和使用。從過程改進的角度來說,這是很不科學的;贑MMI的集成化過程改進和評估,提出了建立開發過程數據庫的思想,作為組織進行過程改進的基礎。而建立過程數據的過程中,實際上也就是對測試和度量數據的積累和存儲過程。從這一點來說,在開發過程中開展軟件測試以及針對開發過程的度量,是建立過程數據庫的必要步驟。 第三個目標是共性目標,即將測量和分析活動制度化為可管理的過程。這一目標主要關注的是對軟件測試和過程度量活動的管理以及制度化。針對這一共性目標,CMMI模型從四個不同方面給出了10個共性實踐。首先,作為執行測量和分析活動的承諾,要求組織建立方針,為策劃和執行“測量和分析”過程提供組織級的支持;其次,在執行能力方面,組織應該制定測量和分析過程計劃;提供必要的資源;分配相應的責任;并且對相關人員進行培訓。第三,為了指導該過程的實施,組織應該將測量和分析過程指定的工作產品置于配置管理的適當層次;確定與過程相關的干系人并使之介入;同時還要對測量和分析過程進行監督和控制。最后,作為對測量和分析活動的驗證實施,組織應該客觀評價測量和分析過程以及過程的工作產品和服務的遵循情況;同時,由高層管理者審查測量和分析過程的活動、狀態和分析結果,并解決相應的問題。這一共性目標的實現,實際上就是把測量和分析活動制度化為一種組織級的行為,在整個組織的范圍內加強了對軟件測試和過程度量活動的組織和管理工作。 從以上分析可以看出,CMMI模型主要從以下三個方面擴充的傳統的軟件測試技術: 。1) 從單純的對軟件產品的測試活動,擴展為軟件產品的測試和開發過程的度量。 這一方面主要體現在過程度量對軟件測試的依賴和應用。對開發過程進行度量,需要利用對軟件產品、半成品以及工作產品的測試結果,從而建立對軟件產品缺陷對開發過程的可跟蹤性。從這一點來說,對開發過程的度量,實際上也就是針對軟件產品的測試活動的擴展,其與傳統的軟件測試的不同之處就在于關注對軟件測試結果數據的分析和利用,將測試數據有效轉換成為能夠標識過程缺陷的統計數據。 。2) 軟件測試由原來的事后測試行為發展為全過程測試和分析,成為一種缺陷預防的有效方式。 。3) 軟件測試與開發過程的其他階段不再是串行工作方式,而是與整個開發過程并行進行。 與瀑布模型相比,CMMI模型中所描述的軟件測試和過程度量工作與整個開發過程是并行進行的,是一種基于并行工程的測試和度量行為;诓⑿泄こ涕_展的軟件測試活動,存在于軟件生命周期的各個階段,其基本特點是以質量保證和客戶要求為核心開展對軟件產品和開發過程的測試和度量,力爭將缺陷控制在軟件開發過程的每一個階段,從而可以有效縮短開發周期,降低質量風險,并且可以及時吸取經驗教訓,提供對過程改進的支持。這也體現了CMMI模型對并行工程思想的一種支持和應用。 除了測量和分析過程域之外,CMMI4中的量化過程管理過程域也是對軟件測試和過程度量技術的一種更高層次上的應用。在該過程域中,測試和度量已經不僅僅是一種被管理的過程,而且其本身也成為了一種有效的輔助管理手段,從定量化的角度對軟件開發過程的管理和組織活動給出了支持。開發過程管理從定性到定量的轉化,是CMMI集成化過程改進所追求的目標之一,也是開發組織一直追求的一種更高水平的管理方式。因此,隨著軟件開發組織過程能力的不斷提高,軟件測試和度量技術也將會得到不斷的發展和完善。 |
文章來源于領測軟件測試網 http://www.kjueaiud.com/
版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
技術支持和業務聯系:info@testage.com.cn 電話:010-51297073
老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月