管理的作用是預防。預防可能有效也可能無效,預防了并不代表一定不會出錯。質量體系的作用就是預防,就是要降低出錯的概率。這恰如中藥,中藥見效慢但是能夠強身健體,從根本上解決病因。而測試與同行評審則好比是西藥,立竿見影,直接作用在痛處。
同行評審是在軟件開發的各個生命周期階段都可以實施的質量管理措施,測試是當軟件模塊開發完成后才可以采取的質量管理措施,二者是互補的,同行評審可以發現測試無法發現的問題,測試也可以發現同行評審無法發現的問題。
根據統計數據證明,同行評審發現問題效率一般是測試發現問題的3倍以上,因此越來越多的企業開始重視同行評審的工作量投入。在TSP/PSP中,Humphery建議設計評審的工作量要大于設計工作量的1/2,代碼評審的工作量要大于編碼工作量的1/2。企業在做同行評審時,往往由于工期的原因而省略了同行評審,急于進入編碼,于是需求階段注入的缺陷、設計階段注入缺陷全都集中在了測試階段來發現與修改,則增加了測試的負擔。據研究,在生命周期的后期修改缺陷的成本是在前期修復缺陷的成本的10倍,這些成本都是隱性成本,如果沒有度量數據來證明,往往為管理者所忽略。
測試分為單元測試、集成測試、系統測試、驗收測試,在實踐中,企業往往是側重在系統測試,而沒有關注單元測試與集成測試,系統測試無法發現單元測試可以發現的所有問題,這正如蓋房子,每塊磚的質量無法保證,則整個樓的質量也無法保證,樓已經蓋好了,再去檢驗每塊磚的質量就比較困難。單元測試是集成測試與系統測試的基礎,單元測試一般要求語句覆蓋率為100%,即每個語句都要被測試過。單元測試可以由開發人員自己也可以由其他人員來進行,單元測試也需要編寫測試用例,需要記錄缺陷。
文章來源于領測軟件測試網 http://www.k11sc111.com/