😊

品質管理

2021/07/12に公開

品質の定義

「品質」とは、本来備わっている特性がまとまって、要求事項を満たす度合い
Q. りんごの品質とは?
形、色、重み、糖度、酸味?
A. 目的によって品質の基準が変わる

品質管理の内容

工程別具体的施策

  1. 営業
    • スコープ(仕事の範囲)の決定
  2. 受注
  3. PJ計画書作成
    • 品質目標の設定
  4. 基本設計
  5. 詳細設計
  6. 開発
  7. 単体テスト
  8. 結合テスト
  9. 運用テスト
  10. 導入

品質管理のポイント

  1. 品質は上流工程で作り込む
  2. 品質目標によって品質を高める

品質は上流工程で作り込む

V字モデル

レビューのポイント

  1. レビュー日を決める
  2. レビュアーを決める
  3. レビュアーにレビューの依頼をする
  4. レビューのお礼をする

設計書レビューのチェックポイント

  • 要件定義書との矛盾はないか
  • 要件との対応関係は明確か
  • 実装方式の背景が記載されているか
  • ドキュメント間での一貫性の欠如はないか
  • サブシステムや外部システムとの入出力は明確か
  • UI、DB、ファイルなどの仕様が明確か
  • エンティティどうしの関連は明確か
  • 機能仕様がエンティティごとに構造化されているか
  • 結合テスト仕様が書ける程度に詳細か

W字モデル

要件定義、外部設計、内部設計と同時にテスト設計を行う
設計工程で早期に不具合発見をねらったモデル

品質目標を設定する

  1. ソフトウェアの品質特性を設定する
  2. 品質特性ごとに品質尺度を設定する
  3. 品質尺度ごとに目標値を設定する

ソフトウェアの品質特性

ISO9126

  • 機能性
    • 要求された機能が実装されているか
    • 他システムと連携がとれているか
    • セキュリティ
  • 信頼性
    • 安定稼働しているか
    • 障害がおこりにくいか
    • データを復元できるか、故障からの復帰が早いか
  • 使用性
    • 直感的に操作できるか
    • 操作しやすいか
    • 魅力のあるソフトウェアか
  • 効率性
    • 応答処理時間は適切か
    • 回線の帯域の使用率
    • メモリ使用量
    • 記憶装置の容量
  • 保守性
    • 不具合の原因が判断しやすく、修正すべき部分を特定しやすいか
    • 修正しやすいか
    • 予想外の操作を想定しているか
    • テストはしやすいか
  • 可搬性
    • 他の環境での使用を考慮しているか
    • インストールしやすいか
    • 他のソフトウェアと共存しても問題ないか
    • 別のソフトウェアに置き換えられるか。

もっとも大事な特性は顧客が最も重視しているもの

品質尺度

定量的な尺度とする

  • 評価結果OKの数 / 評価項目数
  • ユーザーアンケートで「理解しやすい」と回答した割合
  • ログがとれた項目数 / ログすべき項目数

目標値設定の原則

過去の測定値と顧客の要望をもとに適切な値を設定する

GitHubで編集を提案

Discussion