(57)【要約】【課題】ソフトウェア要件の記述に対応したテスト仕様を自動作成し、テスト仕様書において記述の漏れを無くすテスト仕様書作成支援システム及び方法を提供する。【解決手段】要件見出し番号及び見出し名と、機能構文ＩＤ，品質構文ＩＤ，非正常系ＩＤとの関連付け処理を行う要件情報管理処理部５と、要件情報ファイル４に格納されている要件見出し番号及び見出し名と、機能構文ＩＤ，品質構文ＩＤ，非正常系ＩＤとを読込み、構文管理処理部６から、読込んだ機能構文ＩＤ，品質構文ＩＤ，非正常系ＩＤに対応して格納されている機能構文定義データ，品質構文定義データ，非正常系構文定義データを読込み、品質構文定義データ及び非正常系構文定義データの試験項目への展開が除外になっていないサブ構文要素名（状態）のテスト水準として成立する条件と不成立となる条件とに展開して、テスト水準ＩＤをつけサブ構文要素名（状態）と要件情報展開処理部８とを含んでいる。【選択図】図１
2008003767.tif 000002
【特許請求の範囲】
【請求項１】
要件見出しに対応した機能構文，品質構文，非正常系構文の項目からソフトウェアの要件情報を定義し記憶しておくソフトウェア要件情報記憶手段と、
記憶された前記ソフトウェア要件情報を展開して、機能，品質，非正常系の各項目が取りうるテスト水準として成立する条件と不成立となる条件の記述を生成するテスト水準生成手段と、
生成した前記テスト水準を組み合わせてテスト仕様書を作成するテスト仕様書作成手段と、を有することを特徴とするテスト仕様書作成支援システム。
【請求項２】
前記機能，品質，非正常系の各項目の下位に構文要素を有し、さらに前記構文要素の下位にサブ構文要素を有し、前記テスト水準生成手段は、前記テスト水準として前記サブ構文要素が成立する記述であるサブ構文要素成立を前記テスト水準として成立する条件の記述として生成し、また前記テスト水準として前記サブ構文要素が不成立となる語句を付加した記述であるサブ構文要素不成立を前記テスト水準として不成立となる条件の記述として生成することを特徴とする請求項１に記載のテスト仕様書作成支援システム。
【請求項３】
前記テスト仕様書作成手段は、前記テスト水準生成手段が生成する、前記テスト水準として成立する条件の記述の組合せと、前記テスト水準として成立する条件の記述と前記テスト水準として不成立となる条件の記述の組合せとを生成し、前記成立する条件の記述の組合せ以外に少なくとも一以上の前記不成立する条件の記述の組合せを含むテスト仕様書を自動作成することを特徴とする請求項１に記載のテスト仕様書作成支援システム。
【請求項４】
前記機能構文，品質構文，非正常系構文，テスト水準の項目の追加，修正を行ったときは、追加，修正の箇所とその履歴が分かるように構成管理する構成管理手段をさらに備えることを特徴とする請求項１ないし３のいずれかに記載のテスト仕様書作成支援システム。
【請求項５】
要件見出しに対応した機能構文，品質構文，非正常系構文の項目からソフトウェアの要件情報を定義し記憶する過程と、
記憶された前記ソフトウェアの要件情報を展開して、機能，品質，非正常系の各項目が取りうるテスト水準として成立する条件と不成立となる条件の記述を生成する過程と、
生成した前記テスト水準を組み合わせてテスト仕様書を作成する過程と、
を含むことを特徴とするテスト仕様書作成支援方法。
【請求項６】
前記機能構文，品質構文，非正常系構文，テスト水準の項目の追加，修正を行ったときは、追加，修正の箇所とその履歴が分かるように構成管理する過程をさらに含むことを特徴とする請求項５に記載のテスト仕様書作成支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、組み込みソフトウェアを含むソフトウェアの品質を確保する上において、ソフトウェアの要件の記述に対応して作成したテスト仕様書の記述漏れを無くすためのテスト仕様書作成支援システムおよび方法に関する。
【背景技術】
【０００２】
ソフトウェアの品質を確保する上においては、ソフトウェアの要件定義において漏れや曖昧さを無くすだけでは無く、定義した要件が確実に動作することを確認するためのテストを実施するためのテスト仕様書においても漏れを無くすことが必要である。
【０００３】
テスト仕様書の作成については、従来、特許文献１に提案されているように、作成したプログラムからリバースエンジニアリングツールを用いて作られたプログラム仕様書からテスト仕様書を作成している。
【０００４】
またテスト仕様書の作成については、従来、特許文献２に提案されているように、機能仕様書が得られた段階で、それから得られる機能仕様データを用いて、相反するフラグの同時セットや共有データに対する同時アクセスなどを原因とした機能競合を生じる組み合わせと状態を特定し、その状態における動作の分析結果からテスト仕様書を生成している。
【特許文献１】特開２００１−８４１３６号公報
【特許文献２】特開２００３−９９２８５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述した特許文献１に開示された従来技術では、プログラムからリバースエンジニアリングを用いてプログラム仕様書を作成し、プログラム仕様書からテスト仕様書を作成するため、プログラム仕様書とテスト仕様書の一貫性は保たれているが、そもそもソフトウェアの要件定義を行うソフトウェア開発開始時点ではプログラムは作成されていないので、プログラム仕様書やテスト仕様書の作成が出来ないという問題がある。
【０００６】
また上述した特許文献２に開示された従来技術では、ユーザが機能仕様データを用いて、相反するフラグの同時セットや共有データに対する同時アクセスなどを原因とした機能競合に関するテスト仕様書を作成するため、機能競合以外のテスト仕様書については漏れや誤解が生じ、適切なテスト項目が作成されない可能性があるという問題がある。またユーザが機能仕様データを用いて、から相反するフラグの同時セットや共有データに対する同時アクセスなどを原因とした機能競合に関するテスト仕様書の作成を行うため機能競合以外のテスト仕様書の作成についてはさらに作業時間がかかるという問題がある。
【０００７】
そこで本発明は、ソフトウェア要件の記述に対応したテスト仕様を自動作成し、テスト仕様書において記述の漏れを無くすテスト仕様書作成支援システム及び方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明のテスト仕様書作成支援システムは、要件見出しに対応した機能構文，品質構文，非正常系構文の項目からソフトウェアの要件情報を定義し記憶しておくソフトウェア要件情報記憶手段と、記憶された前記ソフトウェア要件情報を展開して、機能，品質，非正常系の各項目が取りうるテスト水準として成立する条件と不成立となる条件の記述を生成するテスト水準生成手段と、生成した前記テスト水準を組み合わせてテスト仕様書を作成するテスト仕様書作成手段と、を有することを特徴とする。
【０００９】
また本発明のテスト仕様書作成支援システムは、機能構文，品質構文，非正常系構文，テスト水準の項目の追加，修正を行ったときは、追加，修正の箇所とその履歴が分かるように構成管理する構成管理手段をさらに備えることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、ソフトウェア要件の記述に対応したテスト仕様書が自動作成され、ユーザがソフトウェア要件仕様書を理解してからテスト仕様書を作成するときの、項目の抜けを防止し、かつ作業時間の短縮をはかることができる。
【００１１】
また本発明によれば、要件定義やテスト仕様に追加，修正などの変更があった場合でも、その変更に対応したソフトウェア要件記述やテスト仕様書の構成管理が行われるため、修正箇所とその履歴が分かることから、作業効率を改善できるだけでなくソフトウェアの要件記述とテスト仕様書の整合性を保つことができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施の形態を、図面を参照しながら説明する。
図１は、本発明の実施形態に係るテスト仕様書作成支援システムの構成を示すブロック図である。
【００１３】
図１において機能構文定義ファイル１は、要件に対応した機能を記述する構文の構文定義を格納するファイルである。機能要件は、例えばユーズケース図や特性ダイアグラムなどで予めモデル化したものを参考にして記述する。
【００１４】
品質構文定義ファイル２は、要件に対応した品質属性の分類がされた品質要件を記述する構文の構文定義を格納するファイルである。品質属性は、例えばISO/IEC9126の品質特性で定義された分類であり予めモデル化したものを参考にして記述する。
【００１５】
非正常系構文定義ファイル３は、要件に対応した非正常系要件を記述する構文の構文定義を格納するファイルである。非正常系要件は、例えばFTA(Failure Tree Analysis:故障の木解析)，FMEA(Failure Mode and Effect Analysis:故障モード影響解析)，非正常マトリックスなどで予めモデル化したものを参考にして記述する。
【００１６】
要件情報ファイル４は、ユーザインターフェース処理部１０から要件情報管理処理部５に入力された要件データを格納するファイルである。
要件情報管理処理部５は、ユーザインターフェース処理部１０から入力された内容に応じて、要件見出し番号及び見出し名と、構文管理処理部６にて管理されている、機能構文ＩＤ，品質構文ＩＤ，非正常系ＩＤとの関連付け処理を行う。
【００１７】
構文管理処理部６は、ユーザインターフェース処理部１０から入力された内容に応じて、機能構文定義ファイル１や、品質構文定義ファイル２や、非正常系構文定義ファイル３に構文定義データを格納する処理を行う。
【００１８】
試験情報ファイル７は、要件情報展開処理部８でつけられたテスト水準ＩＤとサブ構文要素名（状態）の関連付けのデータを格納するファイルである。
要件情報展開処理部８は、要件情報管理処理部５から要件情報ファイル４に格納されている要件見出し番号及び見出し名と、機能構文ＩＤ，品質構文ＩＤ，非正常系ＩＤとを読込み、構文管理処理部６から、読込んだ機能構文ＩＤ，品質構文ＩＤ，非正常系ＩＤに対応して格納されている機能構文定義データ，品質構文定義データ，非正常系構文定義データを読込み、品質構文定義データの試験項目への展開が除外になっていないサブ構文要素名（状態）のテスト水準として成立する条件と不成立となる条件とに展開して、テスト水準ＩＤをつけサブ構文要素名（状態）と関連付ける処理を行う。また、非正常系構文定義データ試験項目への展開が除外になっていないサブ構文要素名（状態）のテスト水準として成立する条件と不成立となる条件に展開して、テスト水準ＩＤをつけサブ構文要素名（状態）と関連付ける処理を行う。さらに要件情報展開構文の作成処理を行う。テスト水準ＩＤは、要件情報ファイル４のどのサブ構文要素名（状態）に対応しているか分かる形式とする。
【００１９】
試験情報作成処理部９は、試験情報ファイル７に格納されているテスト水準ＩＤとサブ構文要素名（状態）の関連付けのデータから、ある要件見出し番号において、サブ構文要素名（状態）が全て成立する条件の組合せとなるテスト水準ＩＤの組合せと、サブ構文要素名（状態）に不成立となる条件が有る組合せとなるテスト水準ＩＤの組合せとを包含する試験情報を作成する。
【００２０】
ユーザインターフェース処理部１０は、クライアント１４からのデータに応じて、要件データを要件情報管理処理部５へ、構文定義データを構文管理処理部６へ入力し、またクライアント１４からの指令により、要件情報展開処理部８や試験情報作成処理部９の起動を行う。
【００２１】
ファイル構成管理処理部１１は、クライアント１４がユーザインターフェース処理部１０を通して行った、構文定義データ，要件データまたは試験データの入力作業，要件情報展開処理部８または試験情報作成処理部９の起動により、機能構文定義ファイル１，品質構文定義ファイル２，非正常系定義ファイル３，要件情報ファイル４，試験情報ファイル７の格納データが新規作成，修正，削除された場合に、それらの作業内容と版数と作業者と日付を記録する版数管理処理を行う。
【００２２】
サーバ１２は、プログラム（図示せず）を格納し上記各ファイルや各処理部に対する制御を行う。ネットワーク１３は、サーバ１２とクライアント１４とを連携する。クライアント１４は、ネットワーク１３経由でサーバ１２とつながれており、サーバ１２に対してデータの入力，処理の起動を行う。
【００２３】
図２は、本発明の実施形態に係る機能構文定義ファイル１のデータ構造を示す図およびその具体的なデータ構造例を示す図である。
図２に示すように機能構文定義ファイル１は、
機能構文ＩＤ２１と、構文タイトル２２と、ナビゲーション表示項目２３と、構文要素数２４と、機能項目２５と、構文要素名２６と、版数２７と、作業者２８と、日付２９とから構成されている。
【００２４】
機能構文ＩＤ２１は、機能構文のデータに対して一意に付けられたＩＤである。内容が変更された場合には、機能構文ＩＤ２１に版数を付加した形で表現する。
構文タイトル２２は、機能構文ＩＤ２１に付けた名称であり、構文要素数２４と、機能項目２５と、構文要素名２６とのセットと対応する。
【００２５】
ナビゲーション表示項目２３は、機能構文を画面に表示する際に機能構文形式の理解を容易にするための表示項目である。
構文要素数２４は、当該構文の構文要素名２６の数を格納する。
【００２６】
機能項目２５は、構文を適用する機能項目の名称を格納する。
構文要素名２６は、構文を構成する要素の名称を格納する。
版数２７は、機能構文定義ファイル１の版数を示し、内容が変更される毎に更新する。
作業者２８は、機能構文定義ファイル１の内容に対して作業を行ったクライアント１４の名前を格納する。
【００２７】
日付２９は、機能構文定義ファイル１の内容に対して作業を行った日付を格納する。
図３は、本発明の実施形態に係る品質構文定義ファイル２のデータ構造を示す図およびその具体的なデータ構造例を示す図である。
【００２８】
図３に示すように品質構文定義ファイル２は、
品質構文ＩＤ３１と、品質属性タイトル３２と、品質属性ＩＤ３３と、構文タイトル３４と、ナビゲーション表示項目３５と、構文要素数３６と、品質項目３７と、構文要素名（属性）３８と、サブ構文要素数３９と、サブ構文要素名（状態）４０と、版数４１と、作業者４２と、日付４３とから構成されている。
【００２９】
品質構文ＩＤ３１は、品質構文のデータに対して一意に付けられたＩＤである。内容が変更された場合には、品質構文ＩＤ３１に版数を付加した形で表現する。
品質属性タイトル３２は、品質属性ＩＤ３３に対応した名称を格納する。
【００３０】
品質属性ＩＤ３３は、ISO/IEC9126の品質特性の分類に対応した品質属性のＩＤを格納する。
構文タイトル３４は、品質構文ＩＤ３１につけた名称であり、構文要素数３６と、品質項目３７と、構文要素名（属性）３８とのセットと対応する。
【００３１】
ナビゲーション表示項目３５は、品質構文を画面に表示する際に品質構文形式の理解を容易にするための表示項目である。
構文要素数３６は、当該構文の構文要素名（属性）３８の数を格納する。
【００３２】
品質項目３７は、構文を適用する品質項目の名称を格納する。
構文要素名（属性）３８は、構文を構成する要素の名称を格納する。属性はサブ構文の有無を指定する。サブ構文要素数３９と、サブ構文要素名（状態）４０とのセットと対応する。
【００３３】
サブ構文要素数３９は、当該サブ構文のサブ構文要素名（状態）４０の数を格納する。
サブ構文要素名（状態）４０は、サブ構文を構成するサブ構文要素の名称と要件情報展開の有無を格納する。
【００３４】
版数４１は、品質構文定義ファイル２の版数を示し、内容が変更される毎に更新する。
作業者４２は、品質構文定義ファイル２の内容に対して作業を行ったクライアント１４の名前を格納する。
【００３５】
日付４３は、品質構文定義ファイル２の内容に対して作業を行った日付を格納する。
図４は、本発明の実施形態に係る非正常系構文定義ファイル３のデータ構造を示す図およびその具体的なデータ構造例を示す図である。
【００３６】
図４に示すように非正常系構文定義ファイル３は、
非正常系構文ＩＤ５１と、構文タイトル５２と、ナビゲーション表示項目５３と、構文要素数５４と、非正常系項目５５と、構文要素名（属性）５６と、サブ構文要素数５７と、サブ構文要素名（状態）５８と、版数５９と、作業者６０と、日付６１とから構成されている。
【００３７】
非正常系構文ＩＤ５１は、非正常系構文のデータに対して一意に付けられたＩＤである。内容が変更された場合には、非正常系構文ＩＤ５１に版数を付加した形で表現する。
構文タイトル５２は、非正常系構文ＩＤ５１につけた名称であり、構文要素数５４と、非正常系項目５５と、構文要素名（属性）５６とのセットと対応する。
【００３８】
ナビゲーション表示項目５３は、非正常系構文を画面に表示する際に非正常系構文形式の理解を容易にするための表示項目である。
構文要素数５４は、当該構文の構文要素名（属性）５６の数を格納する。
【００３９】
非正常系項目５５は、構文を適用する非正常系項目の名称を格納する。
構文要素名（属性）５６は、構文を構成する要素の名称を格納する。属性はサブ構文の有無を指定する。サブ構文要素数５７と、サブ構文要素名（状態）５８とのセットと対応する。
【００４０】
サブ構文要素数５７は、当該サブ構文のサブ構文要素名（状態）５８の数を格納する。
サブ構文要素名（状態）５８は、サブ構文を構成するサブ構文要素の名称と要件情報展開の有無を格納する。
【００４１】
版数５９は、非正常系構文定義ファイル３の版数を示し、内容が変更される毎に更新する。
作業者６０は、非正常系構文定義ファイル３の内容に対して作業を行ったクライアント１４の名前を格納する。
日付６１は、非正常系構文定義ファイル３の内容に対して作業を行った日付を格納する。
【００４２】
図５は、本発明の実施形態に係る要件情報ファイル４のデータ構造を示す図およびその具体的なデータ構造例を示す図である。
図５に示すように要件情報ファイル４は、
要件見出し番号７１と、見出し名７２と、機能構文ＩＤ７３と、品質構文ＩＤ７４と、非正常系構文ＩＤ７５と、版数７６と、作業者７７と、日付７８とから構成される。
【００４３】
要件見出し番号７１は、要求仕様書（図示せず）の見出しに相当する要件情報に対して一意に付けられた番号であり、機能構文ＩＤ７３と、品質構文ＩＤ７４と、非正常系構文ＩＤ７５とのセットと対応する。内容が変更された場合には、要件見出し番号７１に版数を付加した形で表現する。
【００４４】
見出し名７２は、見出し番号７１につけた名称で、要求仕様書（図示せず）における機能名称に相当する。機能構文ＩＤ７３と、品質構文ＩＤ７４と、非正常系構文ＩＤ７５は、それぞれ機能構文定義ファイル１と、品質構文定義ファイル２と、非正常系構文定義ファイル３に対してはＩＤによって関連付けられている。
【００４５】
版数７６は、要件情報ファイル４の版数を示し、内容が変更される毎に更新する。
作業者７７は、要件情報ファイル４の内容に対して作業を行ったクライアント１４の名前を格納する。
【００４６】
日付７８は、要件情報ファイル４の内容に対して作業を行った日付を格納する。
図６は、本発明の実施形態に係る要件情報ファイル４の表示例を示す図である。図６に示すように、要件見出し番号（例．１０１１）および見出し名(例．ドア開動作)の項目において、機能，品質，非正常に対応して、機能構文ＩＤ，品質構文ＩＤ，非正常系構文ＩＤおよびそれらに関連する項目並びにその内容が記述され、記述された内容がどのようなものかを表示している。
【００４７】
図７Ａは、本発明の実施形態に係る要件情報展開構文のデータ構造を示す図であり、また図７Ｂは、本発明の実施形態に係る要件情報展開構文のデータ構造の具体例を示す図である。
【００４８】
図７Ａに示すように要件情報展開構文８０は、図５で既に説明した要件情報ファイル４のデータ構造に対し、テスト水準ＩＤ８１と、テスト水準としてのサブ構文要素成立８２と、サブ構文要素不成立８４と、版数８５と、作業者８６と、日付８７とが追加されている。これら追加された項目については、図１に示す試験情報ファイル７に格納される。
【００４９】
サブ構文要素成立８２は、テスト水準としてのサブ構文要素名が成立する状態の名称を格納する。サブ構文要素名と同じ場合がある。
サブ構文要素不成立８４は、テスト水準としてのサブ構文要素名が成立しない状態の名称を格納する。例えば、サブ構成要素名が“ドア全閉”の場合、サブ構文要素成立８２は“ドア全閉”となり、サブ構文要素不成立８４は“ドア全閉以外”となる。
【００５０】
テスト水準ＩＤ８１は、テスト水準に対し一意に付けられた番号であり、この番号から要件情報ファイル４のどの構文（機能，品質，非正常系）のどのサブ構文要素のテスト水準であるかの特定を可能とする。
【００５１】
版数８５は、テスト水準の版数を示し、内容が変更される毎に更新する。
作業者８６は、テスト水準の内容に対して作業を行ったクライアント１４の名前を格納する。
【００５２】
日付８７は、テスト水準の内容に対して作業を行った日付を格納する。
図７Ｂにおいて例えば、テスト水準ＩＤである“T1011C201120”は、テスト水準を示すＴと、見出し番号（1011）と、非正常系構文ＩＤ（C201）と、構文要素名（属性）の位置（1）“検出方法（サブあり）”と、サブ構文要素名の位置（2）“ドア開センサ信号無”と、テスト水準であるサブ構文要素成立（0）“ドア開センサ信号無し”に対応している。
【００５３】
図８は、本発明の実施形態に係る要件情報展開処理部８で行う要件情報展開処理動作を説明するフローチャートである。
図８におけるステップとして説明していないが、要件情報展開処理部８がすでに起動していることが前提となる。そしてユーザインターフェース処理部１０から要件情報展開を行う要件見出し番号を読込み（ステップＳ１）、次いで要件情報ファイル４から、要件見出し番号に対応した、機能構文ＩＤ，品質構文ＩＤ，非正常系構文ＩＤを読込む（ステップＳ２）。
【００５４】
次に、品質構文定義ファイル２から、ステップＳ２で読み込んだ品質構文ＩＤに対応したデータを読込み（ステップＳ３）、読み込んだ品質構文定義ファイル２のデータからサブ構文要素名を抽出して（ステップＳ４）、抽出したサブ構文要素名が要件情報展開を行う場合（ステップＳ５）は、サブ構文要素成立としてサブ構文要素名を格納し（ステップＳ６）、テスト水準ＩＤを割り当てる（ステップＳ７）。また、サブ構文要素不成立としてサブ構文要素名に“以外”等のサブ構文要素名が成立しないような語句を追加して格納し（ステップＳ８）、テスト水準ＩＤを割り当てる（ステップＳ９）。この作業を品質構文ＩＤに含まれる全てのサブ構文要素名に対して行う（ステップＳ１０）。
【００５５】
次いで、非正常系構文定義ファイル３から、ステップＳ２で読み込んだ非正常系構文ＩＤに対応したデータを読込み（ステップＳ１１）、読み込んだ非正常系構文定義ファイル３のデータからサブ構文要素名を抽出して（ステップＳ１２）、抽出したサブ構文要素名が要件情報展開を行う場合（ステップＳ１３）は、サブ構文要素成立としてサブ構文要素名を格納し（ステップＳ１４）、テスト水準ＩＤを割り当てる（ステップＳ１５）。また、サブ構文要素不成立としてサブ構文要素名に“以外”等のサブ構文要素名が成立しないような語句を追加して格納し（ステップＳ１６）、テスト水準ＩＤを割り当てる（ステップＳ１７）。この作業を非正常系構文ＩＤに含まれる全てのサブ構文要素名に対し行う（ステップＳ１８）。
【００５６】
最後に試験情報ファイル７に、サブ構文成立とサブ構文不成立とそれに対応したテスト水準ＩＤを格納して処理を終了する（ステップＳ１９）。
図９は、本発明の実施形態に係る試験情報作成処理部９で自動作成されたテスト仕様書の例を示す図である。図９に示されたテスト仕様書は、要件に対応して、機能構文に関しては、要件情報ファイル４と同じ内容を記述し、また品質構文，非正常系構文に関しては、条件が成立する場合のテスト水準ＩＤの組合せだけでなく、条件が不成立の場合のテスト水準ＩＤの組合せを含ませるようにしている。詳細は図１０にて説明する。
【００５７】
図１０は、本発明の実施形態に係る試験情報作成処理部９で行う試験情報作成処理動作を説明するフローチャートである。
図１０におけるステップとして説明していないが、試験情報作成処理部９がすでに起動していることが前提となる。そしてユーザインターフェース処理部１０から要件情報展開を行う要件見出し番号を読込む（ステップＳ２１）。そして、要件情報ファイル４から、要件見出し番号に対応した、見出し名，機能構文ＩＤ，品質構文ＩＤ，非正常系構文ＩＤを読込む（ステップＳ２２）。
【００５８】
次に、試験情報ファイル７から要件見出し番号と、読込んだ品質構文ＩＤ，非正常系構文ＩＤに対応した、テスト水準ＩＤとサブ構成要素成立とサブ構文要素不成立を読込む（ステップＳ２３）。テスト水準ＩＤで、要件見出し番号と品質構文ＩＤに対応したものの中からサブ構文要素成立の組合せを取得し、記述する（ステップＳ２４）。またテスト水準ＩＤで、要件見出し番号と品質構文ＩＤに対応したものの中からサブ構文要素成立とサブ構文要素不成立の組合せの中から、サブ構文要素不成立が一つ含まれるような組合せを取得し、記述する（ステップＳ２５）。
【００５９】
また、テスト水準ＩＤで、要件見出し番号と非正常系構文ＩＤに対応したものの中からサブ構文要素成立の組合せを取得し、記述する（ステップＳ２６）。さらに、テスト水準で、要件見出し番号と非正常系構文ＩＤに対応したものの中からサブ構文要素成立とサブ構文要素不成立の組合せの中から、サブ構文要素不成立が一つ含まれるような組合せを取得し、記述して処理を終了する（ステップＳ２７）。
【００６０】
このように本発明の実施形態に係る試験情報作成処理部９で実行する試験情報作成処理は、要件に対応して、機能構文に関しては、要件情報ファイル４と同じ内容を記述し、また品質構文に関しては、成立条件として、テスト水準ＩＤでサブ構文要素成立の組合せを記述し、不成立条件として、テスト水準ＩＤでサブ構文要素成立とサブ構文要素不成立の組合せのうち、サブ構文要素不成立が一つだけ含まれる組合せを記述するようにし、また非正常系構文に関しては、品質構文と同様に、成立条件として、テスト水準ＩＤでサブ構文要素成立の組合せを記述し、不成立条件として、テスト水準ＩＤでサブ構文要素成立とサブ構文要素不成立の組合せのうち、サブ構文要素不成立が一つだけ含まれる組合せを記述するようにしている。これらの試験情報作成処理を踏まえて図９に示されるようなテスト仕様書が自動的に作成される。なお、テスト水準であるサブ構文要素成立とサブ構文要素不成立の組合せは、図７Ａ及び図８に示した手法に限らずAll pair法や直交表のアルゴリズムを用いて作成することも可能である。
【００６１】
図１１は、本発明の実施形態に係る品質定義構文ファイル２の修正例および要件情報展開構文８０の修正例を示す図である。
図７Ａ及び図７Ｂで既に説明した要件情報展開構文８０に対し、クライアント１４がユーザインターフェース処理部１０を介して、品質構文定義ファイル２にある品質構文のデータであるサブ構文要素に“Fromでドア全閉以外の時には、数値の判定を行わない”（４２）の項目を追加し、試験情報ファイル７にあるテスト水準ＩＤとして    “T1011B1010121”（８１）に対応した“ドア全開−10cm以外”（８４）の語句を“ドア全開−10cm未満”（８８）と修正し、“ドア全開−10cm以上”（８９）を追加している。
【００６２】
この処理はクライアント１４からユーザインターフェース処理部１０を介して品質構文定義ファイル２や試験情報ファイル７への追加，修正として行われたことを、ファイル構成管理処理部１１が管理して、版数と作業者と日付を記録し、変更された内容に対応したＩＤ番号の版数管理を行う。例えば“ドア全開−10cm未満”（８８）についてはテスト水準ＩＤを“T1011B1010121”（８１）から“T1011B1010121-1”（８３）とする。同じように品質構文ＩＤも“B101”（７４）から“B101-1”のようにする。
【００６３】
図１２は、本発明の実施形態に係る要件情報ファイル４の修正後の表示例を示す図である。すなわち、品質定義構文ファイル２および要件情報展開構文８０が図１１のように修正されることとなった場合には、図６に示した要件情報ファイル４も修正され、修正内容が反映されたものになる。したがって図１２に示すように品質構文に追加された項目、つまり“Fromでドア全閉以外の時には、数値の判定を行わない”の内容が作業者と日付と共に表示される。
【００６４】
図１３は、本発明の実施形態に係るテスト仕様書の修正後の表示例を示す図である。すなわち、品質定義構文ファイル２および要件情報展開構文８０が図１１のように修正されることとなった場合には、図９に示したテスト仕様書も修正され、修正内容が反映されたものになる。したがって図１３に示すように品質構文に追加された項目、つまり“Fromでドア全閉以外の時には、数値の判定を行わない”の内容が、品質構文の成立条件および不成立条件のそれぞれにおいて作業者と日付と共に表示される。
【図面の簡単な説明】
【００６５】
【図１】本発明の実施形態に係るテスト仕様書作成支援システムの構成を示すブロック図である。
【図２】本発明の実施形態に係る機能構文定義ファイルのデータ構造を示す図およびその具体的なデータ構造例を示す図である。
【図３】本発明の実施形態に係る品質構文定義ファイルのデータ構造を示す図およびその具体的なデータ構造例を示す図である。
【図４】本発明の実施形態に係る非正常系構文定義ファイルのデータ構造を示す図およびその具体的なデータ構造例を示す図である。
【図５】本発明の実施形態に係る要件情報ファイルのデータ構造を示す図およびその具体的なデータ構造例を示す図である。
【図６】本発明の実施形態に係る要件情報ファイルの表示例を示す図である。
【図７Ａ】本発明の実施形態に係る要件情報展開構文のデータ構造を示す図である。
【図７Ｂ】本発明の実施形態に係る要件情報展開構文のデータ構造の具体例を示す図である。
【図８】本発明の実施形態に係る要件情報展開処理部で行う要件情報展開処理動作を説明するフローチャートである。
【図９】本発明の実施形態に係る試験情報作成処理部で作成されたテスト仕様書の例を示す図である。
【図１０】本発明の実施形態に係る試験情報作成処理部の処理動作を説明するフローチャートである。
【図１１】本発明の実施形態に係る品質定義構文ファイルの修正例および要件情報展開構文の修正例を示す図である。
【図１２】本発明の実施形態に係る要件情報ファイルの修正後の表示例を示す図である。
【図１３】本発明の実施形態に係るテスト仕様書の修正後の表示例を示す図である。
【符号の説明】
【００６６】
１  機能構文定義ファイル
２  品質構文定義ファイル
３  非正常系構文定義ファイル
４  要件情報ファイル
５  要件情報管理処理部
６  構文管理処理部
７  試験情報ファイル
８  要件情報展開処理部
９  試験情報作成処理部
１０  ユーザインターフェース処理部
１１  ファイル構成管理処理部
１２  サーバ
１３  ネットワーク
１４  クライアント
【図１】
2008003767.tif 000003
【図２】
2008003767.tif 000004
【図３】
2008003767.tif 000005
【図４】
2008003767.tif 000006
【図５】
2008003767.tif 000007
【図６】
2008003767.tif 000008
【図７Ａ】
2008003767.tif 000009
【図７Ｂ】
2008003767.tif 000010
【図８】
2008003767.tif 000011
【図９】
2008003767.tif 000012
【図１０】
2008003767.tif 000013
【図１１】
2008003767.tif 000014
【図１２】
2008003767.tif 000015
【図１３】
2008003767.tif 000016