軟件測試與項目管理

我國在經過了軟件產品無序競爭階段,已經進入理性化競爭,各個企業都在強調軟件質量,以保證質量作爲企業生命線。在這樣的大環境中,強調軟件測試,突出軟件測試管理,大膽地對軟件項目分出軟件測試子項目,並進行項目管理,將會得到企業領導的大力支持,並且,如果項目管理工作做到位,將產生事半功倍的效果。

軟件測試與項目管理

  項目管理無處不在

項目管理就是以項目爲對象的系統管理方法。通過一個臨時性的、專門的柔性組織,對項目進行高效率的計劃、組織、指導和控制,以實現項目全過程的動態管理和項目目標的綜合協調與優化。 項目管理從其本質上講是一個不斷整合和平衡的過程,因而非常適合軟件測試這種不定因素很多的項目。

軟件測試項目常常不能令客戶或開發方滿意,其癥結體現在多個方面,而解決這些問題需要運用項目管理的方法和理論指導。從知識領域來說,項目管理包含整體管理、範圍管理、質量管理、時間管理、溝通管理、成本管理、人力資源管理、風險管理、採購管理9大知識體系。軟件測試涉及客戶、開發人員、測試人員三方的溝通交流不夠、交流上有誤解或者根本不進行交流。測試人員通常對軟件測試複雜性估計不足,圖形用戶界面、分佈式應用、數據通信、超大型關係型數據庫以及龐大的系統規模等衆多因素導致軟件及系統的複雜性呈指數增長,從而對應的.測試工作也需要分層次、分階段進行。而軟件項目的日程表也很難做到準確,很多時候需要預計和猜測,當最終期限迫近和關鍵時刻到來之際,主管人員首先考慮的是壓縮測試項目時間。測試過程中,需求通常會發生變化使得是測試人員的日程需要重新安排,對其它項目產生影響。隨着軟件複雜程度的加深,軟件體系越來越龐大,軟件測試工具在某些測試中是不可或缺的,那麼採購管理也是必需的。另外,軟件項目計劃階段低估測試子項目的費用,測試人員專業水平不如開發人員,腳本的重用性差、缺陷跟蹤,需要軟件測試強調成本管理、人力資源管理、質量管理與風險管理。

採用項目管理技術,軟件測試工作有更好的工作能見度,對不同的工作任務可改進協調和控制,能夠縮短產品開發時間,能夠減少總計劃費用,提高利潤率,可保證項目成員有較高的工作熱情和較明確的任務方向,廣泛的項目職責能夠加速管理人員的成長,實現較好的項目安全控制。

  項目管理標準化測試流程

從概念上講,軟件測試的項目管理是指爲了使軟件測試項目能夠按照預定的成本、進度、質量順利完成,而對成本、人員、進度、質量、風險等進行分析和管理的活動。它關注的是子系統中人員、過程、產品三要素的互動與變化,子系統內部各過程的相互關聯、相互作用以及測試管理子系統與開發管理子系統的相互關聯、相互作用。

軟件測試中的項目管理,特別強調工作分解結構的合理性、項目測試文檔的規範、良好的溝通機制與項目成員溝通能力、項目管理工具和測試工具的作用。工作分解結構(WBS),是進行範圍規劃時所使用的重要工具和技術之一,是面向可交付成果的對項目元素的分組,它組織並定義了整個項目範圍,未列入工作分解結構的工作將排除在項目範圍之外。它是項目團隊在項目期間要完成或生產出的最終細目的等級樹,所有這些細目的完成或產出構成了整個項目的工作範圍。進行工作分解是非常重要的工作,它在很大程度上決定項目能否成功。

通常,每個測試過程有5個基本測試文檔:測試計劃指明測試範圍、方法、資源,以及相應測試活動的時間進度安排表的文檔;測試方案指明爲完成軟件或軟件集成特性的測試而進行的設計測試方法的細節文檔;測試用例指明爲完成一個測試項的測試輸入、預期結果、測試執行條件等因素的文檔;測試規程指明執行測試時測試活動序列的文檔;測試報告指明執行測試結果的文檔。

在軟件測試項目中,許多專家都認爲:對於成功,最大的威脅就是溝通的失敗。軟件測試項目成功的三個主要因素是用戶的積極參與、與開發項目組的協調配合和管理層的大力支持。三要素全部依賴於良好的溝通技巧。溝通管理的目標是及時並適當地創建、收集、發送、儲存和處理項目的信息。有效的溝通管理能夠創建一個良好的風氣,讓項目成員對準確地報告項目的狀態感到安全,讓項目在準確的、基於數據的事實基礎上運行,而不會因爲害怕報告壞消息而形成盲目樂觀的氛圍。

現代項目管理工具提供了項目管理理念和方法,可以使我們方便的完成項目管理的過程控制,進度、費用跟蹤。軟件測試工具在適合的項目中,可以大大減小工作量,並保證測試結果的準確性。

軟件測試項目管理是一項系統工程,合同簽訂後,項目經理應擁有一定權利,並能及時調動企業資源,爲項目的按時完成提供必要條件,即在項目成員、客戶、開發經理、主管人員、服務商等之間定義明確的責權利關係。