# 流程品質保證 PQA, Process Quality Assurance 📅 2021-XX-XX ###### tags: `軟體工程`, `CMMI`, `PQA`, `流程品質管理` ### (大三下學期) 為準備系上 `黃世禎老師` 開設之`軟體工程` 課程報告,本人將 CMMIv2.0 的原文內容稍做中文翻譯及整理 ### ◎ 筆記整理: ``` 1.意圖 (Intent): (1) 核對: 核對(verify)流程品質(the quality of processes) (2) 改善: 改善(improve)流程品質 (3) 產出: 產生(resulting)更好的工作產出(work products) 2.價值 (Value): 增加對(軟體開發)流程的「使用的一致性(一致使用)」和「改善程度」,以最大程度地提高「業務收益」和「客戶滿意度」。 3.(各等級之下的) 實務(Practices) Level 1 ① PQA 1.1 識別並處理: 流程及工作產出(work products) 的相關問題 Level 2 ② PQA 2.1 發展並持續更新一套維持專案品質的方法, 並確保專案依此方法執行, 且能依據既有的(過去的)「品質資料」提出計劃 ③ PQA 2.2 客觀地評估選定且已執行的 流程 和 工作產出 (基於已記錄的「流程資料」和「適用標準」) ④ PQA 2.3 討論流程品質、流程不符合標準(違規)的問題, 並確保溝通後,找出相應的解決方案 ⑤ PQA 2.4 使用並記錄 QA (品質保證) 事務(activities) Level 3 ⑥ PQA 3.1 在運作 QA (品質保證) 事務(activities)的同時 識別並記錄流程改善的機會 ``` ## 【PQA CMMIv2.0 page 2-5 內容摘要】 ### ◎ 筆記整理: □ 一個典型的 QA 須具備: ○ 流程的實施要保持一致 ○ 對專案的結果、問題有好的洞見(insight) ○ 清楚了解專案的績效(performence) □ 核對(verify)流程品質、 確認專案的執行有address issues(處理流程上的問題) 須確認是否: ○ 不正確或不完整的需求 ○ 不充分的計劃(發布) ○ 未解決瑕疵 在流程核對(verification)、驗證(validation)的過程中, 須確保: 工作產出(work products) 和 QA 是否相同。 (可參考以下 QA 細節) 1. QA 的重點: => 做 QA 的流程核對、驗證時,是否依據「已記錄流程」來執行。 2. 核對 的重點: => 核對專案「需求的滿意度」 3. 驗證 的重點: => 核對專案「照計劃進行」 ``` 實務領域 1: VV (核對(verification) 及 驗證(validation)) ● Agile with Scrum 指南: 將敏捷技術(techniques)、敏捷會議(ceremories) 整合到其它流程中 => 確保團隊的技術、流程慣例有被客觀地評估 (以下為一些流程實務) 例子: daily scrums, story point estimation, code reviews, use of tools, continuous integration, and retrospective ``` ``` 在一個敏捷專案中,有很多機會去做 VV ,即:客觀的(PQA)評估 像是: 在 Scrum 需求池會議中檢驗 使用者故事 (user stories)、 由 SM(Scrum Master) 在各種會議當中教導團隊、 Sprint Review/Demo(=> 功能驗收) 做意見回饋時、 Restrospective ceremories(=> 回顧會議) 討論行為和績效時 ``` PQA(流程品質保證) 在敏捷框架中的各個階段: 1. Release Planning 版本釋出討論階段 2. Backlog Grooming 需求細化階段 3. Sprint Planning 衝刺計劃階段 4. Sprint Execution 衝刺執行階段 5. Sprint Review/Demo 功能驗收階段 6. Retrospective 回顧階段 (補充 1) 一個 sprint(衝刺) 即一個敏捷開發階段, 為期約兩周, 每個 sprint 的第一天(如雙數周的周一) 會做 Sprint Planning ,目的是產出 backlog (需求池), 同時讓 developers 認領要負責的 tasks 並簽名。 (補充 2) Backlog Grooming 是將 backlog 中模糊的需求 做 需求細化(requirement refinement), 整理成比較明確的需求。 => backlog ceremory: 需求會議 【Part 2 & 3】 ◎ 老師提出的問題: (2) 選出各組認為最關鍵的 2 個實務 (3) 說明該實務的 價值 value、 範例作業 example activities、 範例工作產出 example products ◎ 筆記整理: ## 1. PQA(流程品質保證) 共有 6 個 PAs(實務領域): #### PQA: Process Quality Assurance #### PA: Practice Area 《Level-1》 (1) PQA 1.1 《Level-2》 (2) PQA 2.1 (3) PQA 2.2 (4) PQA 2.3 (5) PQA 2.4 《Level-3》 (6) PQA 3.1 ## 2. PQA(流程品質保證) PAs 細節 ### 《Level-1》 ### (1) PQA 1.1 Required practice information(必需實務資訊) ‧Practice statement(實務說明) - 識別並處理: 流程 及 工作產出 的相關問題 ``` Value(價值) - 透過增進品質、效能以提高客戶滿意度 Example activities(範例作業) ‧識別 流程及工作產出 ‧記錄 流程及工作產出 ‧解決 流程及工作產出 Example products(範例工作產出) ‧已記錄的問題 ‧已處理的問題 ``` ### 《Level-2》 ### (2) PQA 2.1 Required practice information(必需實務資訊) ‧Practice statement(實務說明) - 發展並持續更新一套維持專案品質的方法, 並確保專案依此方法執行, 且能依據既有的(過去的)「品質資料」提出計劃 Value(價值) - 藉由聚焦一再發生的問題,達到降低各種成本 和提升品質的效益 Example activities(範例作業) ‧發展、記錄並持續更新:專案品質維持方法及計劃 ‧識別流程中的「欲評估項目」 ‧將流程方法交由(此專案的)利害關係人 回顧、更新和批准 Example products(範例工作產出) ‧QA (品質保證) 的方法和規劃 ### (3) PQA 2.2 Required practice information(必需實務資訊) ‧Practice statement(實務說明) - 客觀地評估選定且已執行的 流程 和 工作產出 (基於已記錄的「流程資料」和「適用標準」) Value(價值) - 在流程進行當中識別出流程中存在的問題, 並在專案交付前予以解決, 進而交付更高品質的解決方案 Example activities(範例作業) ‧發展、記錄並持續更新: 維持專案品質的 (1) 清楚聲明的規範(criteria) (2) 評估方法 ‧發展、記錄並持續更新: 基於流程 描述/標準/程序 的 檢核表(checklist) ‧利用已定義的標準和檢核表 逐項、客觀地評估選定且已執行的流程 是否依循這些標準 ‧識別並記錄不符合標準(違規)的流程 ‧參考組織中其它部門的最佳做法 (=> 提供流程改進提案計劃, 目的是找出流程的最佳實踐方法) Example products(範例工作產出) ‧規範(criteria) ‧檢核表(checklist) ‧流程評估報告 ‧流程違規報告 ‧違規流程的改進提案 ### (4) PQA 2.3 Required practice information(必需實務資訊) ‧Practice statement(實務說明) - 討論流程品質、流程不符合標準(違規)的問題, 並確保溝通後,找出相應的解決方案 Value(價值) - 保證流程品質,避免專案重工(重做)的成本浪費, 以及提高客戶滿意度 Example activities(範例作業) ‧討論並解決不符合標準(違規)的流程問題 ‧將違規流程向上呈報 (=> 可能與上級,甚至更高層級做違規流程的呈報, 直到違規的流程問題能被順利解決) ‧利用違規流程問題分析出專案流程品質的趨勢 (=> 這些趨勢可用來聚焦未來的流程品質, 做為日後參考) ‧確保利害關係人知道流程評估結果、流程品質趨勢 Example products(範例工作產出) ‧流程品質趨勢 及 分析報告 ‧違規流程的解決方案 ### (5) PQA 2.4 Required practice information(必需實務資訊) ‧Practice statement(實務說明) - 使用並記錄 QA (品質保證)事務(activities) Value(價值) - 優化未來流程品質事務, 進而降低未來專案開發所耗費的成本 Example activities(範例作業) ‧記錄並持續更新: 流程品質保證事務的有用資訊 Example products(範例工作產出) ‧流程評估記錄 ‧流程品質保證報告 ‧違規流程的狀態報告 與 修正事項 ‧流程品質趨勢 ### 《Level-3》 ### (6) PQA 3.1 Required practice information(必需實務資訊) ‧Practice statement(實務說明) - 在運作 QA (品質保證) 事務(activities)的同時 識別並記錄流程改善的機會 Value(價值) - 更進一步加強組織達成目標或願景的能力 Example activities(範例作業) ‧在品質保證事務穩定進行的同時, 記錄潛在的、可能改善流程的作法 ※ 進一步解釋: ‧建議的流程變更 ‧有關提高流程效能(effectiveness)的觀察 ‧列舉較可能/較不可能作為當前、已組織化的 流程的部分 ‧提供流程改善提案 Example products(範例工作產出) ‧流程改善提案