CFD (Cause Flow Diagram) アドイン

CFD (Cause Flow Diagram)とは?

CFD法とは、松尾谷徹氏が開発したテスト設計技法で、「原因の集合」と「原因どうしのつながり」に着目し”流れ線”でつなぐことによって仕様を図式化し、そこからデシジョンテーブルを作成する技法です。(書籍「(ソフトウェアテスト技法ドリル」 p77より引用)

CFD (Cause Flow Diagram)とは、その技法の中で利用されるダイアグラムです。

CFDの詳細は、上記書籍「ソフトウェアテスト技法ドリル」の他、Googleで検索すると見つかるさまざまな情報・資料をご覧ください。

CFDアドイン

このページ下部からダウンロードできるアドインをインストールすると、CFDの作図およびいくつかの機能が利用できるようになります。Enterprise Architect バージョン15.0以降で動作します。基本的にはすべてのエディションで利用できますが、プロフェッショナル版ではデシジョンテーブルを表要素として出力する機能は利用できません。

なお、このアドインはスパークスシステムズ ジャパンが独自に企画・作成しているものです。CFDアドインについてのご質問・ご要望・バグ報告などにつきましては、弊社にご連絡ください

CFDアドインを利用した図と、Excelに出力したデシジョンテーブルのサンプル


CFDアドインの利用例(動画デモ)

CFDアドインの概要を動画で説明しています。(7分57秒・音声あり)

CFDアドインの主な機能

  • クイックリンク機能を利用した、効率的な作図
    (Ctrl+クリックで、同じ種類の要素を繰り返し作成できます。)
  • それぞれの要素をダブルクリックすると、CFDに関係する内容のみを設定できるプロパティ画面の利用
  • 同値分割図要素をダブルクリックすると表示される画面から、同値パーティションをまとめて生成・編集
  • 同値分割図要素をダブルクリックすると表示される画面から、その同値分割の詳細を記述する機能
    (書籍「ソフトウェアテスト技法ドリル」の「ズームアウト」の概念を実現する機能)
  • ダイアグラムの背景で右クリックし、デシジョンテーブルをExcelに出力
  • 作成した内容からデシジョンテーブルを生成可能
    (ダイアグラムの背景で右クリックし「アドイン・拡張」→「CFDアドイン」以下の項目
    • Excel出力の場合は、空のExcelファイルを作成し、デシジョンテーブルを出力
    • 要素として生成する場合には、コーポレート版以上のエディションで利用可能な「表要素」としてデシジョンテーブルを出力
      • 要素が存在しない場合には作成し、ダイアグラムの左上に配置します。
      • 要素が存在する場合には内容を更新します。
      • 表要素をダブルクリックすることでも更新できます。
  • RDRAアドインのバリエーション要素をモデルブラウザ内からドラッグし、CFDにドロップすることで同値分割図要素として配置・利用できます。

CFDアドインの独自拡張・注意事項

フローへの条件(制約)の追加

結果から出るフローの遷移を限定したい場合には、条件(制約)を付加することで制限できます。以下の例では、「無料ではない」の結果は、「2000円を超えない」および「3000円を超えない」の同値パーティションのみを辿ることを示しています。
(「無料ではない」の結果では「1店舗3000円以上」にはつながりません。)

フローに条件を追加する場合には、フローをダブルクリックして表示されるプロパティ画面で文字あるいは文字列を入力してください。カンマ区切りで複数の内容を指定することも可能です。文字や文字列の内容はこの例のような数値以外でも可能です。ただし、*はどの条件にも該当することを示します。

条件を指定する場合には、結果から出るフローに対して設定する必要があります。途中のフローから条件を指定することはできません。

同値分割図に関するフローの扱い

(同値パーティションではなく)同値分割図からフローが出る場合、その同値分割図に含まれる同値パーティションの全否定になります。いわゆる「else」の扱いです。

同値分割図へフローが入る場合、その同値分割図に含まれるすべての同値パーティションにつながるものとして扱います。

ただし、同値パーティションへの条件付きフローがある場合には、同値分割図へ入るフローがある場合でも無視します。以下の例では、同値パーティションa空のフローは同値分割図2につながっていますが、同値パーティションbから同値パーティションdへの条件付きフローがあるため、a→d→結果2というフローはデシジョンテーブルには含まれません。

デシジョンテーブルの出力について

デシジョンテーブル作成時、同値分割図および同値パーティションは名前のみで識別します。つまり、同名の複数の要素がある場合、デシジョンテーブルでは同一の要素として出力します。作図上、見やすくするために同名の要素を作成すると良い場合もあるでしょう。
(ダイアグラム内の要素をCtrl+ドラッグで複製できます。)

同値分割図はダイアグラム内の左側の要素が優先・同値パーティションはダイアグラム内の上側の要素が優先して出力されます。デシジョンテーブルの出力順序を調整したい場合には、要素の位置を調整してください。

結果のみが異なる複数の同一のフローがある場合には、デシジョンテーブルで赤色で表示されます。

CFDアドインのダウンロード

CFDアドインは、以下のリンクからダウンロードできます。
setupCFD.msi

ダウンロード・利用は無料です。Windows Installer形式のインストーラですので、ファイルをダブルクリックしてインストールできます。Enterprise Architectをインストールしたディレクトリと同じ場所にインストールしてください。

このアドインの利用にはバージョン15.0以降が必要です。デシジョンテーブルを出力するExcelはExcel 2019で動作確認しています。