對于一個實際的軟件項目而言,想把上面的所有質量特征都做好是一件很難的事情,尤其是在項目有明確的進度壓力下面。質量,資源和時間是項目管理的三要素,三者相互影響和制約,提高質量是有成本和代價的,提高質量可能帶來更多資源的投入或進度的延后。因此項目經理的關注點就是如何根據項目的實際特點來平衡好這三要素,制訂切實可行的質量目標。
2.提高軟件質量的方法
首先應該確認的是質量需要一個持續改進和提高的過程。談提高軟件質量就是首先要有歷史參照,根據參照制定新的質量目標,然后對產品進行驗證達到新的更高級別的目標。你的軟件是否可維護不是某個開發人員說了算,而是應該有一套明確的標準和準則。
PMBOK里面對于質量管理過程組提及到實施質量保證和實施質量控制兩個重要的過程。質量保證是確保項目按照組織定義的過程在做事情;而質量控制是對你的結果進行檢查,看是否達到了預期的質量目標。在CMMI里面我們關注過程改進和軟件質量的關系,過程改進是否真正提高軟件質量,一個重點就是過程的有效性問題,如果我們能干確保過程是有效的,那是肯定可以提高軟件質量的。
CMMI中的每一個過程都是其它軟件企業多年的積累,有可以借鑒的地方。過程并不是要多繁瑣或者說一定要采用什么方法工具,關鍵在于你采用的過程是否真正有效,因此任何走形式主義的過程最終結果都是失敗。
軟件質量保證是一種重要的質量活動,最終的目的還是要提高軟件質量,而有效的方法就是關注軟件開發生命周期,關注軟件開發的各階段的活動。只有每個階段都滿足要求,才可能保證整個軟件質量。
對于一個好的軟件質量管理計劃,應該包含以下內容:
◆質量目標
沒有目標就談不上改進和衡量質量是否提高基準。質量目標分為大目標和小目標,大目標對于軟件產品而言最重要的就是軟件發布后的缺陷情況。而為了達到這個大目標需要執行評審,Review,測試等各種活動,需要將大目標分解為各種小目標:如缺陷的泄漏率目標,評審的覆蓋率情況,測試的覆蓋率情況等。
◆質量保證活動
項目進行過程中需要進行哪些質量保證活動?對于管理過程,技術過程,各階段的輸出都需要有相關的質量保證活動。在一些組織中,確定質量保證活動確定質量保證活動急促和草率的編程往往是一件常見的事。程序代碼充滿錯誤但能很快完成編程的程序員往往能得到更多的獎勵。而高質量的程序員。雖然編出的程序優秀而且確保其是可用的,卻往往得不到這種禮遇。[注]代碼大全專門提及到質量保證活動的一個重要作用是讓開發人員意識到軟件質量是第一位的,形成質量意識,但這點卻經常無法做到。
◆測試策略和計劃
測試策略或計劃一般需要單獨出相關的計劃或文檔,但整個測試策略仍然要以項目需要達到的質量目標為依據來制定。
◆軟件工程準則
需要遵守的生命周期模型,需求規范,設計規范,編碼規范,界面規范,測試流程和規范等。這些都屬于軟件工程準則的內容,而且很多規范要在項目一開始就約定好并嚴格執行,這樣才能夠保證項目成員有共同的語言。
◆評審
文章來源于領測軟件測試網 http://www.kjueaiud.com/