ã½ããã¦ã§ã¢ãã¹ãåãã®ç´äº¤è¡¨èªåæ§æã«é¢ããä¸èå¯
ã½ããã¦ã§ã¢ãã¹ãåãã®ç´äº¤è¡¨èªåæ§æã«é¢ããä¸èå¯
ã½ããã¦ã§ã¢ãã¹ãåãã®ç´äº¤è¡¨èªåæ§æã«é¢ããä¸èå¯
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
FIT2009( 第 8 回 情 報 科 学 技 術 フォーラム)<br />
B-026<br />
ソフトウェアテスト 向 けの 直 交 表 自 動 構 成 に 関 する 一 考 察<br />
Some Ideas for Computer Construction of Orthogonal Array Used for Application to<br />
Software Testing<br />
須 田 健 二 †<br />
Kenji Suda<br />
1. まえがき<br />
直 交 表 は、 実 験 計 画 法 で 培 われた 技 術 であるが、 最 近 は<br />
プログラムのバグを 効 率 よく 取 り 除 くための 技 法 であるソ<br />
フトウェアテストにも 応 用 が 広 がりつつある。しかしなが<br />
ら、 実 験 計 画 向 けの 直 交 表 とソフトウェアテスト 向 けの 直<br />
交 表 では、その 大 きさ、 因 子 数 や 水 準 数 、また 強 さなどに<br />
要 求 される 条 件 が 異 なっている。 我 々は、すでに 主 として<br />
実 験 計 画 向 けの 直 交 表 を 自 動 構 成 できる 万 能 型 のソフトを<br />
[1]<br />
開 発 しており、ソフトウェアテスト 向 けにも 一 部 応 用 可<br />
能 である。 今 回 、ソフトウェアテスト 向 けの 直 交 表 に 要 求<br />
される 項 目 等 について 考 察 を 加 え、これを 基 にソフトウェ<br />
アテスト 向 けの 直 交 表 自 動 構 成 ソフトを 開 発 中 であるので<br />
報 告 する。<br />
2. ソフトウェアテストと 直 交 表<br />
2.1 ソフトウェアテスト<br />
実 験 計 画 法 やソフトウェアテストにおいて、 図 1 に 示 す<br />
ように、 特 性 値 や 結 果 に 影 響 を 及 ぼすと 考 えられる 因 子 の<br />
水 準 組 合 せについて 実 験 やテストを 行 う。しかし、すべて<br />
の 水 準 組 合 せについて 実 験 やテストを 行 うと、その 回 数 は<br />
膨 大 となり 不 可 能 となってしまう。そこで 全 部 の 組 合 せ 実<br />
験 を 行 うのではなく、その 一 部 のみの 実 験 で、 全 部 の 実 験<br />
を 行 ったのと 同 等 の 情 報 を 得 るために 直 交 表 と 呼 ばれる 組<br />
合 せ 表 を 用 いる 方 法 が 広 く 行 なわれている。<br />
ソフトウェアテストとは<br />
与 えられたテスト 目 的 に 対 して<br />
どのようなテストをすれば 最 も 効 率 よく 結 果 が 得 られるか<br />
を 考 える 方 法<br />
水 準 ( 項 目 や 機 能 などのとる 値 )<br />
因 子<br />
( 項 目 、 機 能 、<br />
パラメータなど)<br />
:<br />
テスト<br />
( 水 準 組 合 せ)<br />
結 果<br />
(バグがあるかないか)<br />
1 機 能 テスト:ある 因 子 のある 水 準 が、 結 果 に 及 ぼす 影 響 を 調 べる<br />
2 機 能 間 テスト:2つの 因 子 の 水 準 組 合 せが、 結 果 に 及 ぼす 影 響 を<br />
調 べる<br />
t 機 能 間 テスト:t 個 の 因 子 の 水 準 組 合 せが、 結 果 に 及 ぼす 影 響 を<br />
調 べる<br />
図 1 実 験 やテストのモデル<br />
2.2 直 交 表 とは<br />
S ={0,1,・・・,q-1}とする。 強 さtの 直 交 表 は、m×N 行<br />
列 A で、 次 の 条 件 を 満 たすとき、A は 大 きさ N、 制 約 数<br />
m、シンボル 数 q、インデックスλの 直 交 表 であるといい、<br />
OA(N, m, q, t)と 書 く。<br />
† 群 馬 工 業 高 等 専 門 学 校 電 子 情 報 工 学 科<br />
条 件 ;A の 任 意 の t 行 に 対 し、すべての S t の 順 序 対 が<br />
ちょうどλ 個 の 列 に 現 れる。<br />
なお、この 直 交 表 をソフトウェアテストで 使 用 する<br />
ときには、N はテスト 回 数 、m は 因 子 数 、q は 水 準 数 、t<br />
は 強 さとなる。 我 が 国 で 良 く 使 用 されている 記 法 LN (q m )<br />
は、OA(N, m, q, 2)に 相 当 する。<br />
2.3 ソフトウェアテストで 必 要 な 直 交 表<br />
ソフトウェアテストで 必 要 な 直 交 表 は、まず 多 因 子 、 多<br />
水 準 で、 因 子 間 で 水 準 数 が 異 なる 場 合 が 多 いなど、 実 験 計<br />
画 で 使 われているものと 異 なる。 図 1に 示 すように 実 際 の<br />
テストでは、 全 ての 因 子 の 2 機 能 間 テストの 他 に、 一 部 因<br />
子 の 3 機 能 間 テスト、 一 部 因 子 の 4 機 能 間 テストも 要 求 さ<br />
れ、これらに 対 応 するためには、 強 さ 2 の 直 交 表 OA(N,<br />
m, q, 2)で、 部 分 的 に 強 さ 3 と 強 さ 4 を 持 つ 直 交 表 が 必 要<br />
となる。<br />
3. 直 交 表 の 構 成 法<br />
3.1 G 行 列 から 直 交 表 を 生 成<br />
このような 直 交 表 を 構 成 する 方 法 は、ある 条 件 を 満 たす<br />
ような 行 列 G が 作 れれば 簡 単 であることが 知 られている [2] 。<br />
今 、 想 定 される 因 子 を F 1 , F 2 ,・・・, F m とし、すべて 同 じ 水 準<br />
を 持 つとする。 次 に 想 定 される 一 部 強 さ 3 を 要 求 される 因<br />
子 を F i1 ,F i2 ,・・・,F iw とする。 次 に 想 定 される 一 部 強 さ 4<br />
を 要 求 される 因 子 を F j1 ,F j2 ,・・・,F jz とする。これをイン<br />
デックスの 集 合 で 簡 略 化 して 次 のように 書 く。<br />
M = {1,2,・・・,m}<br />
I={i 1, i 2, ・・・, iw}⊆M<br />
J ={j 1, j 2, ・・・, jz}⊆M<br />
ただし、I∩J =φ<br />
すなわち、 水 準 数 q が 一 定 で、しかも 素 数 べきであるな<br />
ら、 有 限 体 GF(q) 上 、 次 のような 性 質 を 持 つm×n 行 列 G<br />
を 考 える。<br />
(1) G の 任 意 の 2 行 は、 線 形 独 立 である。<br />
(2) {i, j, k }∈I,のとき、Gの 第 i, j, k の3 行 は 線 形 独 立 で<br />
ある。<br />
(3) {i, j, k, l }∈J, のとき、Gの 第 i, j,k, l の4 行 は 線 形 独 立<br />
である。<br />
この 条 件 を 満 たす G 行 列 から、 直 交 表 は 次 式 で 得 られ<br />
る。<br />
A = {r = Gθ; θ∈ GF(q) n }<br />
415<br />
( 第 1 分 冊 )
FIT2009( 第 8 回 情 報 科 学 技 術 フォーラム)<br />
3.2 G 行 列 の 構 成 に 有 限 射 影 幾 何 を 利 用<br />
このような G 行 列 を 構 成 する 方 法 として、 因 子 F1,<br />
F2,・・・,Fm を 有 限 射 影 幾 何 PG(n,q)の 点 に 割 りつける 方 法<br />
が 知 られている [3] 。すなわち、<br />
(1)PG(n-1,q)の 点 は、GF(q) 上 の n 次 元 ベクトルで 表 現 で<br />
きる。<br />
(2) PG(n-1,q)のすべての 点 (ベクトル 表 現 )から G 行 列<br />
を 作 ると、 因 子 数 m=(q n -1)/(q-1)なる 強 さ 2 の 直 交 表<br />
が 構 成 できる。<br />
(3) 強 さ 3 の 直 交 表 を 作 るには、 直 線 上 の 3 点 にのらない 点<br />
の 集 合 を 集 める 必 要 がある。<br />
(4) 強 さ 4 の 直 交 表 を 作 るには、 平 面 上 の 4 点 にのらない 点<br />
の 集 合 を 集 める 必 要 がある。<br />
図 2 GaloisSoftTest のメニュー 画 面<br />
4. ソフトウェアテスト 向 けの 直 交 表 自 動 構 成 ソ<br />
フトの 開 発<br />
我 々がすでに 開 発 した 実 験 計 画 法 向 けの 直 交 表 構 成 ソフ<br />
ト Galois は、 多 因 子 ・ 多 水 準 (2・3・4・5・7・8・9)、 強<br />
さ 2,3,4 に 対 応 した 万 能 型 直 交 表 自 動 構 成 ソフトである。<br />
従 って、この Galois をソフトウェアテストに 応 用 すること<br />
も 可 能 であるが、 今 回 、ソフトウェアテスト 専 用 のシステ<br />
ムの 開 発 を 思 い 立 った。その 理 由 は、システムの 操 作 性 の<br />
向 上 やソフトウェアテストシンポジウム JaSST [4][5] で 発 表<br />
されたソフトウェアテスト 向 けの 直 交 表 に 望 まれる 機 能 な<br />
どを 取 り 入 れるためである。<br />
以 上 の 観 点 から、 我 々はソフトウェアテスト 向 けの 直 交<br />
表 自 動 構 成 ソフト GaloisSoftTest を 開 発 中 である。 概 要 は<br />
次 の 通 りで、3 つの 機 能 に 絞 り 開 発 を 進 めている。<br />
1. 基 本 形 すべての 因 子 が 同 じ 水 準 数 をもつタイプで、<br />
因 子 数 、 水 準 数 、 強 さ(2、3 か 4)を 与 えると、<br />
テスト 回 数 最 小 の 直 交 表 を 生 成 してくれる。<br />
2. 応 用 系 一 部 因 子 間 で 強 さが 異 なるタイプで、<br />
基 本 は 強 さ 2 だが、 一 部 の 因 子 間 は 強 さ 3 また<br />
一 部 の 因 子 間 は 強 さ 4 の 直 交 表 を 生 成 してくれ<br />
る。ここでもすべての 因 子 が 同 じ 水 準 数 をもつ<br />
と 仮 定 している。<br />
3. 混 合 形 因 子 間 で 一 部 水 準 数 が 異 なる 混 合 系 のタイプで、<br />
HAYST 法 [4] などで 使 用 の 2 n 型 だけでなく、<br />
3 n 型 などの 混 合 系 の 直 交 表 を 生 成 してくれる。<br />
ただし、 強 さは 2 だけである。<br />
図 2 に GaloisSoftTest を 起 動 したときのメニュー 画 面 を 示<br />
す。 現 在 までのところ 基 本 形 はほぼ 完 成 しており、そのボ<br />
タンをクリックすると、 図 3 に 示 すダイアログボックスが<br />
表 示 されるので、 自 動 構 成 に 必 要 なデータである、 因 子 数 、<br />
水 準 数 、 強 さの 入 力 を 行 ない、 直 交 表 作 成 ボタンをクリッ<br />
クするだけで 最 適 な 直 交 表 を 構 成 してくれる。<br />
応 用 系 や 混 合 形 については、すでにそのアルゴリズムはで<br />
きており、プログラムを 作 成 中 である。<br />
5. まとめ<br />
ソフトウェアテスト 向 けの 直 交 表 について 考 察 し、 新 た<br />
に 直 交 表 自 動 構 成 ソフト GaloisSoftTest を 開 発 している。<br />
これが 完 成 すれば、 多 因 子 (3~50 因 子 )・ 多 水 準 (2・<br />
3・4・5・7・8・9 水 準 )で、2~4 機 能 間 の 全 部 の 組 合 せ<br />
図 3 基 本 形 の 入 力 画 面<br />
のチェックはもちろん、 一 部 は 3 機 能 間 や 4 機 能 間 のチェ<br />
ックも 可 能 である。また、ソフトウェアテストにとって 重<br />
要 な、 因 子 間 で 一 部 水 準 数 の 異 なる 2 n 型 の 混 合 型 の 直 交<br />
表 も 簡 単 に 構 成 できるようになる。そうすればテスト 技 術<br />
者 は、 直 交 表 やその 設 計 に 煩 ずらわせられることなく、テストに<br />
専 念 できるようになると 思 われる。<br />
今 後 の 課 題 として、GaloisSoftTest をできるだけ 早 く 完<br />
成 させること。また、さらに 大 きい 水 準 数 (11,13,16 な<br />
ど)に 対 応 するなど 機 能 拡 充 のためには、 原 始 既 約 多 項 式<br />
や 有 限 射 影 幾 何 の 初 期 直 線 の 入 力 が 必 要 となる。<br />
文 献<br />
[1] 須 田 健 二 、パソコンによる 直 交 表 の 自 動 構 成 とソフト<br />
ウェアテストへの 応 用 、ソフトウェアテストシンポジ<br />
ウム 2007 東 京 予 稿 集 、pp.91-97, 2007.<br />
[2] 高 橋 磐 郎 、 組 合 せ 理 論 とその 応 用 、 岩 波 全 書 、1979<br />
[3] 須 田 健 二 、 宮 崎 晴 夫 , 直 交 配 列 を 用 いた 実 験 計 画 におけ<br />
る 要 因 割 りつけのコンピュータ・アルゴリズムについ<br />
て、 日 本 経 営 工 学 会 誌 、Vol.37、No.6, pp.345-352,<br />
1987.<br />
[4] 山 本 、 秋 山 、 直 交 表 を 利 用 したソフトウェアテスト-<br />
HAYST 法 -、ソフトウェアテストシンポジウム<br />
2007 東 京 予 稿 集 、2004.<br />
[5] 居 駒 幹 夫 、10 年 後 のソフトウェア 技 術 , ソフトウェ<br />
アテストシンポジウム 2009 東 京 予 稿 集 、pp.114-<br />
121, 2009.<br />
416<br />
( 第 1 分 冊 )