ソフトウェアテストの因子及び水準が入力される入力部と、前記入力された因子及び水準を記憶する因子水準記憶部と、前記記憶された因子及び水準によって因子網羅テストのテストケースを生成する網羅テストケース生成部と、前記生成された因子網羅テストのリストを生成するリスト生成部と、前記生成されたテストのリストを出力する出力部を有するソフトウェアテストケース生成装置であって、前記生成されたテストケースを記憶する記憶部と、前記生成されたテストケースに従ったソフトウェアテストの実行履歴を記憶するテスト実行履歴記憶部と、重点的にテストを実行すべき因子及び水準の要注意水準の判定条件を記憶する判断基準記憶部と、前記要注意水準の判定条件に従って、要注意の因子及び水準の組合せを判定する要注意水準組合せ分析部と、要注意水準と判定された因子及び水準の組合せである要注意水準組合せを記憶する要注意水準組合せ記憶部と、前記ソフトウェアテストの実行履歴及び前記要注意水準組合せに基づいて、効率的なテストケースを生成する効果的テストケース生成部と、を備えることを特徴とするソフトウェアテストケース生成装置。前記効果的テストケース生成部は、前記ソフトウェアテストの実行履歴及び前記要注意水準組合せに基づいて、欠陥検出効率が高いテストケースを生成する高欠陥検出効率テストケース生成部を有することを特徴とする請求項1に記載のソフトウェアテストケース生成装置。前記高欠陥検出効率テストケース生成部は、前記ソフトウェアテストの実行履歴を参照し、過去のテストで欠陥が発見されている因子及び水準の組み合わせの少なくとも一部を含むテストケースを生成することを特徴とする請求項2に記載のソフトウェアテストケース生成装置。前記効果的テストケース生成部は、前記ソフトウェアテストの実行履歴及び前記要注意水準組合せに基づいてソフトウェアテストの実行優先スコアを算出する優先スコア計算部と、前記算出された実行優先スコアに基づいてソフトウェアテストの実行順位を決定する優先順位付与部と、を有することを特徴とする請求項1から3のいずれか一つに記載のソフトウェアテストケース生成装置。前記優先スコア計算部は、テストケースに前記要注意水準組合せが含まれている数を示す要注意水準組合せ数、初めてテストされる要注意水準と要注意水準ではない通常の水準との組合せがテストケースに含まれる数を示す初出要注意水準-非要注意水準組合せ数、及び、初めてテストされる水準の組合せの数を示す初出水準組合せ数に基づいて、前記実行優先スコアを算出することを特徴とする請求項4に記載のソフトウェアテストケース生成装置。前述した特許文献1には、ソフトウェアの網羅テストを効率化するテストケース自動生成方法が記載されている。しかし、特許文献1に記載されたテストケース自動生成方法では、生成された各テストケースの重要度が分からない。このような、特許文献1に開示されたテストケース自動生成方法では、例えば、ソフトウェア開発プロジェクトにおいて、テストに掛けられる工数が限られており、生成された網羅テストを全件実行することができないことがある。この場合、実行されるテストケースが工数が許す範囲でランダムに選択され、ランダムテストと同等の欠陥検出効果しか得られない。また、特許文献2には、ソフトウェア回帰テストにおけるテストケースの優先度を決定する方法が記載されている。しかし、特許文献2に記載されたテストケースの優先度を決定する方法は、優先度が決定されるテストが過去に1回以上実行されている必要がある。このようなテストケースの優先度を決定する方法では、新たな対象にテストを実行する必要がある場合に、テストケースの優先度が決定できない。例えば、ソフトウェア開発プロジェクトにおいて、新たなソフトウェアを開発する場合や、既存のソフトウェアを改修する場合に、新規又は追加で開発した部分のソフトウェアについてテストをする必要があるが、この部分のソフトウェアに関するテストケース群はまだ実行されていないので、優先度を決定できない。本発明の課題は、新たにテストケースを生成する必要があるが、限られた数のテストケースしか実行できない場合において、欠陥検出効率を高めるためのテストケースを提供することである。前述した問題点を解決するために、本発明の一実施形態では、限られた数のテストケースしか実行できない場合において、欠陥検出効率を高めるためのテストケースを提供する。例えば、検査を重点的に実行した方が良い入力を重点的に検査するテストケース群や、それぞれに実行の優先度を付与したテストケースを提供する。また、本発明の一実施形態では、新たに構築したテストケースについても、テストの優先度を提供する。より具体的には、本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、ソフトウェアテストの因子及び水準が入力される入力部と、前記入力された因子及び水準を記憶する因子水準記憶部と、前記記憶された因子及び水準によって因子網羅テストのテストケースを生成する網羅テストケース生成部と、前記生成された因子網羅テストのリストを生成するリスト生成部と、前記生成されたテストのリストを出力する出力部を有するソフトウェアテストケース生成装置であって、前記生成されたテストケースを記憶する記憶部と、前記生成されたテストケースに従ったソフトウェアテストの実行履歴を記憶するテスト実行履歴記憶部と、重点的にテストを実行すべき因子及び水準の要注意水準の判定条件を記憶する判断基準記憶部と、前記要注意水準の判定条件に従って、要注意の因子及び水準の組合せを判定する要注意水準組合せ分析部と要注意水準と判定された因子及び水準の組合せである要注意水準組合せを記憶する要注意水準組合せ記憶部と、前記ソフトウェアテストの実行履歴及び前記要注意水準組合せに基づいて、効率的なテストケースを生成する効果的テストケース生成部と、を備える。本発明の一実施形態によれば、欠陥検出効率を高めるためのテストケースを提供することができる。以下、本発明の実施形態であるソフトウェアテストケース生成装置100の例について図面を用いて説明する。図1は、本実施形態におけるソフトウェアテストケース生成装置100の構成例を示すブロック図である。ソフトウェアテストケース生成装置100は、CPUCentralProcessingUnit101、メモリ102、外部記憶装置103、バス104、外部インターフェース105、入力装置106、出力装置107及び通信装置108を有する。CPU101、メモリ102及び外部インターフェース105は、バス104を介して相互に接続される。また、外部インターフェース105には、外部記憶装置103、入力装置106、出力装置107及び通信装置108が接続される。外部記憶装置103は、CPU101において実行される処理プログラムである、網羅テストケース生成プログラム110P、要注意水準組合せ分析プログラム120P、効果的テストケース生成プログラム130P及びテストチェックリスト生成プログラム140Pを保持する。また、外部記憶装置103は、因子水準記憶部150と、生成テストケース記憶部160と、テスト実行履歴記憶部170と、判断基準記憶部180と、要注意水準組合せ記憶部190とを含む。これらの各記憶部は、データが格納される記憶領域である。なお、本実施形態では、ソフトウェアテストケース生成装置100が、一つの計算機に実装された例について説明したが、端末及びサーバを含む計算機システムに実装されても、また、クラウドコンピューティングのような、複数の計算機資源によって構成される計算機システムに実装されてもよい。図2は、ソフトウェアテストケース生成装置100の機能構成の一例を示す図である。ソフトウェアテストケース生成装置100は、網羅テストケース生成プログラム110P、要注意水準組合せ分析プログラム120P、効果的テストケース生成プログラム130P及びテストチェックリスト生成プログラム140Pが、それぞれCPU101で実行されて、メモリ102上に展開された、網羅テストケース生成部110、要注意水準組合せ分析部120、効果的テストケース生成部130及びテストチェックリスト生成部140を有する。効果的テストケース生成部130は、高欠陥検出効率テストケース生成部1300、優先スコア計算部1301及び優先順位付与部1302を含む図13参照。因子水準記憶部150は、ソフトウェアをテストするための因子及び水準を記憶する。因子とはソフトウェアのテスト対象となるパラメータ及び要素の種類であり、水準とは、その因子に入力が許される値又は値の代表値である。本実施形態では、因子水準情報は、テスト対象因子名701及び水準名702を含む図3参照。これらの因子水準情報は、入力装置106及び通信装置108を介して入力され、因子水準記憶部150へ格納される。図3は、テスト対象例600及び因子水準の例700の説明図である。図3に示すテスト対象例600は、ソフトウェアテストケース生成装置100の出力装置107に表示されるGUIGraphicalUserInterfaceである。テスト対象例600は、利用者から氏名601、電話番号602、生年月日603及び住所604の各情報の入力を待ち受ける画面である。因子水準の例700は、上記テスト対象例600のうち、氏名601の情報に関する因子及び水準を記述したものである。因子水準の例700は、因子名700氏名と、因子が持つ水準702正値、空値、半角、長文、無空白が入力されている。図4は、因子水準記憶部150へ書き込まれたテスト対象例600のへの因子水準データ710の一例の説明図である。レコード713の因子名711及び水準712は、図3における氏名情報601に対する因子名700及び水準702に対応付けられる。レコード714、レコード715及びレコード716は、それぞれ、図3の電話番号情報602、生年月日情報603及び住所情報604に対する因子水準の例である。以下、本実施形態では、図4に示した例を用いて説明する。図2に戻り、生成テストケース記憶部160について説明する。生成テストケース記憶部160は、網羅テストケース生成部110乃至効果的テストケース生成部130が、因子水準記憶部150に格納されている因子水準データに基づいて生成したテストケースを記憶する。図5は、生成テストケース記憶部160の詳細な構成例の説明図である。生成テストケース記憶部160は、テストケース記憶部1600、優先スコア記憶部1601及び優先順位記憶部1602を有する。生成テストケース記憶部160のうち、優先スコア記憶部1601及び優先順位記憶部1602に格納されるデータの詳細は効果的テストケース生成部130の処理と共に後述する。以下では、網羅テストケース生成部110によって生成されたテストケースが格納されたテストケース記憶部1600について説明する。図6は、テストケース記憶部1600に格納された1因子網羅テストケース群800の一例の説明図である。テストケース記憶部1600は、テストケース識別子801及びテストケース802を含む。レコード803は、テストケース識別子1のテストケースは、因子氏名の水準が正値、因子電話番号の水準が正値、因子生年月日の水準が正値、因子住所の水準が正値となる値の組合せでテストを実行することを示している。1因子網羅とは、実行するテストケース群によって、テスト対象の各因子が持つ水準について、少なくとも1回テストが実行されるとことを意味する。テストケース群の例800では、各因子氏名、電話番号、生年月日、住所の各水準について1回はテストケースが割り当てあてられているため、1因子網羅である。図7は、テストケース記憶部1600に格納された2因子網羅テストケース群810の一例の説明図である。2因子網羅とは、実行するテストケース群により、テスト対象因子の2因子の組合せに含まれる2因子の各々が持つ水準について、少なくとも1回テストが実行されることを意味する。すなわち、テストケース群810より、どの2因子の組合せ氏名-電話番号、氏名-生年月日、氏名-住所、電話番号-生年月日、電話番号-住所、生年月日-住所を取り出したとしても、その2因子に含まれる水準の組合せが少なくとも1回現れる。例えば、氏名-電話番号の組合せであれば、氏名が持つ5水準正値、空値、半角、長文、無空白と電話番号が持つ5水準正値、空値、全角、桁小、桁大の組合せ25通りのそれぞれが、少なくとも1回テストされることである。同様に、n因子網羅テストとは、実行するテストケース群により、テスト対象因子のn因子の組合せnはテスト対象600に含まれる因子の数を超えない整数に含まれる、n因子の持つ水準の組合せについて、少なくとも1回テストが実行されることを意味する。網羅テストケース生成部110は、因子水準記憶部150及び因子網羅数に基づき、前述したn因子網羅テストを生成する。具体的な生成の手段については、特許文献1などに示された手法を用いることができる。図2に戻り、テスト実行履歴記憶部170について説明する。テスト実行履歴記憶部170は、テストチェックリスト生成部140が生成テストケース記憶部160のテストケース記憶部1600に格納されているテストケースに基づき生成したテストチェックリストに基づき、利用者がテストを実行したした結果を格納する。テスト実行結果は入力装置106及び通信装置108を介して入力され、テスト実行履歴記憶部170へ書き込まれる。テスト実行履歴は、テストケース識別子1701、テスト結果情報1703、テスト対策情報1704及び原因水準情報1705を含む図9参照。図8は、テスト実行結果610の一例の説明図である。図8に示すテスト実行結果610の例は、図6で示した1因子網羅テストケース群800に基づき、テストチェックリスト生成部140が生成したテストチェックリストに、利用者が書くテストケースについての実行結果を記録したものである。テストケースID611は、テストケース記憶部1600に格納されるテストケースと関連付けるための識別子である。テストケース612は、テストケース記憶部1600に格納されているテストケースを利用者が活用しやすいように記述したものである。テスト結果613は、テストケースを実行した結果、欠陥が検出されたか否かを示すものであり、本例において○は欠陥の検出なし、×は欠陥の検出ありを示す。欠陥への対策614は、テストケースによって抽出された欠陥に対する原因究明、修正等の対策が完了しているか否かを示す。原因水準615は、テストケースによって抽出されたテストケース内の、どの因子のどの水準によって、その欠陥が再現するかを示す。本例では、原因水準を容易に指定するために各水準No.616を割り当て、水準No.616をによって水準を指定する。原因水準615には、たとえばブラケット[]で複数の水準No.を纏めることにより、複数の水準の組合せによって欠陥が再現する場合を指定することができる。また、原因水準615には複数の水準及び水準の組合せを指定することができる。なお、本実施形態では、利用者の利便性とテストとの関連付けの誤謬をなくすため、テストチェックリスト生成部140が、入力すべきテストチェックリストを生成した。しかし、テストケース記憶部1600を参照して、テストチェックリスト生成部140によらずテストテックリストを作成して、テスト実行履歴記憶部170へ入力してもよい。図9は、テスト実行履歴記憶部170に格納されたテスト実行履歴1700の一例の説明図である。テストケース識別子1701は、テストケース記憶部1600に格納されたテストケースと関連付けるための情報である。テストケース情報1702はテストケースの具体的な内容である。図9に示す例では説明のため、具体的なテストケース情報1702をテスト実行履歴記憶部170に含めているが、テストケース識別子1701によりテストケース記憶部1600を参照するようにすれば、テストケース情報1702は含めなくてもよい。テスト結果情報1703はテスト結果613図8参照に対応付けられている。テスト対策情報1704、は欠陥への対策614図8参照に対応付けられている。原因水準情報1705は、原因水準615図8参照に対応付けられている。図2に戻り、要注意水準組合せ記憶部190について説明する。要注意水準組合せ記憶部190は、要注意水準組合せ分析部120がテスト実行履歴記憶部170及び判断基準記憶部180に基づき、因子網羅テストケース群ごとに生成する要注意水準組合せ表1900が格納される。図10は、要注意水準組合せ記憶部190に格納された1因子網羅テストに基づく要注意水準組合せ表1900の一例の説明図である。要注意水準組合せ表1900は、組合せ因子1901、組合せ水準1902、欠陥スコア1903及び要注意水準フラグ1904を含む。組合せ因子1901は、n因子網羅テストケースにおけるn因子の組合せを識別する。本例は1因子網羅テストを対象としているため、各因子が記述されている。組合せ水準1902は、組合せ因子1901においてとり得る水準の組合せを識別する。本例は1因子網羅テストを対象としているため、各因子の水準が記述されている。欠陥スコア1903は、組合せ水準1902によって検出された欠陥数をスコア化したものである。組合せ水準1902内の部分集合となる水準について欠陥数を算出し、組合せ因子数ごとに集計した結果である。図10に示す例では、1因子網羅テストを対象としているため、1因子の組合せ欠陥のスコアのみを示している。要注意水準1904は、要注意水準組合せと判定された水準を示すフラグである。図11は、要注意水準組合せ記憶部190に格納された2因子網羅テストに基づく要注意水準組合せ表1910の一例の説明図である。組合せ因子1901が2因子の組合せとなり、組合せ水準1902は2因子に含まれる水準の組合せとなる。また、欠陥スコア1903は、組合せ水準1902に示された2水準の組合せによる2因子欠陥1911から算出されるスコアと、組合せ水準1902を構成する各水準による1因子欠陥1912から算出されるスコアを有する。図2に戻り、判断基準記憶部180について説明する。判断基準記憶部180は、予め入力装置106及び通信装置108より入力された要注意水準の判断基準が記憶される。図12は、判断基準記憶部180に格納された要注意水準の判断基準データ1800の一例の説明図である。判断基準データ1800は、因子網羅度1801及び判定条件1802を含む。因子網羅度1801は、テスト実行履歴記憶部170に格納されているテスト実行履歴が対象とするテストケース群の因子網羅度である。判定条件1802は、後述する要注意水準組合せ分析部120が、要注意水準組合せ記憶部190の組合せ水準1902の欠陥スコア1903に基づき要注意水準と判定をするための条件式ならびに閾値である。例えば、レコード1803は、直前に実行し、結果を記録した網羅テストが1因子網羅テストであれば、要注意水準組合せ記憶部190の1因子欠陥スコアが1以上であるものを要注意水準と判定する、という判定基準を示す。図2に戻り、要注意水準組合せ分析部120について説明する。要注意水準組合せ分析部120は、現在対象としているn因子網羅テストの因子数nに基づき、要注意水準組合せ表を生成する。生成された要注意水準組合せ表は、要注意水準組合せ記憶部190に格納される。要注意水準組合せ分析部120は、テスト実行履歴記憶部170からテスト実行履歴1710を読み出し、要注意水準組合せ表の各水準組合せ1902に対する欠陥スコア1903を算出する。例えば、テスト実行履歴1700図9参照の原因水準1705において指定されている水準の組合せ因子氏名の水準空値、因子氏名の水準半角、因子生年月日の水準全角、因子生年月日の水準未来が登場した回数をカウントし、欠陥スコア1903にそれぞれ記録する。要注意水準組合せ分析部120は、判断基準記憶部180より判断基準1800を読み出し、判定条件1802に基づき要注意水準組合せを抽出し、要注意水準組合せ表1900の要注意水準組合せフラグ1904を設定する。例えば、実施形態として説明している1因子網羅テストでは、判断基準1800図12参照において、因子網羅度が1因子であるレコード1803が選ばれる。レコード1803によれば、判定条件は要注意水準組合せ表1900の1因子欠陥のスコアが1以上1因子欠陥≧1となっている。このため、判定条件は要注意水準組合せ表1900を走査し、条件を満たす4レコード組合せ因子氏名-組合せ水準空値、組合せ因子氏名-組合せ水準半角、組合せ因子生年月日-組合せ水準全角、組合せ因子生年月日-組合せ水準未来に対して要注意水準組合せフラグ1904を設定する。なお、本実施形態では、要注意水準組合せフラグ1904を設定する方法で要注意水準組合せを区別したが、要注意水準組合せのみを抽出したテーブルを作成することによって、要注意水準組合せを区別してもよい。要注意水準組合せ分析部120は、得られた要注意水準組合せ表1900を判断基準記憶部180に書き込む。図13は、効果的テストケース生成部130の詳細な機能ブロック図である。効果的テストケース生成部130は、高欠陥検出効率テストケース生成部1300、優先スコア計算部1301及び優先順位付与部1302を有する。高欠陥検出効率テストケース生成部1300は、要注意水準組合せ記憶部190より要注意水準組合せ表1900を読み出し、抽出された要注意水準組合せを新たな因子、水準として2因子網羅テストを構成し、高欠陥検出効率テストケースのひな型13000を作成する。なお、網羅テストケース生成部110が、2因子網羅テストを構成するとよい。要注意水準組合せが得られなかった因子の水準については、ドントケアを割り当て、なるべく多くの水準が含まれるようにする。図14は、高欠陥検出効率テストケース生成部1300によって構成された高欠陥検出効率テストケースのひな型13000の一例の説明図である。氏名13001及び生年月日13002には、要注意水準組合せ表1900図10参照において要注意水準組合せとされた因子氏名の2水準空値及び半角及び因子生年月日の2水準全角及び未来の2因子網羅組合せが記述される。また、電話番号13003及び住所13004については要注意水準組合せ表1900において要注意水準組合せを持たなかったため、ドントケアが割り当てられる。高欠陥検出効率テストケース生成部1300は、高欠陥検出効率テストケースのひな型13000の作成時に、テストケースにおいて水準の競合が起きる場合には、テストケース組合せを分割する。図15は、2因子網羅テストの履歴より抽出された要注意水準組合せによる競合ケースA1の例の説明図である。ケースA1は、2因子の組合せ氏名-電話番号と電話番号-生年月日から、それぞれ、要注意水準組合として空値-全角と桁小-未来を組合せた例である。ここで、この水準組合せを展開し、作成したテストケースひな形A1-1に着目すると、電話番号の因子において、全角と桁小という二つの異なる水準をテストするという実行不可能なテストケースが得られてしまう。このようなケースを競合ケースと呼ぶ。そこで、ケースA-2のように両立し得ない水準組合せからなるケースを、競合しない水準組合せに分割し、ドントケアを挿入する。このようにして分割したケースA2を個々の水準に展開することによって、競合のないテストケースひな形A2-1が得られる。高欠陥検出効率テストケース生成部1300は、テストケースひな形13000のドントケアが挿入されている因子群について、因子水準記憶部150より当該因子群水準を読み込み、網羅テストケース生成部110を用いて1因子水準網羅テストを生成し、ドントケア部分に展開する。これによって、全ての因子群に水準が挿入されたテストケース13010を得る。図16は、テストケースひな形13000に水準が展開されたテストケース群13010の一例の説明図である。レコード群13011は、テストケースひな形13000図14参照のレコード13005に、電話番号の住所の水準を挿入した結果である。例えば、高欠陥検出効率テストケース生成部1300は、テストケースひな形13000のうち、ドントケアが挿入されているレコード1305を選択する。次に、ドントケアが挿入されている因子それぞれ電話番号及び住所の水準を因子水準記憶部150の因子水準データ710より読み出す。読み出した因子について、網羅テストケース生成部110を用い、1因子網羅テストを生成する。その後、生成した一因子網羅テストの各組み合わせ5ケースをレコード1305のドントケア部分にそれぞれ挿入する。高欠陥検出効率テストケース生成部1300は、生成したテストケース13010について、テスト実行履歴記憶部170のテスト実行履歴1700を参照しながら、事前に実施した網羅テストによって安全性が確認されているテストケースを除去する。例えば、レコード13012は、テスト実行履歴1700のテストケース識別子1701の3で実行済みのテストであるため、削除される。例えば、高欠陥検出効率テストケース生成部1300は、各因子の水準因子氏名の水準半角、因子電話番号の水準全角、因子生年月日の水準全角、因子住所の水準半角をキーにテスト実行履歴1700を検索し、一致するレコードがあるか否かによって、生成されたテストケースが既に実行されたものかどうかを判定する。高欠陥検出効率テストケース生成部1300は、生成し、既存テストケースとの重複を取り除いた高欠陥検出効率テストケース群13020を生成テストケース記憶部160のテストケース記憶部1600に書き込む。図17は、高欠陥検出効率テストケース生成部1300により生成された高欠陥検出効率テストケース群13020の一例の説明図である。以上に述べた、高欠陥検出効率テストケース生成部1300によるテストケース生成により、組合せに弱く潜在的に欠陥を抱えている機能を検査する水準についてのテストを重点的に実行することが可能となる。また、検査の結果、修正されて安全と確認されたテストケースを排除することが可能となる。このため、テストによって欠陥が抽出される効率が向上する。図13に戻り、優先スコア計算部1301について説明する。優先スコア計算部1301は、要注意水準組合せ記憶部190の要注意水準組合せ表1900を参照し、生成テストケース記憶部160のテストケース記憶部1600に格納されているテストケースそれぞれについて、優先スコア16010を算出する。算出された優先スコア16010は、優先スコア記憶部1601に書き込まれる。図18は、優先スコア計算部1301によって算出された、テストケースの優先スコア16010の一例の説明図である。優先スコア16010は、1600に格納されている各テストケースについて算出される。例えば、本実施形態では、優先スコア16010として要注意水準組合せ数16011、初出要注意水準-非要注意水準組合せ数16012及び初出水準組合せ数16013により優先スコアを示す。以下、各々のスコアについて、1因子網羅テストが終了した状況における、レコード16014を例にして説明する。要注意水準組合せ数16011は、テストケースに含まれている水準に、要注意水準組合せ数が何件含まれているかを示すスコアである。優先スコア計算部1301は、要注意水準組合せ記憶部190より要注意水準組合せ表1900を読み出し、レコード16014に合致する水準組合せが何件存在するかカウントすることによって、優先スコアを算出する。レコード16014には氏名の空値と生年月日の全角が含まれるため、スコアは2となる。初出要注意水準-非要注意水準組合せ数16012は、テストケースに含まれている水準組合せの中に、初めてテストされる要注意水準と要注意水準に選ばれなかった通常の水準との組合せが何件存在するかを示すスコアである。本例では、1因子組合せが完了した状態であるため、2水準の組合せが対象となる。優先スコア計算部1301は、要注意水準組合せ記憶部190より要注意水準組合せ表1900を読み出し、テストケースに含まれる水準を、要注意水準及び非要注意水準に分類し、要注意水準及び非要注意水準の組合せを算出する。得られた要注意水準及び非要注意水準が、テスト実行履歴記憶部170のテスト実行履歴1700に含まれるか否かを検索し、初出となる要注意水準-非要注意水準組合せの数を算出する。レコード16014では氏名の空値及び電話番号の正値、氏名の空値及び住所の正値、生年月日の全角及び電話番号の正値、及び、生年月日の全角及び住所の正値が対象となり、スコアは4となる。初出水準組合せ数16013は、テストケースに含まれている水準組合せの中に、初めてテストされる水準の組合せが何件存在するかを示すスコアである。本例では、1因子組合せが完了した状態であるため、2水準の組合せが対象となる。優先スコア計算部1301は、テストケースに含まれる水準の各組み合わせについて、テスト実行履歴記憶部170のテスト実行履歴1700検索し、初出か否かを判定する。レコード16014では氏名の空値及び電話番号の正値、氏名の空値及び住所の正値、生年月日の全角及び電話番号の正値、生年月日の全角及び住所の正値、及び、電話番号の正値及び住所の正値が対象となり、スコアは5となる。なお、本実施例の優先スコアは一例であって、前述した優先スコアに限定する趣旨ではない。優先スコア計算部1301は、算出された優先スコア16010を生成テストケース記憶部160の優先スコア記憶部1601に書き込む。図13に戻り、優先順位付与部1302について説明する。優先順位付与部1302は、生成テストケース記憶部160の優先スコア記憶部1601に格納された優先スコア16010を読み出して、優先順位を算出し、算出された優先順位を生成テストケース記憶部160のテストケース記憶部1600に格納されたテストケース群に付与し、優先順位記憶部1602に保存する。図19は、優先順位付与部1302によって付与された、テストケースの優先順位16020の一例の説明図である。本実施形態では、優先スコア計算部1301により算出され、優先スコア記憶部1601に格納された要注意水準組合せ数16011、初出要注意水準-非要注意水準組合せ数16012及び初出水準組合せ数16013を用いて優先順位を算出する。例えば、各優先スコアの評価順を、要注意水準組合せ数16011>初出要注意水準-非要注意水準組合せ数16012>初出水準組合せ数16013とする。すなわち、テストケースの順位付けにおいて、要注意水準組合せ数16011の大小関係により順位付け、同順位となった場合に初出要注意水準-非要注意水準組合せ数16012の大小関係のより順位付け、さらに同順位となった場合に、初出水準組合せ数16013によって順位付付ける。なお、本実施例の優先順位付け方法は一例であって、前述した方法を限定する趣旨ではない。例えば、スコアの合計で順位を決定したり、各スコアの加重平均により順位を決定してもよい。優先順位付与部1302は、算出した優先順位16020を優先順位記憶部1602に書き込む。以上に述べたように、優先順位付与部1302による各テストケースの優先順位が算出されることによって、限られたテスト期間内にどのテストケースの欠陥検出効率が高いと推測され、優先的に取り組むべきなのかが明確化されるため、特にテスト立ち上がり時期の欠陥検出を効率化することができる。図2に戻り、テストチェックリスト生成部140について説明する。テストチェックリスト生成部140は、生成テストケース記憶部160のテストケース記憶部1600に格納されているテストケース群、及び優先順位記憶部1602に格納されている優先順位16020を読み出し、テストチェックリスト620を生成し、入力装置106及び通信装置108を介して出力する。図20は、テストチェックリスト生成部140により生成されるテストチェックリスト620の一例の説明図である。各テストケースに対して優先順位16020を付与しレコード621、優先順位16020に基づきテストケースをソーティングすることによって、優先度の高いテストケースから実施することができる。このテストチェックリスト620は、ユーザが視認可能な形式でも、計算機が実行可能な形式でもよい。次に、以上説明したような構成を有するソフトウェアテストケース生成装置100によって実行される処理の手順について説明する。図21は、ソフトウェアテストケース生成装置100を用いたソフトウェアテスト全体の手順を示すフローチャートである。また、図3は、テスト対象例600及び因子水準の例700の説明図であり、ソフトウェアテストケース生成装置100へ入力されるファイルの一例を示す。図8は、テスト実行結果610の一例であり、ソフトウェアテストケース生成装置100へ入力されるファイルの一例を示す。図20は、テストチェックリスト生成部140により生成されるテストチェックリスト620の一例であり、ソフトウェアテストケース生成装置100の出力ファイルの一例を示す。図3、図8、図20、図21を用いて、主にソフトウェアテストケース生成装置100への入力及び出力について説明する。ステップ501では、ソフトウェアのテストを目的として、開発者がテスト対象に対する因子及び各因子の持つ水準を作成し、ソフトウェアテストケース生成装置100に対して、入力装置106乃至通信装置108を介して入力する。図3に示すテスト対象画面600に含まれる入力データ項目601に対する因子水準の例として、因子水準入力情報700を示す。ここでは、入力情報700として、因子名701氏名及び因子に対する水準702正値、空値、半角、長文、無空白を作成する。なお、説明を省略するが、テスト対象画面600の他の入力データ項目電話番号602、生年月日603、住所604についても同様に因子名701と水準702が作成される。ステップ502では、前述した因子水準入力情報700を因子水準データ710として因子水準記憶部150に格納する。ステップ503では、網羅因子数iの初期値を1とし、上記因子水準データ710に基づき、ソフトウェアテストケース生成装置100がi因子網羅テストを生成し、生成されたテストを開発者が実行する。また、テスト実行結果610をソフトウェアテストケース生成装置100に入力する。ステップ503により生成されたテストケースが図8の612に示すテストケース612であり、開発者より入力されるテスト実行結果は、入力欄613~615である。ステップ503の詳細な処理については、図22を用いて後述する。ステップ504では、i1因子網羅テストの実行に必要な時間を推定し、残テスト期間において、i1因子網羅テストの実行を完了できるか否かを判定する。i1因子網羅テストの全てのテストケースを実行可能と判定されれば、網羅因子数iに1を加え、ステップ503へ戻り、i1因子網羅テストの全てのテストケースは実行不可能であると判定されれば、ステップ505に進む。なお、テスト計画時間をあらかじめ入力しておき、また、テスト実行履歴に各テストケースの実行にかかった時間を取得することによって、ステップ504の判定において、本判定をソフトウェアテストケース生成装置100で実行することができる。なお、i1因子網羅テストの実行を完了できるかは、利用者が判定してもよい。ステップ505では、ステップ503で入力されたテスト実行結果610に基づき、要注意水準組合せ表1900図10参照を生成し、重点的にテストが必要と考えられる要注意水準組合せを分析し、抽出する。ステップ505の詳細な処理については、図23を用いて後述する。ステップ506では、上記因子水準データ710、テスト実行結果610、及び要注意水準組合せ表1900に基づき、欠陥検出効率の高いテストケースである、高欠陥検出効率テストケース群13020図17参照を生成する。ステップ506の詳細な処理については、図24を用いて後述する。ステップ507では、上記、テスト実行結果610、要注意水準組合せ表1900に基づき、高欠陥検出効率テストケース群13020の各テストケースに対する優先順位16020図19参照を付与する。ステップ507の詳細な処理は、図25を用いて後述する。ステップ508では、優先順位16020が付与された高欠陥検出効率テストケース群13020に基づき、優先度順にテストケースを並べ替え、テストケースに優先順位を記述した効率的テストチェックリストを生成し、出力装置107及び通信装置108を介して出力する。ステップ508において生成し、出力されるテストケースが図20の効率的テストチェックリスト620である。レコード621の優先順位によりテストケースがソートされ、また各テストケースの優先順位を視認することができる。ステップ509では、効率的テストチェックリスト620を用い、利用者がテストを実行して欠陥を検出し、欠陥に対する対策を実施する。本実施形態のソフトウェアテストケース生成装置100を用いることにより、ソフトウェアテストにおいて、欠陥検出効率を高めるためのテストケースを提供することができる。次に、ステップ503の処理の詳細を説明する。図22は、i因子網羅テストの実行の詳細な手順を示すフローチャートである。まず、網羅テストケース生成部110が、利用者より入力され、格納された因子水準データ710を因子水準記憶部150より読み出すステップ5031。網羅テストケース生成部110は、ステップ5031で読み出した情報から、i因子網羅テストケース群を生成するステップ5032。網羅テストケース生成部110は、ステップ5032で生成したi因子網羅テストケース群を、生成テストケース記憶部160のテストケース記憶部1600に書き込む。ステップ5033。テストチェックリスト生成部140は、ステップ5033でテストケース記憶部1600に書き込まれたテストケース群に基づき、テストチェックリストを生成し、出力装置107及び通信装置108を介して出力するステップ5034。その後、ステップ5034で出力されたテストチェックリストに従いi因子網羅テストを実行し、実行結果をテストチェックリストに記入する。テストにより欠陥が抽出された場合は、どの水準又は水準の組合せにより欠陥が再現するかを分析し、欠陥を修正し、その結果をチェックリストに記入するステップ5035。その後、ステップ5035で作成されたテスト実行結果610が入力されるステップ5036。なお、ステップ5035及び5036の処理は利用者が行ってもよい。テスト実行履歴記憶部170は、利用者より入力されたテスト実行結果610をテスト実行履歴として記憶するステップ5037。次に、ステップ505の処理の詳細を説明する。図23は、要注意水準組合せの分析の詳細な手順を示すフローチャートである。まず、要注意水準組合せ分析部120は、因子水準記憶部150より因子水準データ710を読み出し、直前に実行されたi因子網羅テストに対応する、i因子の要注意水準組合せ表1900を生成するステップ5051。要注意水準組合せ分析部120は、テスト実行履歴記憶部170よりテスト実行履歴1700を読み出すステップ5052。要注意水準組合せ分析部120は、ステップ5052で読み出したテスト実行履歴1700に基づき、ステップ5051で生成した要注意水準組合せ表1900の各水準組合せに対して欠陥スコア1903を算出し、表1900に書き込むステップ5053。要注意水準組合せ分析部120は、判断基準記憶部180より、直前に実行されたi因子網羅テストの網羅因子度i因子をキーとして、判定条件1802を検索し、読み出すステップ5054。要注意水準組合せ分析部120は、ステップ5054で読みだした判定条件に基づき、ステップ5053で欠陥スコア1903を書き込んだ要注意水準組合せ表1900を走査し、要注意水準組合せと判定された水準組合せについて要注意水準フラグ1904を立て、要注意水準組合せを決定するステップ5055。要注意水準組合せ分析部120は、ステップ5055で要注意水準を決定した要注意水準組合せ表1900を要注意水準組合せ記憶部190に書き込むステップ5056。次に、ステップ506の処理の詳細を説明する。図24は、欠陥検出効率の高いテストケースの生成の詳細な手順を示すフローチャートである。まず、効果的テストケース生成部130の高欠陥検出効率テストケース生成部1300は、直前に実行されたi因子網羅テストに対応する、因子数iの要注意水準組合せ表1900を読み出すステップ5061。高欠陥検出効率テストケース生成部1300は、ステップ5061で読みだした要注意水準組合せ表1900より、要注意水準組合せが存在する因子組合せ、及び要注意水準組合せを取り出し、要注意水準組合せが存在する因子組合せを新たな因子、それに付随する要注意水準組合せ群を新たな水準と定義し、網羅テストケース生成部110を用いて要注意水準組合せを網羅するテストケースひな形13000を生成する。この時、要注意水準を持たない因子についてはドントケアを挿入するステップ5062。高欠陥検出効率テストケース生成部1300は、ステップ5062で生成したテストケースひな形13000について、水準組合せをテストケースに展開した際、水準値が競合してテスト実行不能となるテストケースひな形について、テストケースを分割し、競合を回避するステップ5063。高欠陥検出効率テストケース生成部1300は、ステップ5063までの処理で得られたテストケースひな形13000について、水準を展開する。また、ドントケアが含まれる因子については、1因子網羅テストケースを展開する。このようにして、テストケース群13010を生成するステップ5064。高欠陥検出効率テストケース生成部1300は、テスト実行履歴記憶部170のテスト実行履歴1700を参照し、ステップ5064で生成したテストケース群の中に、既に実行済みのテストケースがあるか否かを検査し、既に実行済みのテストケースがあれば、テストケース群から削除するステップ5065。高欠陥検出効率テストケース生成部1300は、ステップ5065までの処理で得られた高欠陥検出効率テストケース群13020を生成テストケース記憶部160のテストケース記憶部1600に書き込むステップ5066。次に、ステップ507の処理の詳細を説明する。図25は、テストケースに対する優先順位の付与の詳細な手順を示すフローチャートである。まず、効果的テストケース生成部130の優先スコア計算部1301は、生成テストケース記憶部160よりテストケース群を読み出すステップ5071。優先スコア計算部1301は、要注意水準組合せ記憶部190に格納されている要注意水準組合せ表1900、及びテスト実行履歴記憶部170に格納されているテスト実行履歴1700に基づき、ステップ5071で読み出したテストケース群の各テストケースの優先スコア16010を算出するステップ5072。優先スコア計算部1301は、ステップ5072で算出した優先スコア16010を生成テストケース記憶部160の優先スコア記憶部1601に書き込むステップ5073。次に、効果的テストケース生成部130の優先順位付与部1302は、優先スコア記憶部1601より、ステップ5073でテストケース毎に算出された優先スコア16010を読み出すステップ5074。なお、本実施形態では、優先スコア計算部1301と優先順位付与部1302とが、優先スコア記憶部1601を介して、優先スコア16010を授受したが、優先スコア計算部1301及び優先順位付与部1302が互いに連携して優先スコア16010を授受してもよい。優先順位付与部1302は、ステップ5074で読み出した優先スコアを評価し、各テストケースの優先順位16020を決定するステップ5075。優先順位付与部1302は、ステップ5075で決定した優先順位16020を生成テストケース記憶部160の優先順位記憶部1602に書き込むステップ5076。前述した実施形態は、本発明の説明のための例示であり、本発明の範囲を例示した実施形態に限定する趣旨ではない。例えば、前述した実施形態は本説明を分かり易く説明するために詳細に説明したものであり、必ずしも説明したすべての構成を備えるものに限定されない。また、前述の各構成、機能、処理部、処理手段などは、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、前述の各構成、機能などは、プロセッサがそれぞれの機能を実現するプログラムを実行することによってソフトウェアで実現してもよい。前述の機能を実現するプログラム、テーブル、ファイルなどの情報は、メモリや、ハードディスク、SSDSolidStateDrive等の記憶装置、または、ICカード、SDカード、DVD等の記憶媒体に格納することができ、これらの記憶媒体から計算機にロードされ、プロセッサによって実行される。また、制御線や情報線は説明上必要と考えられるもののみを示しており、製品上必要な制御線や情報線は示されているとは限らない。実際には、ほとんどすべての構成が相互に接続されていると考えてもよい。