ソフトウェア開発においても品質管理(Quality Control)はとても重要なものです。データを集めて分析することで、品質向上、納期短縮、コスト削減などを図り、よりよいソフトウェアを作り上げていくことができます。
そんな品質管理において、用いられるのが、QCツールである「QC七つ道具」と「新QC七つ道具」です。数値によって定量的に分析するための「QC七つ道具」に対して、「新QC七つ道具」では言語データを図や表にまとめて定性的に分析します。
この記事では、「新QC七つ道具」の各道具の概要、活用方法を解説していきます。
- もくじ
1.「新QC七つ道具」とは?「QC七つ道具」の違い
「新QC七つ道具(新QC7つ道具)」とは、品質管理を行う上で用いられるQCツールです。
従来からある「QC七つ道具」では、具体的な数値によって定量的な現象分析を行います。対して「新QC七つ道具」は言語データを図に整理することで、定性的な現象分析を行うツールです。
英語で"New seven tools for QC"や"New 7 QC Tools"と呼ばれるため、「N7」と略されることもあります。
数値データを分析する「QC七つ道具」は主に製造現場だけで活用されてきました。一方、新QC七つ道具(N7)は、言語データを整理して分析するため、製造だけでなく企画・設計・営業など様々なところで活用されています。
次の章から「新QC七つ道具」の各ツールについてご紹介していきます。
2.新QC七つ道具のそれぞれ
「新QC七つ道具」は、抽象的な製品品質や不具合の原因などの定性的なものを取り扱う場合に非常に有効な方法です。
全7つのツールを一つ一つ見ていきましょう。
新QC七つ道具
① 親和図法
② 連関図法
③ 系統図法
④ マトリックス図法
⑤ アロー・ダイアグラム法
⑥ PDPC法
⑦ マトリックスデータ解析法
①親和図法
親和図法とは、収集した不具合データを親和性の高いグループに分けて、整理する手法です。様々な細かいトラブルがたくさんあり、本質的な問題を見つけ出したいときに有効です。
ソフトウェア開発プロジェクトでは、計画フェーズや、プロジェクト中に発生した不具合の分析において使用するのが効果的です。例えば、不具合データを分析する際、個々の不具合事例をグルーピングすることにより、不具合の傾向や種類を把握することができます。
具体的には、ブレインストーミングなどで、参加メンバーが現在(あるいは過去に)起こった不具合などをカードに記載し、そのカードを親和性のある、内容の近いもの同士で分類していきます。それによって不具合の傾向をメンバー内で把握し、それに対するアプローチを絞り込むことができます。
②連関図法
連関図法は、問題点の相互の関係を探り、「原因―結果」もしくは「目的―手段」の関係に整理して、相互の要素の関連を系統的に整理・発見していく手法です。
ソフトウェア開発プロジェクトにおいては、親和図と同様、計画フェーズ、あるいはプロジェクト中に発生した不具合の分析などで用いられます。親和図と連関図はセットで使われることが多いです。
要素間あるいはグループ間の相互関連を矢印で結ぶことで、不具合の原因を抽出したり、関連する不具合を発見したりするのに有効です。
③系統図法
系統図法は、問題解決に至るまでに最適な手段や具体的な方法をツリー状に並べる手法です。プロジェクトを階層的に整理する手法であるWBS (Work Breakdown Structure) も、目的を細かく手段に分解していくという意味では、系統図法の流れをくむものです。
上図でいえば、左端の基本目的に対してそれを実現するための第1次手段を考えます。そして第1次手段を実現するための第2手段を考えていきます。この作業を繰り返していきます。
ソフトウェア開発プロジェクトでは、計画、準備フェーズで有効です。プロジェクトの準備に際してどのようなものが必要か、さらに先に挙げられた項目に対する準備は何が必要か、など、準備とそれに必要な物資と作業を割り出すことができます。
④マトリックス図法
マトリックス図法は、現象と要因などを列方向と行方向に分解し、その対応を多元的に把握する手法です。取り組むべき問題は分かっているけど、問題とすべき対象が多く、その対応関係を分かりやすくしたいときに有効です。
上図は、2-3系統図法で割り出された第3次手段に対して、それぞれの手段に対する役割分担やコストなどを割り振るときに便利です。
ソフトウェア開発プロジェクトでは計画、また準備フェーズで用いられ、プロジェクト準備の準備状況をマトリックスでチェックしたり、テストにおける各機能とそれに対するテスト観点の対応を漏れ抜けなく整理したりする時に効果的です。
⑤アロー・ダイアグラム法
アロー・ダイアグラム法は、プロジェクト推進のための各作業と日程計画を立てる手法です。工程順に矢印を引き、クリティカルパス(最長経路)に当たる工程を重点的に管理していきます。
ソフトウェア開発プロジェクトでは、開発の各工程における日程計画を立てる際に活用します。まずWBS(プロジェクトにおけるタスクを細分化し一覧表で示す手法)によって工程ごとに必要な作業を列挙し、それぞれの工程に必要な日程をアロー・ダイアグラムで図示します。それによってプロジェクトの進捗管理がやりやすくなります。
そしてこの際、すべての矢印をつないだときに現れる、それ以上圧縮できない最長の工程経路である「クリティカルパス」を割り出すことにより、不測の事態が起こった際の対策を考えることにも役立ちます。
⑥PDPC法
PDPC法はトラブルが起こった際の対応策や処理手順などをフローチャートの形にまとめる手法です。目的を達成したり、問題解決を考える際に、万が一のトラブルが発生した場合も想定したうえで計画や検討を行います。
PDPCは「Process Decision Program Chart」の略語で、日本語では「過程決定計画図」と言われています。
ソフトウェア開発プロジェクトでは計画フェーズにおける、想定されるリスクとその対応策を考えたり、計画したりする時に有効です。緊急事態が起こった際の必要な作業を割り出し、その処理の手順や連絡経路(担当責任者)などについてPDPCを用いて検討・計画することができます。
⑦マトリックスデータ解析法
マトリックスデータ解析法は、前述のマトリックス図により行列で示された数値データを、2次元の平面に展開し、その相関関係を図示する手法です。
これにより、得られたデータの分布や相関関係を把握できます。そこで得られたデータから、様々な情報や問題の糸口をつかむことに用います。※多変量解析では「主成分分析」などと呼ばれています。
※多変量解析とは=ある対象から得られた、互いに関連のある多種類のデータ(変数、変量)を総合的に要約したり、将来の数値を予測したりといった解析作業の総称
ソフトウェア開発プロジェクトでは、得られたテスト結果をまとめて分析報告するフェーズにおいて有効です。例えば、テストケースにおいて、テスト項目数と検出されたバグの発見数の相関関係を取ることにより、テストのコストパフォーマンスを調べることができます。
あるいは、ある機能のテストにおいて、設定値と不具合件数をパラメータとして取ることにより、設定値が不具合件数にどの程度影響を与えているのかを解析・評価することができます。
3.QCツールを使う際の注意点
QCツールである「新QC七つ道具」と、別コンテンツで紹介した「QC七つ道具」は、どちらもチームの構成員全員を巻き込んで、チームの成長、プロセスの成熟を促すのに有用なツールです。
そのため、1人の管理者だけが把握するのではなく、構成員全体が、プロセス・進捗・品質の現状が全体としてどのような状況なのかということを目にすることが必要です。
それにより自分たちが当事者であるという意識を持ち、チーム全体を活性化させることができます。
また、チーム内のモチベーションが上がり、ソフトウェアの品質に大きな影響を及ぼすことが考えられます。
まとめ
新QC七つ道具とはどのようなものなのか、それぞれ見てきました。まとめると以下のとおりです。
親和図法 | 収集した不具合データを親和性の高いグループに分けて、整理する手法 |
---|---|
連関図法 | 問題点の相互の関係を探り、「原因―結果」もしくは「目的―手段」の関係に整理して、相互の要素の関連を系統的に整理・発見していく手法 |
系統図法 | 問題解決に至るまでに最適な手段や具体的な方法をツリー状に並べる手法 |
マトリックス図法 | 現象と要因などを列方向と行方向に分解し、その対応を多元的に把握する手法 |
アロー・ダイアグラム法 | プロジェクト推進のための各作業と日程計画を立てる手法 |
PDPC法 | 想定されるトラブルが起こった際の対応策や処理手順などをフローチャートの形にまとめる手法 |
マトリックスデータ解析法 | 前述のマトリックス図により行列で示された数値データを、2次元の平面に展開し、その相関関係を図示する手法 |
QCツールはチームで活用し共有することがチームの活性化につながります。ツールをうまく使ってソフトウェア品質を向上させていきましょう。