品質管理とは?
『品質管理』とは、PMBOK準拠の弊社プロジェクト管理方法論PMM※1で定義されている、プロジェクトマネジメントの管理領域の1つである。計画フェーズにおいて品質管理方針や品質確認のための計画を作成し、後続フェーズにおいて品質検査や品質監査など品質に関する管理業務を実施する。
※1 Hitachi Consulting Project Management Methodology
今回はこの品質管理に関連したお話である。
品質管理に必要な2つの観点
品質管理には基本となる2つの観点として『(1)品質を作りこむ観点』と『(2)品質チェックにより改善を促す観点』がある。
前者では、プロジェクト作業が自然と品質目標を満たす結果を生み出すように、作業着手前に十分な準備をしておくことを重視する。品質目標の明確な定義と周知徹底や、作業に関する各種基準や手順の事前取り決め、などが挙げられる。
後者では、プロジェクト結果を適宜確認し、問題があれば是正するという、作業着手後のプロセスを重視する。作業結果である成果物のチェックリストによる確認、チェック結果の集計による全体の傾向分析、発生した不具合の原因追及および改善による後続作業での不具合発生の抑制、などが挙げられる。
ITシステム開発を伴うプロジェクトにおいて品質管理の鍵を握るのはテストである。前述の2つの観点を持って、必要十分なテスト計画を策定することが求められる。
テスト計画ではまず品質目標を定義する。ISO/IEC 9126で規定された品質特性(機能性・信頼性・使用性・効率性・保守性・移植性)以外に、利用者の視点から要求される品質(有効性・生産性・安全性・満足性など)も踏まえて品質目標を定義することが求められる。
次に品質管理対象を決定し、対象物に対する各テスト工程の作業基準および手順を定義する。プログラムに対する単体テストであれば、テストケース基準としてテストケースの作成密度および構成比率(正常: 異常: 限界値など)やテストカバレージ、不良摘出基準として不良摘出密度、具体的なデータの収集方法を定義する。なおこれらのKPIはシステム・インテグレーターの経験に基づく指標であるため、豊富な実績を持つ企業をパートナーとして選ぶことが重要である。
最後にプロジェクトの作業工程にテスト行程を組み込み、テスト計画書としてプロジェクト関係者に周知徹底する。これでテスト計画は完了である。
あとは計画に従って品質管理プロセスを実施していけば良い。実施と合わせて状況報告が求められるが、忙しいステークホルダーに対してはグラフィカルな資料を用い、短時間で状況が理解できるように工夫を行うべきである。例えば、テスト工程の進捗把握のために品質管理図などを用いることで、テスト計画の消化状況や発見された不良数とその解決状況を可視化することができる。
マルチベンダープロジェクトにおける品質管理
次にプロジェクトに複数のベンダーが参画する場合の品質管理について解説する。マルチベンダープロジェクトの全体を束ねるプロジェクトマネジャーは、品質管理についてどのような視点を持ち、対応を取れば良いだろうか?
マルチベンダープロジェクトの難しさは様々だが、全体を束ねるプロジェクトマネジャーがまず実施すべきは工程の整理である。あるベンダーの定義する工程は、他のベンダーの定義する工程とどのように整合するかを見極め、場合によっては該当プロジェクトにおける工程を再定義する。なおベンダーへの工数見積りの手法を共通にしておくと(例えばプログラム開発の見積もりにおいてはFP法※2を利用する等)工程の整理をスムーズに行うことができる。
※2 Function Point法
工程の合わせが終わったら、次に工程ごとの終了条件を定義し、各ベンダーの作業レベル(範囲・深さ)や品質レベルの統一を図る。具体的な対応の例としては、ベンダー予定成果物の事前評価、プロジェクト共通のレビュー観点の設定、などが挙げられる。
システム全体としてのテスト計画についても精査が必要である。各ベンダーは自社の視点で必要なテスト計画を提示するが、ベンダー間やシステム全体としてのテスト計画については、いわゆる"ポテンヒット"が発生するリスクがある。このリスクへの対応策としては、プロジェクト横断の専任のテスト管理チームを組織するのが一番である。
最後がQA※3チームの設置である。各ベンダーのQA体制とは別にプロジェクト横断型のQAチームを設置し、サンプリングチェックなどの品質検査や品質監査に専任させることで、マルチベンダープロジェクトで起こりやすい成果物の出来に関する凸凹を極力抑えることが可能となる。
※3 Quality Assurance
以上がマルチベンダープロジェクトにおける品質管理のポイントである。全体管理の土台として工程や品質基準を整合し、テストチームやQAチームなどのプロジェクト横断型の組織で必要十分な品質管理業務を実施できるようプロジェクト体制を確立することが重要である。