需要利用一系列的事情營造聲勢等等。比如,在測試組成立之初,可以利用開發(fā)測試缺陷信息系統(tǒng)的時機,一方面提高測試隊伍的士氣以及在這個組織中的形象,另一方面還可以為今后測試流程的建立打下基礎。
怎樣確立測試機構的地位?
測試機構在組織中地位的確定事關測試機構執(zhí)行測試任務的效力。軟件工程大師布魯克林20多年以前就在《人月神話》中指出,測試機構的獨立是十分重要的。在微軟的軟件開發(fā)模式中,測試團隊的權威是相當高的,測試團隊、開發(fā)團隊和項目管理團隊是軟件項目組織中獨立的團隊,分別向各自的上級部門負責,類似于美國政府的三權分立。然而,我們還不能照搬微軟的經驗,因為我們并沒有這么多的財力、人力來保證一個獨立的測試實驗室和龐大的測試隊伍。所以,為項目組配備一個測試小組幾乎是不可能的,但是我們至少應該在整個研發(fā)部門成立獨立的測試小組,統(tǒng)一開展測試任務的執(zhí)行,同時為保證與不同的產品緊密銜接,應該實行責任測試工程師制度。測試團隊應直接向研發(fā)部門的質量總監(jiān)負責,質量總監(jiān)在研發(fā)部門的地位應該等于或者高于開發(fā)團隊的最高負責人,只有這樣才能保證測試機構的權威性。當然,究竟配備多少測試工程師取決于企業(yè)的具體狀況,但是測試機構的獨立性是必須保證的。
如何處理歷史遺留問題?
在MBA教程中,關于危機的處理原則非常簡單,即“說真話”,并且趕快說。對于測試小組成立之初歷史問題的處理來說,可以采用相同的原則,即“正視歷史問題,說真話,趕快說”,具體可以分解為以下幾個要點。
第一,建立缺陷管理信息系統(tǒng),收集整理遺留的缺陷,報告相關數據。測試小組成立以前,企業(yè)的產品中肯定已經存在大量的歷史缺陷,散布在技術支持部門和開發(fā)人員當中。測試小組的當務之急就是趕緊把這些紙面上的問題電子化,全部收集起來,同時建立一個規(guī)范的缺陷報告系統(tǒng)。缺陷管理系統(tǒng)有很多,最簡單的就是一個excel電子表格,最復雜可能要算是Rational的缺陷系統(tǒng)了。如何使用這些系統(tǒng),取決于企業(yè)的實際情況,一般認為,一個比較簡單的ASP + SQL Server的小型缺陷收集系統(tǒng)就足夠了,系統(tǒng)最好是自己開發(fā),這樣維護比較方便,同時業(yè)務流程修改起來也比較容易。
第二,建立嚴格的版本管理制度,追蹤發(fā)布的每一個版本。中小軟件企業(yè)為了生存,往往不重視軟件產品版本的管理,隨時都為用戶提供不斷修訂的版本。這樣導致了修復問題的代價變得越來越大,因為每一次修改都很倉促,常常是解決了這個問題,衍生出很多其他的問題。解決這個問題的關鍵是建立嚴格的版本管理,任何一個版本的發(fā)布都必須經過測試小組全面的測試,同時詳細記錄每一個版本的信息。這些都與配置管理息息相關,所以測試體系的建設中還必須建立有效的配置管理。
第三,提高開發(fā)人員的編碼質量,建立嚴格的代碼評審制度。這一點在用友做的很好了,用友的每一段程序都有人檢查,對于其中典型的代碼還當眾進行分析,從而不斷提供高開發(fā)人員的編碼質量。再好的測試團隊也只是在后面檢查代碼編寫的質量,代碼質量真正的提高還要靠開發(fā)人員功力的提升。開發(fā)和測試雙管齊下,就能保證軟件的質量得到不斷的提升。
總結
測試體系的創(chuàng)建是事關中小軟件企業(yè)發(fā)展的生死門檻,愿本文能給眾多的軟件研發(fā)主管提供一點新的思路,希望有更多的人學會用拿來主義看待國際先進的理論,從而開創(chuàng)測試體系創(chuàng)建的新局面。