對于質量管理來說,結果很重要,過程也很重要。
。ㄒ唬┇@取過程質量
有過程就必然有過程質量。軟件產品是需要經過一系列的過程才得以形成的。根據軟件工程理論,在瀑布式軟件開發過程中定義了軟件產品的基本開發過程:需求分析 →規格說明→概要設計→詳細設計→代碼編寫/單元測試→集成測試→系統測試。軟件工程的基本目標是優質、高產。為了保證所開發的軟件的質量,在瀑布模型的每個階段都應該堅持兩個重要做法:
1.每個階段都必須完成規定的文檔,沒有交出合格的文檔就是沒有完成該階段的任務。完整、準確的合格文檔不僅是軟件開發時期各類人員之間相互通信的媒介,也是運行時期對軟件進行維護的重要依據。
2.每個階段結束前都要對完成的文檔進行評審,以便盡早發現問題,改正錯誤。事實上,越是早期階段犯下的錯誤,暴露出來的時間就越晚,排除故障改正錯誤所付出的代價也越高。因此,及時審查,是保證軟件質量,降低軟件成本的重要措施。
瀑布式軟件開發過程:
。1)在軟件需求定義階段會產生“需求質量”;
。2)在軟件設計階段會產生“設計質量”;
。3)在軟件實現階段會產生“實現質量”。
。ǘ┻^程質量控制
過程質量控制=規范+輸入/輸出標準+反饋(控制點或檢查點)
從整個研發過程看,需要制定一些規章制度和項目研發規范來使工序部門之間的工作能夠協調開展,比如設置工序部門的工件輸入、輸出標準,讓質量低下的工件不會流入下一個工序環節,起到“缺陷預防”的作用。
如果我們單獨看某一個工序部門,如負責需求分析的產品組,為了確保需求描述文檔的準確性與易讀性,可以制定一種“需求設計規范”或“需求文檔編寫規范”來使需求設計工作實現內部理解一致,即讓需求分析人員編寫出格式統一,表述統一的需求文檔。這樣的文檔才能便于程序員去理解和實現,同時測試人員也可以從這樣的高質量需求文檔中獲益,提高測試工作質量。同樣地在程序設計方面,可以制定“程序設計規范”、“代碼編寫規范”來實現程序設計質量的提升。[3]
將軟件最終質量分解到過程中,為:“需求質量”、“設計質量”、“實現質量”、“發布和維護質量”。質量控制點一般設置在工序節點處,這樣比較經濟一些。
控制點一般采用“評審”或“審查”為主,當然技術手段也很重要。
。ㄈ需求管理與質量
目前,迭代式開發方式已基本替代了瀑布式開發方式而被越來越多的軟件企業所采用。迭代式開發方式主要解決了風險與需求變更問題,那么需求管理在迭代式開發方式中也顯得極為重要,需求管理好了,項目開發過程將會事半功倍,開發將會有節奏,項目可視化程度將會得到提高;需求管理不好,項目將面臨頻繁返工、功能混亂、重構代碼工程次數高、測試用例維護成本增長和工作低效率、低質量的境地。
文章來源于領測軟件測試網 http://www.anti-gravitydesign.com/