ISTQBアドバンストレベル「テストアナリスト」シラバスの章3.2では、**仕様ベースのテスト技法(Specification-Based Techniques)**が紹介されています。
今回はその中でも、新しい技法として扱われる 「原因結果グラフ法(Cause-Effect Graphing)」 について解説します。
🔍 原因結果グラフ法(Cause-Effect Graphing)とは?
原因結果グラフ法は、入力条件(原因)と出力結果(効果)との関係を論理的に整理し、グラフ構造で表現する手法です。
特定の出力(効果)がどのような条件(原因)の組み合わせで発生するかを視覚的に示すことで、テストケースを体系的に設計できます。
この手法は、アドバンストレベルで新たに登場する技法であり、K2レベル(理解レベル)の出題範囲に含まれるため、数値計算などは不要です。
試験では「手法の目的・構成要素・利点」を理解しているかが問われます。
🧠 基本概念:原因と結果の関係
原因結果グラフでは、次のように「原因(Cause)」と「結果(Effect)」の論理関係を図式化します。
-
Cause(原因):入力条件や事象
-
Effect(結果):出力やシステムの応答
これらの関係は、**論理演算(AND / OR / NOT)**で表されます。
|
論理演算 |
意味 |
例 |
|---|---|---|
|
AND(かつ) |
すべての条件が成立したとき効果が発生 |
「ID」と「パスワード」が正しい場合のみログイン成功 |
|
OR(または) |
いずれかの条件が成立したとき効果が発生 |
「Google」または「Facebook」でログインできる |
|
NOT(否定) |
条件が成立しないとき効果が発生 |
「有効期限が切れていない」場合のみ利用可能 |
💡 具体例:SNSログインの原因結果グラフ
次のようなログイン機能を考えてみましょう。
-
ユーザーは以下のいずれかの方法でログインできる。
-
Facebookアカウント
-
Googleアカウント
-
LinkedInアカウント
-
この場合、**3つの入力(原因)**があり、それぞれが「ログイン成功(効果)」につながる条件です。
このとき、原因結果グラフでは 「OR」 の関係で表されます。
C1: Facebookでログイン
C2: Googleでログイン
C3: LinkedInでログイン
E1: ログイン成功
C1 OR C2 OR C3 → E1
逆に、「パスワードが正しい」かつ「アカウントが有効」な場合のみログイン可能なら、
C1: パスワードが正しい
C2: アカウントが有効
E1: ログイン成功
C1 AND C2 → E1
という AND関係になります。
🧩 因果関係を整理する手順
原因結果グラフを作成する際は、以下のステップで進めます。
Step 1:効果(Effect)を特定する
最初に、何を結果(Outcome)とするかを明確にします。
例:「ログイン成功」「エラー発生」「申請承認」など。
Step 2:原因(Cause)を洗い出す
その結果を引き起こす可能性のあるすべての条件をリストアップします。
Step 3:因果関係を特定する
どの原因がどのような組み合わせで結果を生むのかを、AND / OR / NOT で表現します。
Step 4:グラフを作成する
原因を左側、効果を右側に配置し、矢印で論理関係を可視化します。
Step 5:テストケースへ変換する
原因と効果の組み合わせをもとに、テスト条件を具体的なテストケースとして抽出します。
🧰 利用シーンと応用例
原因結果グラフは、以下のような場面で活用できます。
|
用途 |
説明 |
|---|---|
|
欠陥の根本原因分析(Root Cause Analysis) |
不具合の発生原因を特定するために使用。効果を「欠陥」とみなし、原因を特定する。 |
|
プロセス改善 |
組織やプロジェクトの中で発生する問題(遅延・品質低下など)の要因を可視化。 |
|
設計品質の向上 |
コードや仕様レベルで「どの条件が不具合を引き起こすのか」を明確にする。 |
✅ 原因結果グラフのメリット
|
メリット |
説明 |
|---|---|
|
問題の根本原因を構造的に分析できる |
問題の背後にある複数の原因を体系的に整理できる。 |
|
関係性を可視化できる |
チーム全体で直感的に理解できる図式形式。 |
|
データ収集ポイントを明確化できる |
どの部分で追加データが必要かを特定しやすい。 |
|
チームの参加を促進 |
図を使って意見を出し合い、全員で問題を共有できる。 |
|
プロセス理解が深まる |
各要因がどのように相互作用して結果に至るかを学べる。 |
🖼️ フィッシュボーン図との関係
原因結果グラフは、**フィッシュボーン図(特性要因図、Ishikawa Diagram)**に発展させて用いられることがあります。
下のように「骨格」を描いて、効果(Effect)を右側に置き、原因を分類して枝として描きます。

これにより、「なぜ?」を繰り返し掘り下げながら問題の本質に迫ることができます。
📝 試験で問われるポイント
ISTQBアドバンストレベル(Test Analyst)試験では、以下のような点が問われます。
-
原因結果グラフ法の目的と利点を理解しているか
-
AND / OR / NOT の論理関係を正しく説明できるか
-
適用できるシナリオ(例えば根本原因分析など)を把握しているか
実際の試験では、**理論的理解(K2レベル)**が求められ、グラフの描画や計算までは出題されません。
まとめ
原因結果グラフ法(Cause-Effect Graphing)は、
**「なぜこの結果が起きたのか」**を明確にするための強力な分析手法です。
単なるテストケース設計だけでなく、品質問題の根本原因分析やプロセス改善にも応用できます。
システムを「入力と出力の関係」で捉える考え方を身につけておくことで、テスト設計の幅が大きく広がります。


コメント