(57)【要約】【課題】より網羅的で効率的なテストを実現する。【解決手段】製品の仕様が記載された文書の文字列のデータを記憶する記憶部２０と、この記憶部から文字列のデータを読み込んで、前記文書に含まれる各文の形態素解析を行うとともに、当該形態素解析により得られた語を、判別した品詞と関連付けて因子・観点ＤＢに格納する形態素解析実行手段と、因子・観点ＤＢから、予め設定された品詞に関する条件を満たす語または語の組合せを取得し、取得した語または語の組合せを、それらが含まれる文内で、別の語または語の組合せに置き換えることにより、新たな文を生成し、それをテストケースとしてテストケース生成Ｄに格納するテストケース生成手段と、テストケース生成Ｄからテストケースを取得して出力する出力手段とを備える。【選択図】図２
2011227695.tif 000002
【特許請求の範囲】
【請求項１】
製品の仕様が記載された文書からテストケースを作成するシステムであって、
前記文書の文字列のデータを記憶する記憶手段と、
前記記憶手段から前記文字列のデータを読み込んで、前記文書に含まれる各文の形態素解析を行うとともに、当該形態素解析により得られる最小単位の文字または文字列を語として、それら語を、当該形態素解析により判別した品詞と関連付けて第１データベースに格納する形態素解析実行手段と、
前記第１データベースから、予め設定された品詞に関する条件を満たす語または語の組合せを取得し、取得した語または語の組合せを、それらが含まれる文内で、別の語または語の組合せに置き換えることにより、新たな文を生成し、それをテストケースとして第２データベースに格納するテストケース生成手段と、
前記第２データベースからテストケースを取得して出力する出力手段とを備えることを特徴とするテストケース作成システム。
【請求項２】
前記形態素解析により判別した品詞の位置関係に基づいて、前記文書に含まれる各文を、主語文節と述語文節を組み合わせた主規定文と、この主規定文を除いた１または複数の条件文節とに区分し、その情報を、それら文節を構成する各語に関連付けて前記第１データベースに格納する文節分類手段と、
テストの機能、条件、操作、実行および結果に関する観点をそれぞれ、機能観点、条件観点、操作観点、実行観点および結果観点とし、それぞれの観点の因子となる語をそれぞれ、機能因子、条件因子、操作因子、実行因子および結果因子とした場合に、それら因子の何れかに、前記第１データベースに格納されたそれぞれの語を、前記形態素解析により判別された品詞とその文中における位置とに基づいて分類して、その分類結果をそれぞれの語と関連付けて前記第１データベースに格納する因子分類手段と、
一文内で同じ因子が連続する場合にはそれら因子を結合させたものを、連続しない場合には単独の因子をそれぞれ、機能観点、条件観点、操作観点、実行観点または結果観点として生成して、それら観点をそれぞれの語と関連付けて前記第１データベースに格納する観点生成手段とを備え、
前記テストケース生成手段が、前記第１データベースから、同一種類の観点として分類された語の組合せを取り出して、その中から、共通の名詞または動詞を含む語の組合せを抽出した後、それら語の組合せが含まれる文間で、それら語の組合せを相互に置換することにより、新たな文を生成し、それをテストケースとして第２データベースに格納することを特徴とする請求項１に記載のテストケース作成システム。
【請求項３】
名詞となる語がカテゴリ別に登録されたカテゴリ辞書を有し、
前記テストケース生成手段は、前記データベースから名詞となる語を抽出した後、当該語が前記カテゴリ辞書に存在するか否かを判定し、当該語が前記カテゴリ辞書に存在すると判定される場合に、当該語と同じカテゴリに属する別の語を前記カテゴリ辞書から取得して、当該語を、それが含まれる文内で、前記別の語に置き換えることにより、新たな文を生成し、それをテストケースとして前記第２データベースに格納することを特徴とする請求項１に記載のテストケース作成システム。
【請求項４】
前記文書に含まれる各文間の従属関係を判定し、その判定の結果、主となる文がテストケースに該当する場合には従属する文もテストケースとして前記第２データベースに格納する一方、主となる文がテストケースに該当しない場合は従属する文もテストケースから除外することを特徴とする請求項１に記載のテストケース作成システム。
【請求項５】
前記文内の名詞を抽出し、連続する文内で共に同一の名詞の語が含まれる場合に、前の文を主となる文、後の文を従属する文としてそれぞれ判定することを特徴とする請求項４に記載のテストケース作成システム。
【請求項６】
接続詞で始まる文を、直前の文に従属する文として判定することを特徴とする請求項４に記載のテストケース作成システム。
【請求項７】
「名詞−代名詞−一般」の語で始まる文、またはそれら語を含む文を、直前の文に従属する文として判定することを特徴とする請求項４に記載のテストケース作成システム。
【請求項８】
“以上から”、“以上で”またはこれらの同義語で始まる文に含まれる名詞を抽出して、それら名詞が使用されている文を、文書データの先頭から検索し、該当する文が存在する場合には、その文を主となる文として、“以上から”、“以上で”またはこれらの同義語で始まる文を従属する文としてそれぞれ判定することを特徴とする請求項４に記載のテストケース作成システム。
【請求項９】
前記テストケース生成手段は、前記第１データベースから、否定を表す語をその品詞に基づいて抽出した後、当該否定を表す語を、それが含まれる文内で、肯定を表す語に置換することにより、新たな文を生成し、それをテストケースとして前記第２データベースに格納することを特徴とする請求項１に記載のテストケース作成システム。
【請求項１０】
前記テストケース生成手段は、前記否定を表す語が含まれる文と、当該文から生成した新たな文について、それら文が否定形の文である場合には肯定形の文に、肯定形の文である場合には否定形の文に変換することにより、新たな文をさらに生成し、それらをテストケースとして前記第２データベースに格納することを特徴とする請求項９に記載のテストケース作成システム。
【請求項１１】
前記テストケース生成手段は、前記第１データベースから、対象を指定する語をその品詞に基づいて抽出した後、当該語を含む文の対象を、その他の対象に置き換えることにより、新たな文を生成し、それをテストケースとして前記第２データベースに格納することを特徴とする請求項１に記載のテストケース作成システム。
【請求項１２】
前記文書の電子データから文字列のデータを抽出して、前記記憶手段に記憶するデータ抽出手段をさらに備えることを特徴とする請求項１に記載のテストケース作成システム。
【請求項１３】
製品の仕様が記載された文書からテスト観点を作成するシステムであって、
前記文書の文字列のデータを記憶する記憶手段と、
前記記憶手段から前記文字列のデータを読み込んで、前記文書に含まれる各文の形態素解析を行うとともに、当該形態素解析により得られる最小単位の文字または文字列を語として、それら語を、当該形態素解析により判別した品詞と関連付けて第１データベースに格納する形態素解析実行手段と、
テストの機能、条件、操作、実行および結果に関する観点をそれぞれ、機能観点、条件観点、操作観点、実行観点および結果観点とし、それぞれの観点の因子となる語をそれぞれ、機能因子、条件因子、操作因子、実行因子、結果因子とした場合に、それら因子の何れかに、前記第１データベースに格納されたそれぞれの語を、前記形態素解析により判別された品詞とその文中における位置とに基づいて分類して、その分類結果をそれぞれの語と関連付けて前記第１データベースに格納する因子分類手段と、
一文内で同じ因子が連続する場合にはそれら因子を結合させたものを、連続しない場合には単独の因子をそれぞれ、機能観点、条件観点、操作観点、実行観点または結果観点として生成して、それら観点をそれぞれの語と関連付けて前記第１データベースに格納する観点生成手段と、
生成した観点またはその組み合わせをテスト観点として出力する出力手段とを備えることを特徴とするテスト観点作成システム。
【請求項１４】
製品の仕様が記載された文書の文字列のデータを記憶する記憶手段と、当該記憶手段に記憶された前記文字列のデータからテストケースを生成する制御を行う制御手段とを備えるコンピュータによって実行されるテストケース作成方法であって、
前記制御手段が、前記記憶手段から前記文字列のデータを読み込んで、前記文書に含まれる各文の形態素解析を行うとともに、当該形態素解析により得られる最小単位の文字または文字列を語として、それら語を、当該形態素解析により判別した品詞と関連付けて第１データベースに格納するステップと、
前記制御手段が、前記第１データベースから、予め設定された品詞に関する条件を満たす語または語の組合せを取得し、取得した語または語の組合せを、それらが含まれる文内で、別の語または語の組合せに置き換えることにより、新たな文を生成し、それをテストケースとして第２データベースに格納するステップと、
前記制御手段が、前記第２データベースからテストケースを取得して出力するステップとを備えることを特徴とするテストケース作成方法。
【請求項１５】
製品の仕様が記載された文書の文字列のデータを記憶する記憶手段と、当該記憶手段に記憶された前記文字列のデータからテストケースを生成する制御を行う制御手段とを備えるコンピュータによって実行されるプログラムであって、
前記制御手段が、前記記憶手段から前記文字列のデータを読み込んで、前記文書に含まれる各文の形態素解析を行うとともに、当該形態素解析により得られる最小単位の文字または文字列を語として、それら語を、当該形態素解析により判別した品詞と関連付けて第１データベースに格納するステップと、
前記制御手段が、前記第１データベースから、予め設定された品詞に関する条件を満たす語または語の組合せを取得し、取得した語または語の組合せを、それらが含まれる文内で、別の語または語の組合せに置き換えることにより、新たな文を生成し、それをテストケースとして第２データベースに格納するステップと、
前記制御手段が、前記第２データベースからテストケースを取得して出力するステップとをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仕様書等の文書データからテストケースを自動的に作成するテストケース作成システム、方法およびプログラム、並びにテスト観点作成システムに関するものである。
【背景技術】
【０００２】
ソフトウェア等の製品の開発時には、その機能や性能等のテストが行われる。かかるテストでは、仕様書に記載されている通りに製品が正しく動作するかどうかを確認するのは勿論のこと、それ以外にも、製品の欠陥や不具合等を検出して製品の品質および信頼性を高めるために、仕様書に記載されている語を用いたり、文の意味を読み取って、その仕様書には直接記載されていない様々なテストケースを作成して、より広範且つ網羅的にテストを行うのが一般的である。
【０００３】
例えば、プログラムをテストする際には、その入出力に係る各種処理がそれぞれ正しく行われるかどうかを確認する必要があるが、そのパターンは膨大な数に上り、また通常は、そのすべてが仕様書に記載されている訳ではないため、仕様書の記載事項から必要なテストケースを作成するのに、多大な時間と労力を要するという問題点があった。また、従来は、テストエンジニアが独自の経験と判断に基づいて仕様書からテストケースを作成することが多かったため、その選定にどうしても偏りが生じ易く、網羅性を担保するのが難しいという問題点があった。
【０００４】
かような問題点を解決するために、例えば、特許文献１や特許文献２に示すように、仕様書からテストケースを自動生成するシステムの開発も試みられている。しかしながら、それらシステムにしても、仕様書に含まれる表や状態遷移図等からテストケースを生成することはできても、仕様書の大部分を占める文章からテストケースを新規に生成することはできず、このため網羅性の面で依然課題を有するものであった。また、直交表では、因子を組み合わせてテストケースを生成する際、多くの因子に関する実験を比較的少ない回数で行うことができる利点がある反面、組み合わせる因子自体の選定はテストエンジニアが行う必要があり、不要なテストケースを生成することも多い。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１１−３０６０４６号公報
【特許文献２】特開平７−２５３９０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、かかる事情に鑑みてなされたもので、テストケースの作成に要する時間および労力を大幅に縮減することができるとともに、テストケースの選定に偏りが生じることを防止することができ、それにより、より網羅的で効率的なテストを実現することができるテストケース作成システム、方法およびプログラム、並びにテスト観点作成システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明に係るテストケース作成システムは、製品の仕様が記載された文書の文字列のデータを記憶する記憶手段と、前記記憶手段から前記文字列のデータを読み込んで、前記文書に含まれる各文の形態素解析を行うとともに、当該形態素解析により得られる最小単位の文字または文字列を語として、それら語を、当該形態素解析により判別した品詞と関連付けて第１データベースに格納する形態素解析実行手段と、前記第１データベースから、予め設定された品詞に関する条件を満たす語または語の組合せを取得し、取得した語または語の組合せを、それらが含まれる文内で、別の語または語の組合せに置き換えることにより、新たな文を生成し、それをテストケースとして第２データベースに格納するテストケース生成手段と、前記第２データベースからテストケースを取得して出力する出力手段とを備えることを特徴とするものである。
【０００８】
ここで、テストケースとは、テストに必要な事項（前提条件、操作、それにより生じる結果）が記載されたもので、プログラム等の製品が正しく動いているかどうかを検証するために使用されるものである。
予め設定された品詞に関する条件を満たす語としては、例えば、カテゴリ辞書に登録されている「名詞」の語（請求項３）や、「助詞−格助詞」“が”に続く「形容詞−自立」“ない”や、「名詞−サ変接続」の直前にある「接頭詞−名詞接続」“非”などのように、否定を表す語（請求項９）、あるいは“によって”や“において”などの「助詞−格助詞−連語」のように、対象を指定する語（請求項１１）などが挙げられ、一方、予め設定された品詞に関する条件を満たす語の組合せとしては、観点が同一で共通の名詞または動詞を含む語の組合せ（請求項２）などが挙げられる。“否定を表す語”とは、「接頭詞−名詞接続」の語（“未”“非”“不”など）、「助動詞」及び「形容詞-自立」の語（“〜しない”の“ない”、“〜せず”の“ず”など）のことをいう。
【０００９】
前記テストケース作成システムにおいては、前記形態素解析により判別した品詞の位置関係に基づいて、前記文書に含まれる各文を、主語文節と述語文節を組み合わせた主規定文と、この主規定文を除いた１または複数の条件文節とに区分し、その情報を、それら文節を構成する各語に関連付けて前記第１データベースに格納する文節分類手段と、テストの機能、条件、操作、実行および結果に関する観点をそれぞれ、機能観点、条件観点、操作観点、実行観点および結果観点とし、それぞれの観点の因子となる語をそれぞれ、機能因子、条件因子、操作因子、実行因子および結果因子とした場合に、それら因子の何れかに、前記第１データベースに格納されたそれぞれの語を、前記形態素解析により判別された品詞とその文中における位置とに基づいて分類して、その分類結果をそれぞれの語と関連付けて前記第１データベースに格納する因子分類手段と、一文内で同じ因子が連続する場合にはそれら因子を結合させたものを、連続しない場合には単独の因子をそれぞれ、機能観点、条件観点、操作観点、実行観点または結果観点として生成して、それら観点をそれぞれの語と関連付けて前記第１データベースに格納する観点生成手段とを備え、前記テストケース生成手段が、前記第１データベースから、同一種類の観点として分類された語の組合せを取り出して、その中から、共通の名詞または動詞を含む語の組合せを抽出した後、それら語の組合せが含まれる文間で、それら語の組合せを完全に一致する語の組合せの場合を除き、相互に置換することにより、新たな文を生成し、それをテストケースとしてテストケース生成ＤＢに格納するものであってもよい。
【００１０】
ここで、機能観点、条件観点、操作観点、実行観点および結果観点とは、後述する「５．３：テストケース生成ステップ（語の組合せの置き換え）」の処理で必要な品詞によって判別した組合せの語または単独の語のことをいう。
【００１１】
また、前記テストケース作成システムは、名詞となる語がカテゴリ別に登録されたカテゴリ辞書を有するものであってもよく、その場合、前記テストケース生成手段は、前記データベースから名詞となる語を抽出した後、当該語が前記カテゴリ辞書に存在するか否かを判定し、当該語が前記カテゴリ辞書に存在すると判定される場合に、当該語と同じカテゴリに属する別の語を前記カテゴリ辞書から取得して、当該語を、それが含まれる文内で、前記別の語に置き換えることにより、新たな文を生成し、それをテストケースとして前記第２データベースに格納するものであってもよい。
【００１２】
また、前記テストケース作成システムは、前記文書に含まれる各文間の従属関係を判定し、その判定の結果、主となる文がテストケースに該当する場合には従属する文もテストケースとして前記第２データベースに格納する一方、主となる文がテストケースに該当しない場合は従属する文もテストケースから除外するものであってもよい。
【００１３】
具体的に、各文間の従属関係を判定するための条件としては、例えば、前記文内の名詞を抽出し、連続する文内で共に同一の名詞の語が含まれる場合に、前の文を主となる文、後の文を従属する文としてそれぞれ判定する（条件１）、接続詞で始まる文を、直前の文に従属する文として判定する（条件２）、「名詞−代名詞−一般」「名詞−非自立−副詞可能」「副詞−一般」（“これらから”“以上から（以上で）”“例えば”など）の語で始まる文、またはそれら語を含む文を、直前の文に従属する文として判定する（条件３）、“これらから”、“以上から”などから始まる文に含まれる名詞を抽出して、それら名詞が使用されている文を、文書データの先頭から検索し、該当する文が存在する場合には、その文を主となる文として、“これらから”、“以上から”などで始まる文を従属する文としてそれぞれ判定する（条件４）などが含まれる。
【００１４】
また、前記テストケース生成手段は、前記第１データベースから、否定を表す語をその品詞に基づいて抽出した後、当該否定を表す語を、それが含まれる文内で、肯定を表す語に置換することにより、新たな文を生成し、それをテストケースとして前記第２データベースに格納するものであってもよい。
【００１５】
その場合、前記テストケース生成手段は、前記否定を表す語が含まれる文と、当該文から生成した新たな文について、それら文が否定形の文である場合には肯定形の文に、肯定形の文である場合には否定形の文に変換することにより、新たな文をさらに生成し、それらをテストケースとして前記第２データベースに格納するものであってもよい。
【００１６】
また、前記テストケース生成手段は、前記第１データベースから、対象を指定する語をその品詞に基づいて抽出した後、当該語を含む文の対象を、その他の対象に置き換えることにより、新たな文を生成し、それをテストケースとして前記第２データベースに格納するものであってもよい。
【００１７】
さらに、前記テストケース作成システムは、前記文書の電子データから文字列のデータを抽出して、前記記憶手段に記憶するデータ抽出手段をさらに備えるものであってもよい。
【００１８】
本発明に係るテストケース作成方法は、製品の仕様が記載された文書の文字列のデータを記憶する記憶手段と、当該記憶手段に記憶された前記文字列のデータからテストケースを生成する制御を行う制御手段とを備えるコンピュータによって実行されるテストケース作成方法であって、前記制御手段が、前記記憶手段から前記文字列のデータを読み込んで、前記文書に含まれる各文の形態素解析を行うとともに、当該形態素解析により得られる最小単位の文字または文字列を語として、それら語を、当該形態素解析により判別した品詞と関連付けて第１データベースに格納するステップと、前記制御手段が、前記第１データベースから、予め設定された品詞に関する条件を満たす語または語の組合せを取得し、取得した語または語の組合せを、それらが含まれる文内で、別の語または語の組合せに置き換えることにより、新たな文を生成し、それをテストケースとして第２データベースに格納するステップと、前記制御手段が、前記第２データベースからテストケースを取得して出力するステップとを備えることを特徴とするものである。
【００１９】
本発明に係るプログラムは、製品の仕様が記載された文書の文字列のデータを記憶する記憶手段と、当該記憶手段に記憶された前記文字列のデータからテストケースを生成する制御を行う制御手段とを備えるコンピュータによって実行されるプログラムであって、前記制御手段が、前記記憶手段から前記文字列のデータを読み込んで、前記文書に含まれる各文の形態素解析を行うとともに、当該形態素解析により得られる最小単位の文字または文字列を語として、それら語を、当該形態素解析により判別した品詞と関連付けて第１データベースに格納するステップと、前記制御手段が、前記第１データベースから、予め設定された品詞に関する条件を満たす語または語の組合せを取得し、取得した語または語の組合せを、それらが含まれる文内で、別の語または語の組合せに置き換えることにより、新たな文を生成し、それをテストケースとして第２データベースに格納するステップと、前記制御手段が、前記第２データベースからテストケースを取得して出力するステップとをコンピュータに実行させることを特徴とするものである。
【発明の効果】
【００２０】
本発明によれば、製品の仕様が記載された文書の文字列のデータを用いて形態素解析を行うとともに、当該形態素解析の結果に基づいて、予め設定された品詞に関する条件を満たす語または語の組合せを取得し、取得した語または語の組合せを、それらが含まれる文内で、別の語または語の組合せに置き換えることにより、新たな文を生成し、それをテストケースとして用いるようにしたので、テストケースの作成に要する時間および労力を大幅に縮減することができるとともに、テストケースの選定に偏りが生じることを防止することができ、その結果、より網羅的で効率的なテストを実現することが可能となる。
【図面の簡単な説明】
【００２１】
【図１】図１は、本発明に係るテストケース作成システムの一実施形態を示すブロック図である。
【図２】図２は、テストケース作成システムの概略構成を示すブロック図である。
【図３】図３は、テストケース作成処理の全体の流れを示すフローチャートである。
【図４】図４は、文書の電子データの一例を示す図である。
【図５】図５は、テキスト化処理後の文字列のデータの一例を示す図である。
【図６】図６は、形態素解析の結果の一例を示す図表である。
【図７】図７は、文節の分類方法を説明する図である。
【図８】図８は、主規定文の分類方法を説明する図である。
【図９】図９は、説明用の例文１−３を示す図である。
【図１０】図１０は、因子の分類結果の一例を示す図表である。
【図１１】図１１は、図１０の分類結果の続きを示す図表である。
【図１２】図１２は、因子・観点ＤＢの一例を示す図である。
【図１３】図１３は、観点の分類結果の一例を示す図表である。
【図１４】図１４は、文の従属関係の設定方法を示すフローチャートである。
【図１５】図１５は、カテゴリ辞書の一例を示す図である。
【図１６】図１６は、名詞の語の置き換え方法を示すフローチャートである。
【図１７】図１７は、否定を表す語の一例を示す図表である。
【図１８】図１８は、否定・肯定ＤＢの一例を示す図である。
【図１９】図１９は、肯定形・否定形の語の置き換えにより、テストケースを追加する方法を説明する図である。
【図２０】図２０は、文末で用いられる肯定形と否定形の語の対応関係の一例を示す図である。
【図２１】図２１は、仕様書に記載された文と、肯定形・否定形の語の置き換えにより、当該文から生成されたテストケースの一例を示す図である。
【図２２】図２２は、肯定形・否定形の語の置き換え方法を示すフローチャートである。
【図２３】図２３は、対象を指定する語の一例を示す図である。
【図２４】図２４は、語の組合せの置き換えを行う文書の一例を示す図である。
【図２５】図２５は、共通の名詞または動詞を含む語の組合せの抽出結果の一例を示す図である。
【発明を実施するための形態】
【００２２】
図１は、本発明に係るテストケース作成システムの一実施形態を示す概略構成図である。このシステムは、制御部１０、記憶部（記憶手段）２０、出力部３０、入力部４０および通信部５０等を有する周知のコンピュータにより構成されている。
【００２３】
制御部１０は、記憶部２０の記憶領域に格納されている各種処理プログラム、入力部４０から入力される各種指示、あるいは指示に対応する各種データ等を記憶部２０に格納し、それら入力指示および各種データに応じて記憶部２０に格納した各種処理プログラムに従って各種処理を実行し、その処理結果を記憶部２０に一時的に記憶するとともに、出力部３０等に出力する。
【００２４】
この制御部１０は、図２および図３に示すように、仕様書等の文書の電子データから文字列のデータ（テキスト化した仕様書）を抽出して、記憶部２０に記憶する機能（データ抽出手段）と、前記文書に含まれる各文の形態素解析を行い、当該形態素解析により分解した語を、判別した品詞と関連付けて因子・観点ＤＢ（第１データベース）に格納する機能（形態素解析実行手段）と、因子・観点ＤＢから各語を取り出してそれら語およびそれら語からなる文節（後述）の整理を行うとともに、予め設定された品詞に関する条件（後述）を満たす語または語の組合せを取得し、取得した語または語の組合せを、それらが含まれる文内で、別の語または語の組合せに置き換えることにより、新たな文を生成し、それをテストケースとしてテストケース生成ＤＢ（第２データベース）に格納する機能（テストケース生成手段）と、テストケース生成ＤＢからテストケースを取得して出力する機能（出力手段）とを備える。これら機能は、記憶部２０内に格納された各種処理プログラムを制御部１０が読み込んで実行することにより、実現されるものである。
【００２５】
記憶部２０は、プログラムやデータ等が記憶される記憶媒体を有し、この記憶媒体は磁気的、光学的記録媒体、若しくは半導体メモリで構成されている。この記憶媒体は記憶部２０に固定的に設けたもの、若しくは着脱自在に装着するものであり、制御部１０により実行される各種処理プログラム（本発明に係るテストケース作成用のプログラムを含む。）やその処理に係るデータ等を記憶する記憶領域を備える他、因子・観点ＤＢやテストケース生成ＤＢ等の各種データベースや、カテゴリ辞書等の各種辞書を格納する記憶領域も備えている。
【００２６】
因子・観点ＤＢは、後述するように、形態素解析により得られた語を、その品詞の種類や、該当する因子、その語が含まれる観点や文節、あるいは位置（文の行番号、文内の語の位置など）などの情報と関連付けて格納するデータベースであり、一方、テストケース生成ＤＢは、後述する各処理で生成されたテストケースを逐次格納していくデータベースである。
【００２７】
出力部３０は、ＣＲＴ（Cathode Ray Tube）やＬＣＤ（Liquid Crystal Display）等により構成され、制御部１０から入力される表示データに基づいて各種画面を表示する。
入力部４０は、マウス等のポインティングデバイスやキーボード等により構成され、入力指示信号を制御部１０に対して出力する。
通信部５０は、モデムやルータ、ブリッジ等により構成され、ネットワークを介して他のコンピュータ等より受信したデータを制御部１０に出力するとともに、制御部１０より受信したデータをネットワークを介して他のコンピュータ等に対して出力する通信制御を行う。
【００２８】
次に、上記テストケース作成システムによって実行されるテストケース作成処理について説明する。このテストケース作成処理は、図３に示すように、テキスト化ステップ、形態素解析実行ステップ、文節分類ステップ、観点生成ステップ、テストケース生成ステップ（原文から抽出・語の置き換え・語の組合せの置き換え）および出力ステップからなり、各々の処理が、テストケース作成システムの記憶部２０に格納されたプログラムに従って順次行われるようになっている。
【００２９】
１．テキスト化ステップ
このステップでは、制御部１０が、先ず、製品の仕様が記載された文書（例えば、要件定義書、概念設計書、機能仕様書または取扱説明書など）の電子データ（例えば、図４に示すような電子データ）を記憶部２０から読み込んで、当該電子データから文字列以外の情報を除いた後、一行ごとに文書を整理する処理を行う。例えば、句点がある場合には、句点までを一行の文とみなし、句点がない場合には、改行コードを句点とみなす。また、箇条書きの場合には、それぞれの箇条書き文を一行の文とみなす。ただし、１の箇条書き文に複数の句点がある場合は、それぞれの句点までを一行の文とする。以上により、文書を一行ごとにテキストとすることができる。以降の処理では、一行を一文として扱い、文の記載順序を行番号で示すこととする。この文書を整理する処理が完了したら、制御部１０は、整理後の文字列のデータ（例えば、図５に示すような文字列のデータ）を記憶部２０に記憶する処理を行う。
【００３０】
２．形態素解析実行ステップ
このステップでは、制御部１０が、文字列のデータを読み込んで、文書に含まれる各文の形態素解析を行うとともに、その結果得られた語を、判別した品詞と関連付けて因子・観点ＤＢに格納する処理を行う。
【００３１】
形態素解析の手法としては周知の様々な手法を利用することができる。本実施形態では、その品詞体系としてＩＰＡ品詞体系を用いているが、これ以外の品詞体系を用いることも可能である。例えば、例文１「受信側のｉモード端末によっては、メール本文に閲覧用のＵＲＬが記載されます。」に対して形態素解析を行うと、図６に示すように、当該文が１７の語に分解されて、その各々に品詞が付与される。ＩＰＡ品詞体系では、名詞のなかにも、「名詞−複合語」、「名詞−一般」、「名詞−サ変接続」および「名詞−非自立−一般」など、多数の名詞の種類が存在するため、本明細書において、単に「名詞」と表したときは、「名詞−複合語」、「名詞−一般」、「名詞−サ変接続」および「名詞−非自立−一般」などを含むものとする。また、「名詞−複合語」は、「名詞−一般」、「名詞−サ変接続」が連続した語を結合させたものを示す。「動詞」や「助詞」など、その他の品詞についても同様である。
【００３２】
こうして分解された各語は、それぞれの品詞の種類と、位置に関する情報（文の行番号、文内の語の位置）とに関連付けられた状態で因子・観点ＤＢに格納される。
【００３３】
３．文節分類ステップ
このステップでは、制御部１０が、形態素解析により判別した品詞の位置に基づいて、各文を文節に区分し、その情報（記載箇所情報）を、それぞれの語と関連付けて因子・観点ＤＢに格納する処理を行う。
【００３４】
具体的には、先ず、文書に含まれる各文を、以下の条件に従って、３種類の文節、すなわち、システムへ入力する際の機能群を含む「主語文節」と、出力の結果内容を含む「述語文節」と、入出力の際に起こり得る内容を含む「条件文節」とに区分する。文節の決定は様々な要因に基づいて行うが、その一例を次に示す。
【００３５】
「主語文節」
文末から文頭へ品詞を調べ、最初に検出した「助詞」である“が”または“は”を含む観点（後述）を主語文節とする。なお、品詞名については、例えば、「助詞−係助詞」、「助詞−格助詞−一般」というように、使用する品詞体系等によっても分類が異なるため、本実施形態では「助詞」の分類で判別する。
【００３６】
「述語文節」
文末から検索して最初に出現する「名詞−サ変接続」または「動詞−自立」から文末までの文節を述語文節として判別する。
【００３７】
「条件文節」
上記のように、主語文節と述語文節を確定した後、それら文節を除く文字列を全て条件文節として判別する。この条件文節は主語文節と述語文節に対して条件を示す文字列となる。ここでは、一般的な日本語の構文で示される修飾語や補語、目的語等での分類は行わず、一文内に含まれる語が「主語文節」「条件文節」「述語文節」の何れかに含まれるようにする。
【００３８】
次いで、上記のようにして区分した「条件文節」を、以下に示すように、「主条件文節」と「副条件文節」にさらに分類する。
例えば、図７（ａ）に示すように、「述語文節」の前に「条件文節」があり、且つ「名詞−副詞可能」または「名詞−非自立−副詞可能」を含む場合、「述語文節」の直前に位置する下記「副条件文節」を含まない文節を「主条件文節」とする。そして、「名詞−副詞可能」または「名詞−非自立−副詞可能」の語から文頭方向の文字列で「主語文節」および「述語文節」を除く文頭までの範囲を「副条件文節」とする。
また、図７（ｂ）に示すように、「名詞−副詞可能」または「名詞−非自立−副詞可能」の有無に関わらず、「主語文節」の前と「述語文節」の前に「条件文節」がある場合、「述語文節」の直前に位置する「条件文節」を「主条件文節」とし、「主語文節」の前を「副条件文節」とする。
また、図７（ｃ）および図７（ｄ）に示すように、「名詞−副詞可能」または「名詞−非自立−副詞可能」を含まない文で、「述語文節」の前または「主語文節」の前のいずれかに「条件文節」がある場合、これを「主条件文節」とする。この場合、「副条件文節」を含まない文となる。
【００３９】
「条件文節」の分類が完了したら、図８（ａ）および図８（ｂ）に示すように、「主語文節」と「述語文節」とを結合して「主規定文」を生成する。
そして、以上の文節の整理が完了したら、文中の各語が、「主規定文」、「主条件文節」または「副条件文節」の何れの文節に属するのかを相互に関連付けて因子・観点ＤＢに格納する。この情報は、後述する語の抽出や辞書への登録の際に、その語が使われている文節を示す記載箇所情報として利用することができる。また、この記載箇所情報を保持することにより、後述する語の組合せの置き換えの処理の際に、置き換えの対象となる文字列が文の中でどの文節に含まれているのかを容易に判断することができる。
【００４０】
例えば、図９に示す例文１「受信側のｉモード端末によっては、メール本文に閲覧用のＵＲＬが記載されます。」を文節に分解すると、“ＵＲＬが記載されます。”が主規定文、“メール本文に閲覧用の”が主条件文節、“受信側のｉモード端末によっては、”が副条件文節となる。
また、例文３「受信側のｉモード端末がＦｌａｓｈ画像の挿入されたデコメールに非対応の場合は、メール本文に閲覧用のＵＲＬが記載されます。」を文節に分解すると、“ＵＲＬが記載されます。”が主規定文、“メール本文に閲覧用の”が主条件文節、“受信側のｉモード端末が”が副条件文節の主語、“Ｆｌａｓｈ画像の挿入されたデコメールに非対応の場合は、”が副条件文節となる。
【００４１】
４．観点生成ステップ
このステップでは、制御部１０が、形態素解析により判別された品詞とその文中における位置とに基づいて、因子・観点ＤＢに格納されたそれぞれの語をそれぞれの因子に分類した後、一文内で連続する同一の因子を組み合わせて、機能観点、条件観点、操作観点、実行観点または結果観点を生成して、それら観点を、それぞれの語と関連付けて因子・観点ＤＢに格納する処理を行う。
【００４２】
因子とは、機能や操作等のテストケースの基となるもので、本実施形態では５種類を定め、それぞれを機能因子、条件因子、操作因子、実行因子、結果因子と呼ぶ。また、因子とは別に「名詞−副詞可能」または「名詞−非自立−副詞可能」の語を条件文節語と定める。例えば、“〜する場合”の“場合”が条件文節語となる。因子の分類に際しては、一旦分類した因子が別の因子に変わる場合があるため、本実施形態では、「機能因子」「操作因子」「結果因子」→「実行因子」→「条件因子」の順にその分類を行う。因子の決定は様々な要因に基づいて行うが、その一例を次に示す。
【００４３】
（１）機能因子
・文頭から最初の「助詞」の“が”または“は”より前の名詞（「名詞−複合語」、「名詞−一般」、「名詞−サ変接続」）を機能因子とする。
・名詞の間に「助詞−連体化」の品詞名がある場合、その全てを機能因子とする。
【００４４】
（２）条件因子
・未知語に数値が含まれるものを条件因子とする。
・条件文節語よりも文の先頭側に記載されている内容（機能因子、操作因子、実行因子、結果因子）を条件因子に変更する。ただし、文先頭から“が”または“は”までの語（機能因子）を除外し、条件文節語よりも前の語までを条件因子とする。
・条件因子の語の直後に「動詞−自立」がある場合、「動詞−自立」の語を含める。
・「名詞−非自立−副詞可能」「名詞−副詞可能」「助詞−格助詞−連語」の語より前に記載されている名詞、動詞および形容詞の語を条件因子とする。例えば、「副詞可能」としては、“場合”“中”“後”“とき”“際”などが挙げられる。
・数値（アラビア数字・漢数字）とその直後に記載されている語を条件因子とする。例えば、“１件”“５００ｂｙｔｅ”“二つ”“３本”などが、これに該当する。
・操作因子で記載されている「形容詞−自立」を除く形容詞の語は条件因子とする。
【００４５】
（３）操作因子
・「名詞−サ変接続」または「動詞−自立」の直前に記載されている「形容詞−自立」の語を操作因子とする。例えば、“早く”“速く”“遅く”などが、これに該当する。
・動作・作用を表わす言葉となる「副詞−助詞類接続」「副詞−一般」と関係のある語を操作因子とする。例えば、“ゆっくり”“すぐに”“すこし”“かなり”などが、これに該当する。
【００４６】
（４）実行因子
・上述したように、名詞の間に「助詞−連体化」の品詞名がある場合、その全てを機能因子としたが、それ以外の「名詞−サ変接続」を実行因子とする。
・文末の「名詞−サ変接続」の語を実行因子とする。例えば、“編集”“削除”“送信”“変換”“移動”“押下”などが、これに該当する。
・否定を示す“未”“非”等の「接頭詞−名詞接続」の語は隣接している後の語と同じ因子とする。
【００４７】
（５）結果因子（主規定文の述語となる文字列）
・文末から検索し最初に出現する助詞との間に位置する「名詞−サ変接続」または「動詞−自立」の語から文末までを結果因子とする。
・他の因子に分類されない範囲までの文末に「名詞−サ変接続」が無い場合、「動詞−自立」の語を結果因子とする。例えば、“する”“行う”“なる”などが、これに該当する。
【００４８】
上記の処理で何れの因子にも分類されない語については「分類の対象外」とする。ただし、上述したように、「名詞−副詞可能」または「名詞−非自立−副詞可能」は条件文節語とする。この因子分類により、“が”または“は”が一文内に複数ある場合には、主規定文（主語と述語）、主条件文節、副条件文節の各文節における主語も特定する。
【００４９】
具体的に、図９に示す例文１「受信側のｉモード端末によっては、メール本文に閲覧用のＵＲＬが記載されます。」、例文２「ただし、端末によっては、閲覧用のＵＲＬがないメールを受信することがあります。」、例文３「受信側のｉモード端末がＦｌａｓｈ画像の挿入されたデコメールに非対応の場合は、メール本文に閲覧用のＵＲＬが記載されます。」をそれぞれ因子に分類すると、図１０および図１１に示すようになる。このように分類された因子は、対応する語と関連付けて因子・観点ＤＢに格納される。
【００５０】
こうして因子への分類が完了したら、一文内で連続する同じ因子を結合させて、観点を生成する。同じ因子が連続しない場合には、因子が単独で観点となる。すなわち、１または複数の機能因子から機能観点が、１または複数の条件因子から条件観点が、１または複数の操作因子から操作観点が、１または複数の実行因子から実行観点が、１または複数の結果因子から結果観点が、それぞれ生成される。例えば、上述した例文１〜例文３を観点にまとめると、図１３に示すようになる。このように分類された観点は、例えば図１２に示すように、対応する語と関連付けて因子・観点ＤＢに格納される。この例では、文内で観点が出現する順序が観点番号として与えられ、各々の観点内で語が出現する順序が観点内番号として与えられている。この例によれば、各語が文内の何番目のどの観点に属し、その中で何番目に位置する語であるのかを、容易に把握することができる。
【００５１】
こうして得られた観点は、後述するテストケースの生成に用いることができるが、そのままテスト観点としても用いることができる。その際には、各観点を単独でテスト観点として用いるようにしても、あるいは、条件観点、機能観点、操作観点、実行観点、結果観点の順に、優先順位を付けて、それら観点を２以上組み合わせたものをテスト観点として用いるようにしてもよい。かようなテスト観点は、例えば、探索的テストにおいて使用することができる。
【００５２】
５．テストケース生成ステップ
テストケースの生成方法としては、仕様書等の文書に記載されている文を抽出して、それをそのままテストケースとして用いる方法（５．１：原文から抽出）と、抽出した文に含まれる語を別の語に置き換えて、新たな文を生成し、それをテストケースとして用いる方法（５．２：語の置き換え）と、抽出した文に含まれる語の組合せ（観点）を別の語の組合せに置き換えて、新たな文を生成し、それをテストケースとして用いる方法（５．３：語の組合せの置き換え）とがある。以下に、そのそれぞれについて説明する。
【００５３】
５．１  テストケース生成ステップ（原文から抽出）
このステップでは、制御部１０が、仕様書等の文書に記載されている文の中から、テストケースに該当する文を抽出して（またはテストケースに該当しない文を削除して）、抽出した文をテストケースとしてテストケース生成ＤＢに格納する処理を行う。テストケースとして抽出する際、句点を一文の末尾と判別し、一つのテストケースとして格納する。箇条書きの文については、そのまま一つの箇条書きの文を一つのテストケースとして格納する。
【００５４】
本実施形態では、以下の（１）〜（３）の何れかの条件を満たし、かつ（４）の条件を満たす文を、テストケースに該当しない文とみなして削除する。
【００５５】
（１）文末が名詞で終わっている文
例えば、“優先的な検索”という文がある場合、文末の“検索”が「名詞−サ変接続」となるため、この条件に該当する。なお、“優先的に検索する”という文の場合には、文末の“する”が「動詞−自立」となるため、この条件には該当しない。
（２）主語述語の関係が成り立っていない文
“が”や“は”などの「助詞−係助詞」を含まない文が、この条件に該当する。
（３）動詞が含まれていない文（結果因子を含まない文）
テスト対象となる製品の動作や利用者の操作には“する”“行う”“なる”等の動詞が含まれるはずであるので、これを含まない文はテスト対象から除外する。
（４）文末に句点“。”が付与されていない文
タイトルや項目名は、文末に句点“。”が記載されないため、この条件に該当する。
【００５６】
さらに、本実施形態では、因子・観点ＤＢに含まれる各文間の従属関係を調べ、その関係に基づいて、テスト対象とするか否かを判断する。すなわち、主となる文がテスト対象であれば従属する文もテスト対象とし、主となる文がテスト対象でない場合は従属する文もテスト対象から除外する。従属関係は、図１４のフローチャートに示すように決定する。
【００５７】
先ず、因子・観点ＤＢから文（語の組合せ）を取り出して（ステップＳ１０１）、文内の名詞を抽出し（ステップＳ１０２）、連続する文内で共に同一の名詞の語が含まれる場合には、意味の継続性があると判断して、前の文を「主」、後の文を「従」とする（ステップＳ１０３、ステップＳ１０４）。
上記条件に該当しなくても、“および”“あるいは”“かつ”“もし”“もしくは”“従って”“ただし”等の接続詞で始まる文は、直前の文に従属するものとする（ステップＳ１０５、ステップＳ１０６）。
同様に、“それ”“これ”等の「名詞−代名詞−一般」の語で始まる文、またはそれら語を含む文は、直前の文に従属するものとする（ステップＳ１０７、ステップＳ１０８）。
また、“以上から”や“以上で”などで始まる文は、当該文に含まれる名詞を抽出して（ステップＳ１０９、ステップＳ１１０）、それら名詞が使用されている文を、文書データの先頭から検索し（ステップＳ１１１）、該当する文が存在する場合には、その文を主として、当該文（“以上から”や“以上で”などで始まる文）を従とする（ステップＳ１１２）。
【００５８】
５．２  テストケース生成ステップ（語の置き換え）
このステップでは、制御部１０が、文に含まれる特定の語を他の語に置き換えることにより新たにテストケースを生成し、生成したテストケースをテストケース生成ＤＢに格納する処理を行う。語を置き換える方法としては、（１）名詞の語の置き換え、（２）肯定形・否定形の語の置き換え、（３）テスト対象の追加、の３種類の方法がある。
【００５９】
（１）名詞の語の置き換え
この方法では、名詞（名詞−複合語・名詞−一般・名詞−サ変接続等を含む）となる語をカテゴリ別に登録したカテゴリ辞書が用いられる。
この方法において、制御部１０は、因子・観点ＤＢから名詞となる語を抽出した後、当該語がカテゴリ辞書に存在するか否かを判定し、当該語がカテゴリ辞書に存在すると判定される場合に、当該語と同じカテゴリに属する別の語をカテゴリ辞書から取得して、当該語を、それが含まれる文内で、前記別の語に置き換えることにより、新たな文を生成し、それをテストケースとしてテストケース生成ＤＢに格納する処理を行う。
【００６０】
具体的に、カテゴリ辞書としては、例えば図１５に示すような辞書を用いることができる。この辞書には、「画像処理」というカテゴリに、“ＪＰＥＧ画像”“ＦＬＡＳＨ画像”“ＧＩＦ画像”などが登録されている。
例えば処理対象となる文が、前述した例文３「受信側のｉモード端末がＦｌａｓｈ画像の挿入されたデコメールに非対応の場合は、メール本文に閲覧用のＵＲＬが記載されます。」である場合には、図１６に示すように、“Ｆｌａｓｈ画像”など、すべての名詞を抽出し（ステップＳ２０１）、その各々がカテゴリ辞書に登録されているか否かを判定する（ステップＳ２０２）。そして、“Ｆｌａｓｈ画像”のように、カテゴリ辞書に登録されている場合には、同じカテゴリ（「画像処理」）に属する別の語（例えば、“ＪＰＥＧ画像”や“ＧＩＦ画像”など）を検索し（ステップＳ２０３）、文中の“Ｆｌａｓｈ画像”を同一カテゴリの別の語に置き換えることにより、新たな文を生成する（ステップＳ２０４）。その結果、例文３から、例えば、「受信側のｉモード端末がＧＩＦ画像の挿入されたデコメールに非対応の場合は、メール本文に閲覧用のＵＲＬが記載されます。」といった新たな文を得ることができる。
【００６１】
なお、カテゴリ辞書に登録される語は、テスト対象によって変わるものであり、例えば、テスト対象となるプログラムが明らかにＪＰＥＧ機能を有していない場合には、辞書から“ＪＰＥＧ画像”という語は除かれる。このカテゴリ辞書への語の登録は、利用者が行うものであっても、文から所定条件を満たす名詞を抽出してそれを辞書に自動登録するものであってもよい。例えば、同じ品詞の分類で絞り込み、その中で同じ語を含む文字列を検索することで、カテゴリ辞書への登録も自動的に行うことができる。図１５の例では、複合語の分類内でアルファベットを含み、画像で終わる語を検索することで、該当する語を因子・観点ＤＢから抽出して、カテゴリ辞書に自動登録することができる。開始語や終了語の類似、または文字列内に同じ語を含むことを条件とすることで、カテゴリ辞書を自動生成することができる。元となる文書に記載されていない語については、利用者が適宜に登録を行うようにしてもよい。
【００６２】
（２）肯定形・否定形の語の置き換え
この方法では、制御部１０が、因子・観点ＤＢから、否定を表す語をその品詞に基づいて抽出した後、当該否定を表す語を、それが含まれる文内で、肯定を表す語に置換することにより、新たな文を生成し、それをテストケースとしてテストケース生成ＤＢに格納する処理を行う。
【００６３】
否定を表す語としては、例えば、図１７に示すように、「助詞−格助詞」“が”に続く「形容詞−自立」“ない”や、「名詞−サ変接続」の直前にある「接頭詞−名詞接続」“非”などが挙げられる。
【００６４】
このような否定を表す語を、肯定を表す語に変換して新たな文を生成したら、図１９に示すように、文全体を、否定形であれば肯定形に、肯定形であれば否定形に変換することで、新たな文をさらに生成する。具体的には、例えば図１８に示すような辞書を予め用意しておき、否定・肯定の変換の際に、文末の語を因子・観点ＤＢで検索して、その語と反対の語（否定であれば肯定、肯定であれば否定：図２０参照）を辞書から取得し、文末の語と置き換えることにより、文全体を、肯定形から否定形に、あるいは否定形から肯定形に変換することができる。
【００６５】
例えば、前述した例文３「受信側のｉモード端末がＦｌａｓｈ画像の挿入されたデコメールに非対応の場合は、メール本文に閲覧用のＵＲＬが記載されます。」を取り出した場合（図２１の番号１）には（ステップＳ３０１）、図２２に示すように、文内の否定を表す語として、“非対応”を抽出し（ステップＳ３０２）、これを肯定形（この場合は“対応”）に変換して新たな文（この場合は、図２１の番号３の「受信側のｉモード端末がＦｌａｓｈ画像の挿入されたデコメールに対応の場合は、メール本文に閲覧用のＵＲＬが記載されます。」）を生成するとともに（ステップＳ３０３）、この生成した文と原文の文全体の肯定・否定を逆転させることにより、新たな文（この場合は、図２１の番号２の「受信側のｉモード端末がＦｌａｓｈ画像の挿入されたデコメールに非対応の場合は、メール本文に閲覧用のＵＲＬが記載されません。」および図２１の番号４の「受信側のｉモード端末がＦｌａｓｈ画像の挿入されたデコメールに対応の場合は、メール本文に閲覧用のＵＲＬが記載されません。」）をさらに生成し（ステップＳ３０４）、原文（図２１の番号１）を「主」、生成した文（図２１の番号２〜４）を「従」としてそれぞれテストケース生成ＤＢに格納する。
【００６６】
（３）テスト対象の追加
この方法では、制御部１０が、因子・観点ＤＢから、対象を指定する語をその品詞に基づいて抽出した後、当該語を含む文の対象を、その他の対象に置き換えることにより、新たな文を生成し、それをテストケースとしてテストケース生成ＤＢに格納する処理を行う。例えば、前述した例文１の中の“受信側のｉモード端末によっては”という記述は「他の端末」の存在を示しているため、この例文１から、他の端末をテストするテストケースを派生させることができる。
【００６７】
具体的に、対象を指定する語としては、「助詞−格助詞−連語」を挙げることができ、この語を含む文の対象を、図２３に示すように、その他の対象に置き換えることができる。すなわち、“によって”“において”“について”“にあたって”“に関して”などの「助詞−格助詞−連語」を含み、その直後に「助詞−係助詞」の“も”がある場合には、この“も”を削除して、文頭に“他の”という語を付加することにより、新たな文を生成する。一方、「助詞−格助詞−連語」の直後に「助詞−係助詞」の“は”がある場合には、この“は”を削除するとともに、文頭に“他の”という語を付加して、文全体を、否定形であれば肯定形に、肯定形であれば否定形に変換することにより、新たな文を生成する。例えば、前述した例文１からは、「他の受信側のｉモード端末によって、メール本文に閲覧用のＵＲＬが記載されない。」といった文をテストケースとして新たに生成することができる。
【００６８】
５．３  テストケース生成ステップ（語の組合せの置き換え）
このステップでは、制御部１０が、因子・観点ＤＢから、同一種類の観点として分類された語の組合せを取り出して、その中から、それぞれの品詞構成に着目して所定条件を満たす語の組合せを抽出した後、それら語の組合せが含まれる文間で、それら語の組合せを相互に置換することにより、新たな文を生成し、それをテストケースとしてテストケース生成ＤＢに格納する処理を行う。この処理では、同じ因子が連続していない単独の因子としての観点を置き換えの対象とせずに、連続する同じ因子を結合させた観点を対象とする。
【００６９】
具体的には、先ず、前述した観点生成ステップで生成した観点の中から何れか（例えば、機能観点）を選択し、その観点に該当する語の組合せを因子・観点ＤＢから取り出して、その中から、共通の名詞または動詞を含む語の組合せを抽出して記憶部２０に記憶する処理を行う。その抽出の対象となる範囲は、仕様書等の文書全体であっても、あるいはその中の特定の章項節であってもよい。名詞または動詞を含む語の組合せとしては、例えば、機能観点からは、名詞（名詞１）から開始して、途中に名詞または動詞以外の品詞を含み、名詞（名詞２）で終わる語の組合せや、結果観点からは、名詞（名詞３）から開始して、途中に名詞または動詞以外の品詞を含み、動詞（動詞１）で終わる語の組合せなどがあるが、前者の場合には、名詞１と名詞２の何れか一方が同一となる語の組合せを、後者の場合には、名詞３と動詞１の何れか一方が同一となる語の組合せを、それぞれ共通の名詞または動詞を含む語の組合せとして抽出する。また、ここでは、例えば、語の組合せ“引用する返信”や“引用しない転送”の中の語“する”や“し”のように、活用形の異なる動詞も、同一の動詞であるとみなして、抽出の対象とする。連続する同じ因子を結合させた各観点において、その開始の語の品詞と末尾の語の品詞に対して上記と同様に処理する。
【００７０】
例えば、図２４に示すような文書からは、図２５に示すような共通の名詞または動詞を含む語の組合せ（観点）が抽出される。この例では、“役割”という名詞で始まる語の組合せとして、“役割の一覧”“役割の承継”“役割の指定”“役割の詳細”“役割の設定”“役割の設定画面”などが抽出されている。それら語の組合せは、別の文内に存在する場合（例えば、“役割の一覧”が１行目の文内に、“役割の承継”が２行目の文内にそれぞれ存在する場合など）だけでなく、一文内の別の文節に存在する場合（例えば、“役割の一覧”と“役割の承継”の一方がある文の主規定文内に、他方が同じ文の主条件文節内に存在する場合など）や、一文内の同じ文節に存在する場合（例えば、“役割の一覧”と“役割の承継”の両方がある文の主条件文節内に存在する場合など）もある。
【００７１】
こうして共通の名詞または動詞を含む語の組合せを抽出したら、それら語の組合せが含まれる文間で、それら語の組合せを相互に置換することにより、新たな文を生成する。例えば、文書中に「・・・役割の一覧を・・・更新日時を削除・・・。」という文が存在して、その中の“役割の一覧”と共通の名詞または動詞を含む語の組合せとして、“役割の承継”が抽出される場合には、その文の“役割の一覧”を“役割の承継”に置換することにより、「・・・役割の承継を・・・更新日時を削除・・・。」という新たな文を生成することができる。かかる処理は、すべての文節（主規定文、主条件文節および副条件文節）と、すべての観点（機能観点、条件観点、操作観点、実行観点および結果観点）について行う。また、こうして生成した新たな文からは、前述した肯定形・否定形の語の置き換えを行うことにより、新たな文をさらに生成することもできる。生成した文は、同様に、テストケースとしてテストケース生成ＤＢに格納する。
【００７２】
６．出力ステップ
このステップでは、制御部１０が、上記テストケース生成ステップで生成したテストケース（文）をテストケース生成ＤＢから抽出し、それらテストケースを一覧にして、それらテストケースの各々に、「テスト実施日」「テスト実施者名」等の項目を追加するとともに、テストケースの文の最後に、“この動作を確認する。”等の文を挿入して、それがテストケースであることを利用者に分かるようにして出力する。その出力形態は、表示装置に画像として出力するものであっても、紙媒体等に印刷して出力するものであってもよい。
【００７３】
以上のように、本実施形態によれば、制御部１０が、仕様書等の文書の文字列のデータを用いて形態素解析を行うとともに、当該形態素解析の結果に基づいて、予め設定された品詞に関する条件を満たす語または語の組合せを取得し、取得した語または語の組合せを、それらが含まれる文内で、別の語または語の組合せに置き換えることにより、新たな文を生成し、それをテストケースとして出力部３０より出力するようにしたので、テストケースの作成に要する時間および労力を大幅に縮減することができるとともに、テストケースの選定に偏りが生じることを防止することができ、その結果、より網羅的で効率的なテストを実現することが可能となる。
【符号の説明】
【００７４】
１０  制御部
２０  記憶部
３０  出力部
４０  入力部
５０  通信部
【図１】
2011227695.tif 000003
【図２】
2011227695.tif 000004
【図３】
2011227695.tif 000005
【図４】
2011227695.tif 000006
【図５】
2011227695.tif 000007
【図６】
2011227695.tif 000008
【図７】
2011227695.tif 000009
【図８】
2011227695.tif 000010
【図９】
2011227695.tif 000011
【図１０】
2011227695.tif 000012
【図１１】
2011227695.tif 000013
【図１２】
2011227695.tif 000014
【図１３】
2011227695.tif 000015
【図１４】
2011227695.tif 000016
【図１５】
2011227695.tif 000017
【図１６】
2011227695.tif 000018
【図１７】
2011227695.tif 000019
【図１８】
2011227695.tif 000020
【図１９】
2011227695.tif 000021
【図２０】
2011227695.tif 000022
【図２１】
2011227695.tif 000023
【図２２】
2011227695.tif 000024
【図２３】
2011227695.tif 000025
【図２４】
2011227695.tif 000026
【図２５】
2011227695.tif 000027