Quality Management o processproduct 1 quality assurance and

  • Slides: 59
Download presentation
品質管理 (Quality Management) o 管理軟體行程(process)和產品(product)的 品質

品質管理 (Quality Management) o 管理軟體行程(process)和產品(product)的 品質

主題 1. 品質保證和標準(quality assurance and standard) 2. 品質計劃(quality planning) 3. 品質控制(quality control) 4. 軟體測量和度量(software

主題 1. 品質保證和標準(quality assurance and standard) 2. 品質計劃(quality planning) 3. 品質控制(quality control) 4. 軟體測量和度量(software measurement and metric) 5. 物件導向系統的技術性度量(technical metric for object-oriented system)

品質妥協 (Quality Compromise) o 儘管規格有所不周(imperfect specification), 仍須將程序置入(put procedures into place)以 改善品質 o 品質管理(quality management)不是只關心減

品質妥協 (Quality Compromise) o 儘管規格有所不周(imperfect specification), 仍須將程序置入(put procedures into place)以 改善品質 o 品質管理(quality management)不是只關心減 少缺失(reduce defects),而是也關心產品的 品質

品質管理和軟體發展 (Quality Management and Software Development)

品質管理和軟體發展 (Quality Management and Software Development)

ISO 9001模型對品質保證的涵蓋領域 Management responsibility Control of non-conforming products Handling, storage, packaging and delivery Purchaser-supplied

ISO 9001模型對品質保證的涵蓋領域 Management responsibility Control of non-conforming products Handling, storage, packaging and delivery Purchaser-supplied products Process control Inspection and test equipment Contract review Document control Internal quality audits Servicing Quality system Design control Purchasing Product identification and traceability Inspection and testing Inspection and test status Corrective action Quality records Training Statistical techniques

1. 品質保證和標準 (Quality Assurance and Standards) o 標準(standard)是達到有效品質管理的關鍵 o 它們可以是國際的、全國的、組織的或專案 的標準 o 產品標準(product standard)定義所有元件需

1. 品質保證和標準 (Quality Assurance and Standards) o 標準(standard)是達到有效品質管理的關鍵 o 它們可以是國際的、全國的、組織的或專案 的標準 o 產品標準(product standard)定義所有元件需 呈現(exhibit)的特性(characteristics),像是常 用的程式語言型態(common programming style) o 行程標準(process standard)定義軟體行程所扮 演的角色(how the software process should be enacted)

標準的開發 (Standards Development) o 開發中的實踐者(practitioners in development) n 程師應該了解標準的合理原因(rationale underlying a standard) o 經常審查標準(review

標準的開發 (Standards Development) o 開發中的實踐者(practitioners in development) n 程師應該了解標準的合理原因(rationale underlying a standard) o 經常審查標準(review standards)及其用法 n 標準會很快過時,需經常審查標準 o 標準細節(detailed standards)應該有相關的支 援 具

文件標準 (Document Standards) o 文件辨識標準(document identification standard) n 文件如何被唯一識別(uniquely identified) o 文件結構標準(document structure standard)

文件標準 (Document Standards) o 文件辨識標準(document identification standard) n 文件如何被唯一識別(uniquely identified) o 文件結構標準(document structure standard) n 專案文件的標準結構 o 文件呈現標準(document presentation standard) n 定義字型(font)和樣式(style)及商標(logo)的使用 o 文件更新標準(document update standard) n 定義如何在文件中反應(reflect)與先前版本的差異

審查類型 (Types of Review) Review type Design or inspections Progress reviews Quality reviews program

審查類型 (Types of Review) Review type Design or inspections Progress reviews Quality reviews program Principal purpose To detect detailed errors in the design or code and to check whether standards have been followed. The review should be driven by a checklist of possible errors. To provide information for management about the overall progress of the project. This is both a process and a product review and is concerned with costs, plans and schedules. To carry out a technical analysis of product components or documentation to find faults or mismatches between the specification and the design, code or documentation. It may also be concerned with broader quality issues such as adherence to standards and other quality attributes.

預測程式和控制度量 (Predictor and Control Metrics)

預測程式和控制度量 (Predictor and Control Metrics)

內部和外部屬性 (Internal and External Attributes)

內部和外部屬性 (Internal and External Attributes)

4. 1 計量行程 (Measurement Process) o 軟體量測行程(software measurement process) 可當做是品質控制行程的一部份 o 在行程中搜集的資料(data collected)需要被維 護,當成一種組織的資源(organisational

4. 1 計量行程 (Measurement Process) o 軟體量測行程(software measurement process) 可當做是品質控制行程的一部份 o 在行程中搜集的資料(data collected)需要被維 護,當成一種組織的資源(organisational resource) o 一旦量測資料庫(measurement database)被建 立,專案的評比(comparisons across projects) 便比較可行

資料搜集 (Data Collection) o 一個度量程式(metrics program)應以一組產 品和處理資料(a set of product and process data)為依據 o

資料搜集 (Data Collection) o 一個度量程式(metrics program)應以一組產 品和處理資料(a set of product and process data)為依據 o 資料應立即被搜集,若可能,最好自動化的 被搜集 o 三種自動化資料搜集的類型 n 靜態產品分析(static product analysis) n 動態產品分析(dynamic product analysis n 處理資料校對(process data collation)

軟體產品度量 (Software Product Metric)

軟體產品度量 (Software Product Metric)

5. 物件導向系統的技術性度量 (Technical Metrics for Object-Oriented Systems) o Berard [BER 95] 認為下列特徵(characteristics) 需要特別物件導向的度量 n

5. 物件導向系統的技術性度量 (Technical Metrics for Object-Oriented Systems) o Berard [BER 95] 認為下列特徵(characteristics) 需要特別物件導向的度量 n 局部化(localization) o 資訊在程式內集中(information is concentrated in a program)的方式 n 封裝(encapsulation) o 資料和行程(data and processing)的包裹 (packaging)

n 資訊隱藏(information hiding) o 用一個安全的介面(secure interface),隱藏操 作細節(operational details)的方式 n 繼承(inheritance) o 一個類別傳遞(propagated)給另一個類別的方 法 n

n 資訊隱藏(information hiding) o 用一個安全的介面(secure interface),隱藏操 作細節(operational details)的方式 n 繼承(inheritance) o 一個類別傳遞(propagated)給另一個類別的方 法 n 抽象化(abstraction) o 允許專注(focus)在必要細節(essential details) 之設計的機制

類別導向度量 (Class-Oriented Metric) o 由 Chidamber and Kemerer提出 n n 每類加權的方法(weighted methods per class)

類別導向度量 (Class-Oriented Metric) o 由 Chidamber and Kemerer提出 n n 每類加權的方法(weighted methods per class) 繼承樹(inheritance tree)的深度(depth) 子(children)的數目 物件類別間的耦合(coupling between object classes) n 對類別的回應(response for a class) n 方法中缺乏凝聚性的程度(lack of cohesion in methods)

o 由Lorenz and Kidd [LOR 94]提出 n 類別大小(class size) n 被子類別覆蓋的操作數目(number of operations overridden

o 由Lorenz and Kidd [LOR 94]提出 n 類別大小(class size) n 被子類別覆蓋的操作數目(number of operations overridden by a subclass) n 由子類別增加的操作數目(number of operations added by a subclass) n 特殊化索引(specialization index)

物件導向度量 (Operation-Oriented Metric) o 由Lorenz and Kidd [LOR 94]提出 n 平均操作大小(average operation size) n

物件導向度量 (Operation-Oriented Metric) o 由Lorenz and Kidd [LOR 94]提出 n 平均操作大小(average operation size) n 運算複雜度(operation complexity) n 每個操作的平均參數數目

可測試性度量 (Testability Metric) o 由Binder [BIN 94]提出 n 相關封裝(encapsulation related) o 方法所缺少的凝聚性(lack of cohesion

可測試性度量 (Testability Metric) o 由Binder [BIN 94]提出 n 相關封裝(encapsulation related) o 方法所缺少的凝聚性(lack of cohesion in methods) o 公用的(public)和受保護的(protected)百分比 o 對資料成員的公用存取(public access to data members) n 繼承相關(inheritance related) o 根類別的數目 o 扇形收斂(fan in) o 子(children)的數目和繼承樹(inheritance tree)的深度 (depth)

物件導向專案度量 (OO Project Metric) o 由Lorenz and Kidd [LOR 94] 提出 n 情境版本(scenario script)的數目

物件導向專案度量 (OO Project Metric) o 由Lorenz and Kidd [LOR 94] 提出 n 情境版本(scenario script)的數目 n 鍵值類別(key classes)的數目 n 子系統(subsystems)的數目

物件導向度量 (Object-Oriented Metric)

物件導向度量 (Object-Oriented Metric)

參考資料 o Ian Sommerville, Software Engineering, 7 th ed. , Addison-Wesley,2004.

參考資料 o Ian Sommerville, Software Engineering, 7 th ed. , Addison-Wesley,2004.