Ch09

41
智智智智智智智智智智智智 智智智智 ( 智智 ) 智智智‧智智智‧智智智 智 ISBN 957-729- 552-5 智智智 智 智智智智

Transcript of Ch09

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

第九章 軟體品質管理

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

本章大綱 9.1 導論 9.2 軟體品質的定義 9.3 軟體品質管理的基本觀念 9.4 軟體品質保證 9.5 軟體品質規劃 9.6 軟體品質的控制 9.7 軟體品質的改進活動與能力成熟度模式 9.8 軟體品質管理標準 9.9 整合性軟體品質管理模式 9.10 結論

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

學習目標 軟體品質的觀念 軟體品質管理的範籌 影響軟體品質的重要因素 軟體品質保證的定義與工作內容 軟體品質規劃的步驟 軟體品質的評估與控制方法 能力成熟度模式的內涵與應用 軟體品質標準 ISO 9000-3 條文的內容 整合性品質管理模式的應用

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

導論 軟體品質管理主要是運用品管的觀念與技術,對於軟

體專案進行過程的軟體品質作一系列完整的規劃、執行與控制的活動。

其主要目的是提升軟體品質水準與設計生產力,將軟體的缺點與軟體專案失敗的風險減少至最低程度。

軟體品質管理與專案管理工作如同車之雙輪,密不可分且缺一不可,唯有產出高品質的軟體才能使專案推行順利與成功。

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

軟體品質的定義 軟體品質可以定義為:

「軟體產品整體的功能和特性,滿足既定需求的能力」。

Deutach 與 Willis(1988) 將軟體品質分為兩種類型即「程序品質」與「產品品質」(圖 9.1 )。

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

圖 9.1 軟體品質的概念

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

圖 9.2 軟體品質的因素

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

軟體品質管理的基本概念 軟體品質管理的主要工作內容包括﹕

制訂軟體品質目標與策略。建立軟體設計人員的品質意識。軟體品質的規劃、品質管理活動的執行、稽核與追蹤與管制。

軟體品質的改良。 基本上,軟體品質管理的主要範疇包括「軟體設

計人員管理」、「程序品質管理」、「軟體技術管理」、「產品品質管理」等。

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

圖 9.3 軟體品質管理的主要範疇

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

圖 9.4 影響軟體品質的重要因素

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

軟體品質保證 (1/2)

Donald(1985) 將「軟體品質保證」定義如下:「軟體品質保證是用以確保軟體產品符合客戶需求的一項制度與程序,它涵蓋規劃、衡量與偵測 軟體發展過程的所有活動。」

Baker 與 Fisher(1992) 將軟體品質保證定義為:「它是一種執 行軟體品質評估與衡量的活動。」

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

軟體品質保證 (2/2)

軟體品質保證的主要目的協助程序標準的建立。確保預定產品品質目標之達成。評估是否與預定標準與流程一致。確實掌握品質狀況採取修正的行動。

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

圖 9.5 軟體品質保證作業流程

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

軟體品質規劃 軟體品質規劃目的在於推動既定的品質政策與策略,

研擬一系列的執行方案,提供軟體設計人員與品管人員進行軟體品質管理與控制的依據。

進行軟體品質規劃工作,首先要對於品質目標有相當明確的瞭解;其次要確實掌握客戶的需求與組織內部的軟體設計水準等相關資訊,預測可能發生品質缺點的可能因素,並提出一些品質管理的作業程序,以維持適當的軟體品質水準。

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

圖 9.6 決定軟體品質需求的作業程序

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

表 9.3 品質需求相關矩陣

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

表 9.4 軟體模組與品質矩陣

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

表 9.5 軟體品質規劃書的主要內容

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

軟體品質的控制 (1/4)

有關軟體品質控制的一些作法審查

– 所謂「審查」是透過會議的方式找出軟體潛在的錯誤,以確保軟體的品質。

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

軟體品質的控制 (2/4)

瀏覽–針對需求規格文件、設計文件、程式碼、測試計畫進行內部非正式地快速審查程序內部,通常需要一位召集人與一位記錄者參與,由客戶代理人、維護人員與標準的執行人員分別提出問題,主要目的是偵測出一些可能早期發現潛在的錯誤問題,並及早採取修正的作法。此種作法的缺點為可能發生不同的意見結果,不能減少再犯的機會。

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

軟體品質的控制 (3/4)

檢驗– 它是由有經驗的專家來檢驗 。一般的審查通常是表面性居多,檢驗則比較深入技術的問題或專注於較複雜的問題。檢驗須依特定的步驟進行,其實施過程分別為:規劃、簡報、會議前的準備、進行、重作與跟催。檢驗過程中,原作者應在場並參與檢驗,可節省檢驗者的時間及快速進入問題的核心。

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

軟體品質的控制 (4/4)

稽核– 它是指「為確保軟體能夠符合合約既定的規格與標準,定期實施稽核工作,以提早發現軟體的缺失並發現發生問題的原因。」因此,在實施稽核工作的過程中,首先由主持人向接受稽核的單位宣布稽核工作項目、時間表以及參與稽核的工作人員;其次稽核人員依據計畫定期實施稽核作業,記錄稽核的結果,送給品保單位做進一步的分析。

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

