Please enable JavaScript.
Coggle requires JavaScript to display documents.
Chapter 15 Software Quality Assurance (SQA團隊的角色 (Prepare : 替專案準備SQA計畫,…
Chapter 15 Software Quality Assurance
軟體質量
定義 : 將effective software process用於創建useful product,以提供measurable value給生產、使用產品的人
質量成本
Prevention costs : 品質規劃、正式技術review、測試、人員訓練
Internal failure costs : 重新設計、修復
External failure costs : 顧客投訴、退化、保修工作
實現軟體質量
基本要素
Software Engineering Methods : 是否使用合適的軟體工程方法進行開發
Project Management Techniques : 是否有專案管理團隊
Quality Control : 是否建立品質管控機制
Quality Assurance : 建立支持上述3點的基礎建設
SQA團隊的角色
Prepare
: 替專案準備SQA計畫
Participates
: 至少有一個SQA人家可以加入開發團隊當中
Reviews
: 檢視開發工作是否符合定義的軟體流程
Audits
: 檢視產品是否有符合軟體流程中所定義的
Ensures
: 確認軟體工作的傾向、產品都有記錄成文件、根據文件進行handle
Records
: 記錄所有不符合規定的地方,並回報給主管
SQA目標
需求質量
: 需求模型的正確性、一致性、完整性
設計質量
: 由軟體團隊評估設計模型,以確保高質量、符合需求
程式碼質量
: Source code還有相關的工作產品,必須符合coding標準以便維護
質量控制有效性
: 應將有限的資源投注在最有可能獲得高質量的結果上
Statistical SQA
說明 : 收集並分類與軟體錯誤、瑕疵有關的資訊。尋找造成錯誤、瑕疵的原因 (e.g. 不符合規範、設計不良、違反標準、與客戶溝通不良)
方法 : 使用
Pareto principle
(80%的defects可be traced to 20%的可能原因),isolate出那20%
目標 : 修正問題
軟體工程的6個標準差
3個核心步驟
Define
: 透過明確的溝通方式,訂出客戶需求
Measure
: 測量現有的流程、輸出,以確定當前的質量效能(收集defect metrics)
Analyze
: 分析缺陷指標,並找出關鍵原因
若需要改進,額外的2步驟
Improve
: 解決瑕疵的根本原因,以改進流程
Control
: 控制流程,以確保未來不會重蹈覆轍
軟體的可靠度
MTBF
: mean-time-between-failure
MTTF
: mean-time-to-failure
MTTR
: mean-time-to-repair
Software availability
: 程式在給定的時間點可運行的機率
=> MTBF = MTTF + MTTR
=> Availability = [MTTF/(MTTF + MTTR)] x 100%
軟體安全性
focus on 可能對軟體造成負面影響,並導致故障的potential hazard
若hazard可在早期就被發現,便可以提早消除或控制潛在的危險
ISO 9001:2000 Standard
軟體工程的質量保證標準
包含 : 管理責任、質量系統、合同review、設計控制、文件與資料控制...等