« [サイト]ソフトウェアテスト、HAYST法、などなどのサイト紹介 | トップページ | [例題]テニスのスコアボード »

デシジョンテーブルの結合(具体例)

[サイト]ソフトウェアテスト、HAYST法、などなどのサイト紹介で紹介したサイトにあった、原因結果グラフによるテストケース作成を実際に試してみたが、あきやまさんご指摘のとおり、間違えていた。もう一度順を追ってやり直してみたので、その結果を書いてみた。

==

まずは、原因結果グラフを簡略化してみる。
Ceg1_2

中間ノードは存在しないので、4つの結果に対するデシジョンテーブルを作成。
Dtsub_2

そして、これらを単純に結合する。ここまでは素直。太枠の部分がそれぞれのサブテーブルにあたる。
Dtmain1_4

ここでONE制約があるので、必然的にT/Fが決定する部分を埋める。便宜上小文字のt/fとする。
Dtmain2_2

このデシジョンテーブルにはすでに重複する列があるので、それらを除外する。
Dtmain3

この時点でデシジョンテーブルを整理してみると、左側7列の中に、最初に作成したサブテーブルの組み合わせが全て出現していることがわかる。ということは残りの#12と#13の空欄をどのように組み合わせても重複する列になってしまうため、除外する。
2008/02/06追記。#2のテストケースの結果が間違っていましたので、修正しています。あきやまさん、ご指摘ありがとうございます。
Dtmain42

あとは、ナンバリングしなおして、#7の13のマス目に適当なt/fを埋めて完成。今回は「f」とした。
2008/02/06追記。上図同様#2のテストケースの結果を修正。
Dtmain52

==

さて、ここで自分への問題。どうしてテーブルの結合で誤りがあったのか。考えうる原因として、

  • 重複列の判断を間違えた(判断の仕方が適切でなかった)

  • 空欄・DCの考え方が間違っていた

  • 検算を忘れた(サブテーブルの組み合わせの確認)
  • あたりか・・・

    |

    « [サイト]ソフトウェアテスト、HAYST法、などなどのサイト紹介 | トップページ | [例題]テニスのスコアボード »

    コメント

    お疲れさまでした。
    でもね。#2の結果は、上から、F f T Fです。(^_^;)

    投稿: あきやま | 2008年2月 6日 (水) 07:47

    >あきやまさん

    本当ですね。
    こういうことが起きないようにツールを介して
    テーブルを完成させたほうがいいのですかね。
    (ツールを作れば理解も深まり、ミスもなくなる)単純発想ですが。

    いつもご指摘ありがとうございます。

    投稿: softest | 2008年2月 6日 (水) 11:33

    生成のツールを作るのはわりと大変なのですが、デシジョンテーブルの結果の検証については、EXCELファイルに条件側をT→1、F→0に置換しておき、結果側に「=AND(B1,NOT(B3),B4)」などの式を入力するだけで簡単に作れます。

    有効だと思いますのでお試しください。(^_^)

    投稿: あきやま | 2008年2月 6日 (水) 12:53

    >あきやまさん

    納得です>論理式をEXCELで検算
    ツールは難しそうですが、勉強のためにも
    チャレンジしてみようかな。何か気づきがあれば
    もうけもの。

    投稿: softest | 2008年2月 6日 (水) 13:01

    生成の方のツールですが、基本的なところまではわりとすぐに出来ると思うのですが、

    第一関門:制約条件の追加
    第二関門:カバレッジ表を埋められない時の処理
    第三関門:最適化

    と3つの関門が待っています。
    でも、勉強になると思うのでがんばってね。

    投稿: あきやま | 2008年2月 6日 (水) 13:06

    >あきやまさん

    まずはシンプルなテーブル作成からやってみます。制約条件、大変そうだ。。勉強の成果をまたブログにアップできればと思います。

    投稿: softest | 2008年2月 6日 (水) 22:05

    コメントを書く



    (ウェブ上には掲載しません)




    トラックバック

    この記事のトラックバックURL:
    http://app.f.cocolog-nifty.com/t/trackback/155415/10275042

    この記事へのトラックバック一覧です: デシジョンテーブルの結合(具体例):

    « [サイト]ソフトウェアテスト、HAYST法、などなどのサイト紹介 | トップページ | [例題]テニスのスコアボード »