圖 9.7 獨立認證的作業流程

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

軟體品質的改進活動與能力成熟度模式 (1/4)

品質改進主要目的是針對現有軟體的功能作改進。主要的做法包括作業標準化、品質度量、品質偵測、

文件化、品質改進活動等。一般品質改進的作業流程之實施步驟

– 定義品質改進的目標與政策。– 制訂品質改進的整體計畫。– 擬定品質改進的專案計畫。– 正式實施品質改進活動。– 品質改進成果的診斷與評估。– 檢討與改進品質改進計畫。

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

圖 9.8 軟體品質改進活動的作業流程

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

軟體品質的改進活動與能力成熟度模式 (2/4)

能力成熟度模式能力成熟度模式 (CMM) 將組織的軟體開發能力水準分為五個「成熟度階段」(圖 9.9 ),除了第一層以外,每一成熟度階層皆由一些「關鍵流程範圍」所組成。每一個關鍵流程範圍又由五個「共同特性」所組成,這些共同特性描述達成該關鍵流程範圍目標所必須具備的「關鍵項目」 。

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

圖 9.9 CMM 的關鍵流程領域與軟體成熟度階段的關係

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

表 9.8 CMM 的關鍵流程之類型

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

軟體品質的改進活動與能力成熟度模式 (3/4)

SEI自從發展一套「軟體能力成熟度模式」以後,陸續發展了應用在系統工程方面的「系統工程能力模式」,應用在整合產品方面的「整合產品開發能力成熟度模式」,應用在採購方面的「供應商供應」。

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

軟體品質的改進活動與能力成熟度模式 (4/4)

在 1997年, SEI 將個別的模式整合成為一個完整的「能力成熟度整合模式」 (CMMI) 。因此, CMMI 是一個由「軟體能力成熟度模式」、「系統工程能力模式」 、 「整合產品開發能力成熟度模式」與「供應商供應等模式演化而來的一個整合性模式,而 CMMI

比 CMM 主要增加的三個部分是系統工程、風險管理與量測流程。

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

圖 9.10 CMMI 模式的元件圖

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

圖 9.11 生命週期與工程流程領域的關係

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

軟體品質管理標準 (1/3)

ISO 9000 系列標準提供有關軟體開發方面的標準 ISO 9000-3 。 ISO 9000-3係針對軟體發展的過程、軟體供給與維護,規定一個最低軟體品質的標準,適合於軟體產業的應用。

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

圖 9.12 軟體品質標準ISO 9000-3 大綱

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

表 9.12 ISO 9000-3 條文

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

軟體品質管理標準 (2/3)

軟體品質標準之注意事項命名規定:制訂統一規則,包括同義字、長度、前頭語、字尾語與會員的使用。

文件標準:軟體文件的標準格式與資料內容。內部單位協定:標準介面、資料互傳方法、錯誤訊息。

外部訊息格式:規定外部訊息的格式與內容。外部訊息協定:兩個功能之間介面標準化。資 料 表 示 方 法 : 文 字 、 數 值 標 準 , 例 如

ASCII 、 EBCDIC 等。

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

軟體品質管理標準 (3/3)

設計表示方法:設計文件內容、表示方法,包括 語法、語意與圖形等。

總體資料使用:建立與強迫使用限制定義與共享資料使用。

錯誤處理:錯誤狀況一致性,包括錯誤類型、錯誤溝通、錯誤處理。

外部系統詞彙:對經常使用的系統詞彙統一建立標準檔案。

程式碼撰寫:撰寫程式類別、格式、單位與資料結構、允許程式變數、註解等。

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

整合性軟體品質管理模式(1/2)

為了徹底解決軟體品質管理方面的問題,有必要建立一個完整的軟體品質管理模式,作為企業發展大型軟體專案計畫品質管理活動的參考依據。一個整合性軟體品質管理模式如圖 9-14 所示。

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

整合性軟體品質管理模式(2/2)

整合性軟體品質管理模式品質規劃子系統

–針對軟體品質的需求,規劃與設計符合品質水準的軟體品質計畫。

品質執行子系統–針對軟體品質的設計規格,進行軟體的開發與建置。

品質控制子系統–針對軟體品質的需求,隨時偵測軟體的品質以確保軟體品質水準之達成。

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

圖 9.14 整合性軟體品質管理模式

智勝文化事業有限公司製作

軟體專案管理 ( 再版 ) 林信惠‧黃明祥‧王文良 著

ISBN 957-729-552-5

結論 軟體品質管理是專案管理一項重要工作。它涉及的層面相當廣泛,舉凡技術、人員、制度與標準等均對於軟體品質有相當大的影響力。

為了達到客戶需求的品質水準,品質策略的制訂、制度的建立與標準的推行,均為實施軟體品質管理必要的過程。

一個良好制度的建立,有賴於專案人員之間彼此良好的溝通,不怕失敗的勇氣、確實的執行,而團隊默契的建立則是邁向一流軟體品質的最佳保證。