(57)【特許請求の範囲】
【請求項１】
テスト対象の設計書に記述された画面又はデータに対応する設計要素と、前記設計要素の構造を表す設計メタモデルと、前記設計メタモデルの構造を表す設計メタメタモデルと、前記設計要素を用いてテスト内容を記述したテストケースの構造を表すテストケースメタモデルと、前記テストケースメタモデルの構造を表すテストケースメタメタモデルと、前記テストケースメタメタモデル及び前記設計メタメタモデル間の関係を表すマッピングルールメタメタモデルと、前記テストケースメタモデル及び前記設計メタモデル間の関連付けを表すマッピングルールメタモデルと、前記テストケースとを記憶するための記憶手段を備え、前記設計要素との置換部分を含んで前記テストケースのひな型を表すテストケーステンプレートを前記テストケースメタモデルの一部として準備し、前記テストケーステンプレートの置換部分を前記テスト対象の設計要素に置換して前記テストケースを生成するテストケース生成装置に用いられるテストケース生成プログラムであって、
前記テストケース生成装置を、
それぞれＵＭＬのクラス図で表された前記設計メタメタモデル、前記テストケースメタメタモデル及び前記マッピングルールメタメタモデルを予め前記記憶手段に書込む手段、
前記記憶手段内の設計メタメタモデルを表示することにより、前記設計メタモデルを表すＵＭＬのクラス図の入力を促す手段、
前記入力を受け付けた前記設計メタモデルを表すＵＭＬのクラス図を前記記憶手段に書込む手段、
前記記憶手段内の前記設計メタモデルを表すＵＭＬのクラス図を表示することにより、前記設計メタモデルを構成する設計メタモデル要素を示す設計メタモデル要素データ、当該設計メタモデル要素の属性を示す設計メタモデル要素属性データ及び関連先の設計メタモデル要素データの入力を促す手段、
前記入力を受け付けた前記設計メタモデル要素データ、前記設計メタモデル要素属性データ及び前記関連先の設計メタモデル要素データを前記記憶手段に書込む手段、
前記記憶手段内の前記設計メタモデルを表すＵＭＬのクラス図、前記設計メタモデル要素データ、前記設計メタモデル要素属性データ及び前記関連先の設計メタモデル要素データに対し、前記記憶手段内の設計メタメタモデルに違反している箇所を含むか否かを検証する手段、
この検証結果が否を示す場合、前記記憶手段内の前記設計メタモデルを表すＵＭＬのクラス図、前記設計メタモデル要素データ、前記設計メタモデル要素属性データ及び前記関連先の設計メタモデル要素データを表示することにより、前記設計要素を特定する要素データ、当該設計要素の項目を示す要素項目データ及び当該設計要素の処理を示す要素処理データの入力を促す手段、
前記入力を受け付けた前記要素データ、前記要素項目データ及び前記要素処理データを前記記憶手段に書込む手段、
前記記憶手段内のテストケースメタメタモデルを表すＵＭＬのクラス図及び前記設計メタモデルを表すＵＭＬのクラス図を表示することにより、前記テストケースメタモデルを表すＵＭＬのクラス図の入力を促す手段、
前記入力を受け付けた前記テストケースメタモデルを表すＵＭＬのクラス図を前記記憶手段に書込む手段、
前記記憶手段内の前記テストケースメタモデルを表すＵＭＬのクラス図を表示することにより、前記テストケースメタモデルを構成するテストケースメタモデル要素を示すテストケースメタモデル要素データ及び当該テストケースメタモデル要素の属性を示すテストケースメタモデル要素属性データの入力を促す手段、
前記入力を受け付けた前記テストケースメタモデル要素データ及び前記テストケースメタモデル要素属性データを前記記憶手段に書込む手段、
前記記憶手段内の前記テストケースメタモデルを表すＵＭＬのクラス図、前記テストケースメタモデル要素データ及び前記テストケースメタモデル要素属性データに対し、前記記憶手段内のテストケースメタメタモデルに違反している箇所を含むか否かを検証する手段、
この検証結果が否を示す場合、前記記憶手段内のマッピングルールメタメタモデルを表すＵＭＬのクラス図、前記記憶手段内のテストケースメタモデルを表すＵＭＬのクラス図及び前記設計メタモデルを表すＵＭＬのクラス図を表示することにより、前記マッピングルールメタモデルを表すＵＭＬのクラス図の入力を促す手段、
前記入力を受け付けた前記マッピングルールメタモデルを表すＵＭＬのクラス図を前記記憶手段に書込む手段、
前記記憶手段内の前記マッピングルールメタモデルを表すＵＭＬのクラス図、前記設計メタモデル要素データ及び前記テストケースメタモデル要素データを表示することにより、前記マッピングルールメタモデルを構成するマッピングルールメタモデル要素を示すマッピングルールメタモデル要素データ及び当該マッピングルールメタモデル要素の属性を示すマッピングルールメタモデル要素属性データの入力を促す手段、
前記入力を受け付けた前記マッピングルールメタモデル要素データ及び前記マッピングルールメタモデル要素属性データを前記記憶手段に書込む手段、
前記記憶手段内の前記マッピングルールメタモデルを表すＵＭＬのクラス図、前記マッピングルールメタモデル要素データ及び前記マッピングルールメタモデル要素属性データに対し、前記記憶手段内のマッピングルールメタメタモデルに違反している箇所を含むか否かを検証する手段、
この検証結果が否を示す場合、前記記憶手段内のマッピングルールメタモデルを表すクラス図と前記テストケースメタモデル要素属性データとを表示することにより、前記設計要素との置換部分として前記要素データ、前記要素項目データ及び前記要素処理データ内のいずれかの項目を含んで前記テストケースのひな型を表すテストケーステンプレートの入力を促す手段、
前記入力を受け付けたテストケーステンプレートを前記記憶手段に書込む手段、
前記記憶手段内の前記テストケーステンプレートの置換部分の各項目を、前記要素データ、前記要素項目データ及び前記要素処理データ内の前記いずれかの項目の値に置換して前記テストケースを生成する手段、
当該生成したテストケースを前記記憶手段に書込む手段、
として機能させるためのテストケース生成プログラム。
【請求項２】
請求項１に記載のテストケース生成プログラムにおいて、
前記設計メタメタモデルは、前記設計要素を表す設計要素クラスに汎化される全体要素クラス及び項目要素クラスと、当該汎化される全体要素クラス又は項目要素クラス間の関係を示す組合せ情報クラス及び遷移情報クラスとの４種類の要素が前記設計メタモデルにあることを表し、前記項目要素クラスが多重度０以上で所有されるように前記全体要素クラスに関連付けられ、前記組合せ情報クラスが前記汎化されるいずれかの各要素クラスの関係を示す関連クラスであり、前記遷移情報クラスが前記汎化されるいずれかの各要素クラスに関連付けられることを表す情報であり、
前記テストケースメタメタモデルは、前記設計要素クラスに関連付けられた多重度０以上のテストケース要素クラスという１種類の要素が前記テストケースメタモデルにあることを表し、前記テストケース要素クラスが一連のテスト要素を表すテストスイート要素クラスに所有され、前記テストケース要素クラスが多重度０以上のテスト観点クラスに関連付けられ、前記テストケース要素クラスがテストケーステンプレートクラスに関連付けられ、前記テストケーステンプレートクラスに汎化される組合せテストケーステンプレート、遷移テストケーステンプレート及び一覧テストケーステンプレートを含む情報であり、
前記マッピングルールメタメタモデルは、前記設計メタメタモデル内の設計要素と前記テストケースメタメタモデル内のテストケース要素との関係を示す関連クラスであるマッピングルール要素クラスに汎化される組合せマッピングルール要素クラス、遷移マッピングルール要素クラス及び一覧マッピングルール要素クラスの３種類の要素が前記マッピングルールメタモデルにあることを表す情報であり、
前記設計メタモデルを表すＵＭＬのクラス図は、前記全体要素クラス及び項目要素クラスの両者に対応するステレオタイプ名と前記設計メタモデル要素の名称を示すメタモデル要素名とをもつクラスと、前記項目要素クラスに対応するステレオタイプ名と前記メタモデル要素名とをもつクラスと、前記組合せ情報クラスに対応するステレオタイプ名と前記メタモデル要素名とをもつクラスと、前記遷移情報クラスに対応するステレオタイプ名と前記メタモデル要素名とをもつクラスとを関連付けて表した情報であり、
前記設計メタモデル要素データは、前記設計メタモデル要素を識別するメタモデル要素ＩＤの項目と値及び前記メタモデル要素名の項目と値を含んでおり、
前記設計メタモデル要素属性データは、前記メタモデル要素ＩＤの項目と値、前記設計メタモデル要素の属性を識別するメタモデル要素属性ＩＤの項目と値、前記設計メタモデル要素の属性の名称を示すメタモデル要素属性名の項目と値及び前記設計メタモデル要素の属性の型を示すメタモデル要素属性型の項目と値を含んでおり、
前記関連先の設計メタモデル要素データは、前記設計メタモデル要素の関連先の設計メタモデル要素を識別するメタモデル要素ＩＤの項目と値及び前記関連先の設計メタモデル要素の名称を示すメタモデル要素名の項目と値を含んでおり、
前記要素データは、前記設計要素を識別する要素ＩＤの項目と値及び前記設計要素の名称を示す設計要素名の項目と値を含んでおり、
前記要素項目データは、前記要素ＩＤの項目と値、前記要素の項目を識別する要素項目ＩＤの項目と値、前記要素の項目の名称を示す要素項目名の項目と値を含んでおり、
前記要素処理データは、前記要素ＩＤの項目と値、前記設計要素の処理を識別する要素処理ＩＤの項目と値、前記設計要素の処理の名称を示す要素処理名の項目と値、前記要素項目ＩＤの項目と値、イベントを識別するイベントＩＤの項目と値、処理先の要素項目ＩＤの項目と値、前記設計要素の処理の結果を示す処理結果の項目と値を含んでおり、
前記テストケースメタモデルを表すＵＭＬのクラス図は、前記設計メタモデルを表すクラス図内の各クラスのステレオタイプ名に代えて前記テストケース要素クラスに対応するステレオタイプ名をもつと共に、当該各クラスのメタモデル要素名に対する前記テストケース要素クラスを表すメタモデル要素名をもつ各クラスを表した情報であり、
前記テストケースメタモデル要素データは、前記テストスイート要素クラスに対応するテストスイートＩＤの項目と値、前記テストケースメタモデル要素を識別するメタモデル要素ＩＤの項目と値及び前記テストケース要素クラスを表すメタモデル要素名の項目と値を含んでおり、
前記テストケースメタモデル要素属性データは、前記メタモデル要素ＩＤの項目と値、前記テストケースメタモデル要素の属性を識別するメタモデル要素属性ＩＤの項目と値、前記テストケースメタモデル要素の属性の名称を示すメタモデル要素属性名の項目と値及び前記テストケースメタモデル要素の属性の型を示すメタモデル要素属性型の項目と値を含んでおり、
前記マッピングルールメタモデルを表すＵＭＬのクラス図は、前記設計メタモデルを表すクラス図内の各クラスと、前記テストケースメタモデルを表すクラス図内の各クラスと、当該テストケースメタモデルを表すクラス図内の各クラスが前記設計メタモデルを表すクラス図内の各クラスに依存する旨を表すように依存元のクラスから依存先のクラスを結ぶ破線の矢印と、前記破線の矢印に近接して記述された依存先のクラスのステレオタイプ名とを表す情報であり、
前記マッピングルールメタモデル要素データは、前記破線の矢印を識別するマッピング要素ＩＤの項目と値及び前記破線の矢印の名称を表すマッピング要素名の項目と値を含んでおり、
前記マッピングルールメタモデル要素属性データは、前記依存先のクラスを識別する設計メタモデル要素ＩＤの項目と値、前記依存元のクラスを識別するテストケースメタモデル要素ＩＤの項目と値、及び前記破線の矢印に近接して記述されたステレオタイプ名の項目と値を含んでおり、
前記テストケーステンプレートの入力を促す手段は、前記記憶手段内のマッピングルールメタモデルを表すクラス図と前記テストケースメタモデル要素属性データ内のメタモデル要素属性名の値に含まれるテストケーステンプレート名とを表示する手段、を含んでいることを特徴とするテストケース生成プログラム。
【請求項３】
テスト対象の設計書に記述された画面又はデータに対応する設計要素と、前記設計要素の構造を表す設計メタモデルと、前記設計メタモデルの構造を表す設計メタメタモデルと、前記設計要素を用いてテスト内容を記述したテストケースの構造を表すテストケースメタモデルと、前記テストケースメタモデルの構造を表すテストケースメタメタモデルと、前記テストケースメタメタモデル及び前記設計メタメタモデル間の関係を表すマッピングルールメタメタモデルと、前記テストケースメタモデル及び前記設計メタモデル間の関連付けを表すマッピングルールメタモデルと、前記テストケースとを記憶するための記憶手段を備え、前記設計要素との置換部分を含んで前記テストケースのひな型を表すテストケーステンプレートを前記テストケースメタモデルの一部として準備し、前記テストケーステンプレートの置換部分を前記テスト対象の設計要素に置換して前記テストケースを生成するテストケース生成装置であって、
それぞれＵＭＬのクラス図で表された前記設計メタメタモデル、前記テストケースメタメタモデル及び前記マッピングルールメタメタモデルを予め前記記憶手段に書込む手段と、
前記記憶手段内の設計メタメタモデルを表示することにより、前記設計メタモデルを表すＵＭＬのクラス図の入力を促す手段と、
前記入力を受け付けた前記設計メタモデルを表すＵＭＬのクラス図を前記記憶手段に書込む手段と、
前記記憶手段内の前記設計メタモデルを表すＵＭＬのクラス図を表示することにより、前記設計メタモデルを構成する設計メタモデル要素を示す設計メタモデル要素データ、当該設計メタモデル要素の属性を示す設計メタモデル要素属性データ及び関連先の設計メタモデル要素データの入力を促す手段と、
前記入力を受け付けた前記設計メタモデル要素データ、前記設計メタモデル要素属性データ及び前記関連先の設計メタモデル要素データを前記記憶手段に書込む手段と、
前記記憶手段内の前記設計メタモデルを表すＵＭＬのクラス図、前記設計メタモデル要素データ、前記設計メタモデル要素属性データ及び前記関連先の設計メタモデル要素データに対し、前記記憶手段内の設計メタメタモデルに違反している箇所を含むか否かを検証する手段と、
この検証結果が否を示す場合、前記記憶手段内の前記設計メタモデルを表すＵＭＬのクラス図、前記設計メタモデル要素データ、前記設計メタモデル要素属性データ及び前記関連先の設計メタモデル要素データを表示することにより、前記設計要素を特定する要素データ、当該設計要素の項目を示す要素項目データ及び当該設計要素の処理を示す要素処理データの入力を促す手段と、
前記入力を受け付けた前記要素データ、前記要素項目データ及び前記要素処理データを前記記憶手段に書込む手段と、
前記記憶手段内のテストケースメタメタモデルを表すＵＭＬのクラス図及び前記設計メタモデルを表すＵＭＬのクラス図を表示することにより、前記テストケースメタモデルを表すＵＭＬのクラス図の入力を促す手段と、
前記入力を受け付けた前記テストケースメタモデルを表すＵＭＬのクラス図を前記記憶手段に書込む手段と、
前記記憶手段内の前記テストケースメタモデルを表すＵＭＬのクラス図を表示することにより、前記テストケースメタモデルを構成するテストケースメタモデル要素を示すテストケースメタモデル要素データ及び当該テストケースメタモデル要素の属性を示すテストケースメタモデル要素属性データの入力を促す手段と、
前記入力を受け付けた前記テストケースメタモデル要素データ及び前記テストケースメタモデル要素属性データを前記記憶手段に書込む手段と、
前記記憶手段内の前記テストケースメタモデルを表すＵＭＬのクラス図、前記テストケースメタモデル要素データ及び前記テストケースメタモデル要素属性データに対し、前記記憶手段内のテストケースメタメタモデルに違反している箇所を含むか否かを検証する手段と、
この検証結果が否を示す場合、前記記憶手段内のマッピングルールメタメタモデルを表すＵＭＬのクラス図、前記記憶手段内のテストケースメタモデルを表すＵＭＬのクラス図及び前記設計メタモデルを表すＵＭＬのクラス図を表示することにより、前記マッピングルールメタモデルを表すＵＭＬのクラス図の入力を促す手段と、
前記入力を受け付けた前記マッピングルールメタモデルを表すＵＭＬのクラス図を前記記憶手段に書込む手段と、
前記記憶手段内の前記マッピングルールメタモデルを表すＵＭＬのクラス図、前記設計メタモデル要素データ及び前記テストケースメタモデル要素データを表示することにより、前記マッピングルールメタモデルを構成するマッピングルールメタモデル要素を示すマッピングルールメタモデル要素データ及び当該マッピングルールメタモデル要素の属性を示すマッピングルールメタモデル要素属性データの入力を促す手段と、
前記入力を受け付けた前記マッピングルールメタモデル要素データ及び前記マッピングルールメタモデル要素属性データを前記記憶手段に書込む手段と、
前記記憶手段内の前記マッピングルールメタモデルを表すＵＭＬのクラス図、前記マッピングルールメタモデル要素データ及び前記マッピングルールメタモデル要素属性データに対し、前記記憶手段内のマッピングルールメタメタモデルに違反している箇所を含むか否かを検証する手段と、
この検証結果が否を示す場合、前記記憶手段内のマッピングルールメタモデルを表すクラス図と前記テストケースメタモデル要素属性データとを表示することにより、前記設計要素との置換部分として前記要素データ、前記要素項目データ及び前記要素処理データ内のいずれかの項目を含んで前記テストケースのひな型を表すテストケーステンプレートの入力を促す手段と、
前記入力を受け付けたテストケーステンプレートを前記記憶手段に書込む手段と、
前記記憶手段内の前記テストケーステンプレートの置換部分の各項目を、前記要素データ、前記要素項目データ及び前記要素処理データ内の前記いずれかの項目の値に置換して前記テストケースを生成する手段と、
当該生成したテストケースを前記記憶手段に書込む手段と、
を備えたことを特徴とするテストケース生成装置。
【請求項４】
請求項３に記載のテストケース生成装置において、
前記設計メタメタモデルは、前記設計要素を表す設計要素クラスに汎化される全体要素クラス及び項目要素クラスと、当該汎化される全体要素クラス又は項目要素クラス間の関係を示す組合せ情報クラス及び遷移情報クラスとの４種類の要素が前記設計メタモデルにあることを表し、前記項目要素クラスが多重度０以上で所有されるように前記全体要素クラスに関連付けられ、前記組合せ情報クラスが前記汎化されるいずれかの各要素クラスの関係を示す関連クラスであり、前記遷移情報クラスが前記汎化されるいずれかの各要素クラスに関連付けられることを表す情報であり、
前記テストケースメタメタモデルは、前記設計要素クラスに関連付けられた多重度０以上のテストケース要素クラスという１種類の要素が前記テストケースメタモデルにあることを表し、前記テストケース要素クラスが一連のテスト要素を表すテストスイート要素クラスに所有され、前記テストケース要素クラスが多重度０以上のテスト観点クラスに関連付けられ、前記テストケース要素クラスがテストケーステンプレートクラスに関連付けられ、前記テストケーステンプレートクラスに汎化される組合せテストケーステンプレート、遷移テストケーステンプレート及び一覧テストケーステンプレートを含む情報であり、
前記マッピングルールメタメタモデルは、前記設計メタメタモデル内の設計要素と前記テストケースメタメタモデル内のテストケース要素との関係を示す関連クラスであるマッピングルール要素クラスに汎化される組合せマッピングルール要素クラス、遷移マッピングルール要素クラス及び一覧マッピングルール要素クラスの３種類の要素が前記マッピングルールメタモデルにあることを表す情報であり、
前記設計メタモデルを表すＵＭＬのクラス図は、前記全体要素クラス及び項目要素クラスの両者に対応するステレオタイプ名と前記設計メタモデル要素の名称を示すメタモデル要素名とをもつクラスと、前記項目要素クラスに対応するステレオタイプ名と前記メタモデル要素名とをもつクラスと、前記組合せ情報クラスに対応するステレオタイプ名と前記メタモデル要素名とをもつクラスと、前記遷移情報クラスに対応するステレオタイプ名と前記メタモデル要素名とをもつクラスとを関連付けて表した情報であり、
前記設計メタモデル要素データは、前記設計メタモデル要素を識別するメタモデル要素ＩＤの項目と値及び前記メタモデル要素名の項目と値を含んでおり、
前記設計メタモデル要素属性データは、前記メタモデル要素ＩＤの項目と値、前記設計メタモデル要素の属性を識別するメタモデル要素属性ＩＤの項目と値、前記設計メタモデル要素の属性の名称を示すメタモデル要素属性名の項目と値及び前記設計メタモデル要素の属性の型を示すメタモデル要素属性型の項目と値を含んでおり、
前記関連先の設計メタモデル要素データは、前記設計メタモデル要素の関連先の設計メタモデル要素を識別するメタモデル要素ＩＤの項目と値及び前記関連先の設計メタモデル要素の名称を示すメタモデル要素名の項目と値を含んでおり、
前記要素データは、前記設計要素を識別する要素ＩＤの項目と値及び前記設計要素の名称を示す設計要素名の項目と値を含んでおり、
前記要素項目データは、前記要素ＩＤの項目と値、前記要素の項目を識別する要素項目ＩＤの項目と値、前記要素の項目の名称を示す要素項目名の項目と値を含んでおり、
前記要素処理データは、前記要素ＩＤの項目と値、前記設計要素の処理を識別する要素処理ＩＤの項目と値、前記設計要素の処理の名称を示す要素処理名の項目と値、前記要素項目ＩＤの項目と値、イベントを識別するイベントＩＤの項目と値、処理先の要素項目ＩＤの項目と値、前記設計要素の処理の結果を示す処理結果の項目と値を含んでおり、
前記テストケースメタモデルを表すＵＭＬのクラス図は、前記設計メタモデルを表すクラス図内の各クラスのステレオタイプ名に代えて前記テストケース要素クラスに対応するステレオタイプ名をもつと共に、当該各クラスのメタモデル要素名に対する前記テストケース要素クラスを表すメタモデル要素名をもつ各クラスを表した情報であり、
前記テストケースメタモデル要素データは、前記テストスイート要素クラスに対応するテストスイートＩＤの項目と値、前記テストケースメタモデル要素を識別するメタモデル要素ＩＤの項目と値及び前記テストケース要素クラスを表すメタモデル要素名の項目と値を含んでおり、
前記テストケースメタモデル要素属性データは、前記メタモデル要素ＩＤの項目と値、前記テストケースメタモデル要素の属性を識別するメタモデル要素属性ＩＤの項目と値、前記テストケースメタモデル要素の属性の名称を示すメタモデル要素属性名の項目と値及び前記テストケースメタモデル要素の属性の型を示すメタモデル要素属性型の項目と値を含んでおり、
前記マッピングルールメタモデルを表すＵＭＬのクラス図は、前記設計メタモデルを表すクラス図内の各クラスと、前記テストケースメタモデルを表すクラス図内の各クラスと、当該テストケースメタモデルを表すクラス図内の各クラスが前記設計メタモデルを表すクラス図内の各クラスに依存する旨を表すように依存元のクラスから依存先のクラスを結ぶ破線の矢印と、前記破線の矢印に近接して記述された依存先のクラスのステレオタイプ名とを表す情報であり、
前記マッピングルールメタモデル要素データは、前記破線の矢印を識別するマッピング要素ＩＤの項目と値及び前記破線の矢印の名称を表すマッピング要素名の項目と値を含んでおり、
前記マッピングルールメタモデル要素属性データは、前記依存先のクラスを識別する設計メタモデル要素ＩＤの項目と値、前記依存元のクラスを識別するテストケースメタモデル要素ＩＤの項目と値、及び前記破線の矢印に近接して記述されたステレオタイプ名の項目と値を含んでおり、
前記テストケーステンプレートの入力を促す手段は、前記記憶手段内のマッピングルールメタモデルを表すクラス図と前記テストケースメタモデル要素属性データ内のメタモデル要素属性名の値に含まれるテストケーステンプレート名とを表示する手段、を備えたことを特徴とするテストケース生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、テストケース生成プログラム及びテストケース生成装置に関する。
【背景技術】
【０００２】
一般に、テストケースを生成する作業者は、システム全体、機能の組合せ又は機能等のテスト対象毎に、テストケースへのマッピング方法（変換方法）を検討する。その後、作業者は、得られたマッピング方法に基づき、テスト対象からテストケースを生成する。
【０００３】
例えば、作業者は、テスト対象の要件／設計要素からテストケースへのマッピング方法を個別に検討して抽出する。続いて、作業者は、抽出したマッピング方法に基づき、要件／設計要素をテストケースにマッピングし、テストケースを生成する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−２２０３３０号公報
【特許文献２】特許第３４６４１５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、以上のようなテストケース生成作業では、マッピング方法をどのように抽出するかが不明確であり、マッピング方法を個別に検討する手間がかかる結果、生成されるテストケースの質が低下する傾向にある。なお、ここでいう質の低下は、作業者のノウハウや経験に依存して発生しており、要件／設計要素に対応するテストケース全体が漏れている場合や、テスト条件が不十分なためにテストケースの一部が漏れている場合がある。すなわち、未熟な作業者である程、テストケースに漏れが発生し易い傾向にある。
【０００６】
従って、テストケース生成の際に、未熟な作業者に対してもテストケースの漏れの発生を無くすことが求められている。
【０００７】
本発明が解決しようとする課題は、テストケース生成の際に、未熟な作業者に対してもテストケースの漏れの発生を無くし得るテストケース生成プログラム及びテストケース生成装置を提供することである。
【課題を解決するための手段】
【０００８】
実施形態のテストケース生成装置は、テスト対象の設計書に記述された画面又はデータに対応する設計要素と、前記設計要素の構造を表す設計メタモデルと、前記設計メタモデルの構造を表す設計メタメタモデルと、前記設計要素を用いてテスト内容を記述したテストケースの構造を表すテストケースメタモデルと、前記テストケースメタモデルの構造を表すテストケースメタメタモデルと、前記テストケースメタメタモデル及び前記設計メタメタモデル間の関係を表すマッピングルールメタメタモデルと、前記テストケースメタモデル及び前記設計メタモデル間の関連付けを表すマッピングルールメタモデルと、前記テストケースとを記憶するための記憶手段を備えている。
【０００９】
前記テストケース生成装置は、前記設計要素との置換部分を含んで前記テストケースのひな型を表すテストケーステンプレートを前記テストケースメタモデルの一部として準備し、前記テストケーステンプレートの置換部分を前記テスト対象の設計要素に置換して前記テストケースを生成する。
【００１０】
前記テストケース生成装置は、それぞれＵＭＬのクラス図で表された前記設計メタメタモデル、前記テストケースメタメタモデル及び前記マッピングルールメタメタモデルを予め前記記憶手段に書込む。
【００１１】
前記テストケース生成装置は、前記記憶手段内の設計メタメタモデルを表示することにより、前記設計メタモデルを表すＵＭＬのクラス図の入力を促す。
【００１２】
前記テストケース生成装置は、前記入力を受け付けた前記設計メタモデルを表すＵＭＬのクラス図を前記記憶手段に書込む。
【００１３】
前記テストケース生成装置は、前記記憶手段内の前記設計メタモデルを表すＵＭＬのクラス図を表示することにより、前記設計メタモデルを構成する設計メタモデル要素を示す設計メタモデル要素データ、当該設計メタモデル要素の属性を示す設計メタモデル要素属性データ及び関連先の設計メタモデル要素データの入力を促す。
【００１４】
前記テストケース生成装置は、前記入力を受け付けた前記設計メタモデル要素データ、前記設計メタモデル要素属性データ及び前記関連先の設計メタモデル要素データを前記記憶手段に書込む。
【００１５】
前記テストケース生成装置は、前記記憶手段内の前記設計メタモデルを表すＵＭＬのクラス図、前記設計メタモデル要素データ、前記設計メタモデル要素属性データ及び前記関連先の設計メタモデル要素データに対し、前記記憶手段内の設計メタメタモデルに違反している箇所を含むか否かを検証する。
【００１６】
前記テストケース生成装置は、この検証結果が否を示す場合、前記記憶手段内の前記設計メタモデルを表すＵＭＬのクラス図、前記設計メタモデル要素データ、前記設計メタモデル要素属性データ及び前記関連先の設計メタモデル要素データを表示することにより、前記設計要素を特定する要素データ、当該設計要素の項目を示す要素項目データ及び当該設計要素の処理を示す要素処理データの入力を促す。
【００１７】
前記テストケース生成装置は、前記入力を受け付けた前記要素データ、前記要素項目データ及び前記要素処理データを前記記憶手段に書込む。
【００１８】
前記テストケース生成装置は、前記記憶手段内のテストケースメタメタモデルを表すＵＭＬのクラス図及び前記設計メタモデルを表すＵＭＬのクラス図を表示することにより、前記テストケースメタモデルを表すＵＭＬのクラス図の入力を促す。
【００１９】
前記テストケース生成装置は、前記入力を受け付けた前記テストケースメタモデルを表すＵＭＬのクラス図を前記記憶手段に書込む。
【００２０】
前記テストケース生成装置は、前記記憶手段内の前記テストケースメタモデルを表すＵＭＬのクラス図を表示することにより、前記テストケースメタモデルを構成するテストケースメタモデル要素を示すテストケースメタモデル要素データ及び当該テストケースメタモデル要素の属性を示すテストケースメタモデル要素属性データの入力を促す。
【００２１】
前記テストケース生成装置は、前記入力を受け付けた前記テストケースメタモデル要素データ及び前記テストケースメタモデル要素属性データを前記記憶手段に書込む。
【００２２】
前記テストケース生成装置は、前記記憶手段内の前記テストケースメタモデルを表すＵＭＬのクラス図、前記テストケースメタモデル要素データ及び前記テストケースメタモデル要素属性データに対し、前記記憶手段内のテストケースメタメタモデルに違反している箇所を含むか否かを検証する。
【００２３】
前記テストケース生成装置は、この検証結果が否を示す場合、前記記憶手段内のマッピングルールメタメタモデルを表すＵＭＬのクラス図、前記記憶手段内のテストケースメタモデルを表すＵＭＬのクラス図及び前記設計メタモデルを表すＵＭＬのクラス図を表示することにより、前記マッピングルールメタモデルを表すＵＭＬのクラス図の入力を促す。
【００２４】
前記テストケース生成装置は、前記入力を受け付けた前記マッピングルールメタモデルを表すＵＭＬのクラス図を前記記憶手段に書込む。
【００２５】
前記テストケース生成装置は、前記記憶手段内の前記マッピングルールメタモデルを表すＵＭＬのクラス図、前記設計メタモデル要素データ及び前記テストケースメタモデル要素データを表示することにより、前記マッピングルールメタモデルを構成するマッピングルールメタモデル要素を示すマッピングルールメタモデル要素データ及び当該マッピングルールメタモデル要素の属性を示すマッピングルールメタモデル要素属性データの入力を促す。
【００２６】
前記テストケース生成装置は、前記入力を受け付けた前記マッピングルールメタモデル要素データ及び前記マッピングルールメタモデル要素属性データを前記記憶手段に書込む。
【００２７】
前記テストケース生成装置は、前記記憶手段内の前記マッピングルールメタモデルを表すＵＭＬのクラス図、前記マッピングルールメタモデル要素データ及び前記マッピングルールメタモデル要素属性データに対し、前記記憶手段内のマッピングルールメタメタモデルに違反している箇所を含むか否かを検証する。
【００２８】
前記テストケース生成装置は、この検証結果が否を示す場合、前記記憶手段内のマッピングルールメタモデルを表すクラス図と前記テストケースメタモデル要素属性データとを表示することにより、前記設計要素との置換部分として前記要素データ、前記要素項目データ及び前記要素処理データ内のいずれかの項目を含んで前記テストケースのひな型を表すテストケーステンプレートの入力を促す。
【００２９】
前記テストケース生成装置は、前記入力を受け付けたテストケーステンプレートを前記記憶手段に書込む。
【００３０】
前記テストケース生成装置は、前記記憶手段内の前記テストケーステンプレートの置換部分の各項目を、前記要素データ、前記要素項目データ及び前記要素処理データ内の前記いずれかの項目の値に置換して前記テストケースを生成する。
【００３１】
前記テストケース生成装置は、当該生成したテストケースを前記記憶手段に書込む。
【図面の簡単な説明】
【００３２】
【図１】一実施形態に係るテストケース生成装置に用いられる各モデルの階層を説明するための模式図である。
【図２】同実施形態におけるテストケース生成装置の構成を示す模式図である。
【図３】同実施形態における設計要素記憶部を説明するための模式図である。
【図４】同実施形態における設計要素記憶部を説明するための模式図である。
【図５】同実施形態における設計メタメタモデル記憶部を説明するための模式図である。
【図６】同実施形態における設計メタメタモデル、テストケースメタメタモデル及びマッピングルールメタメタモデルを示す模式図である。
【図７】同実施形態における設計メタモデル記憶部を説明するための模式図である。
【図８】同実施形態における設計メタモデル記憶部を説明するための模式図である。
【図９】同実施形態におけるテストケースメタメタモデル記憶部を説明するための模式図である。
【図１０】同実施形態におけるテストケースメタモデル記憶部を説明するための模式図である。
【図１１】同実施形態におけるテストケースメタモデル記憶部を説明するための模式図である。
【図１２】同実施形態におけるマッピングルールメタメタモデル記憶部を説明するための模式図である。
【図１３】同実施形態におけるマッピングルールメタモデル記憶部を説明するための模式図である。
【図１４】同実施形態におけるマッピングルールメタモデル記憶部を説明するための模式図である。
【図１５】同実施形態におけるテストケース記憶部を説明するための模式図である。
【図１６】同実施形態におけるテストケース生成装置の全体動作を説明するためのフローチャートである。
【図１７】同実施形態における設計メタモデルの作成・登録の動作を説明するためのフローチャートである。
【図１８】同実施形態における設計メタメタモデルの一部を示す模式図である。
【図１９】同実施形態において作成・登録された設計メタモデル要素データ及び設計メタモデル要素属性データの一例を示す模式図である。
【図２０】同実施形態において作成・登録された関連先の設計メタモデル要素データの一例を示す模式図である。
【図２１】同実施形態において作成・登録された設計メタモデルの一部を示す模式図である。
【図２２】同実施形態における設計メタモデルの検証の動作を説明するためのフローチャートである。
【図２３】同実施形態における設計要素の作成・登録の動作を説明するための模式図である。
【図２４】同実施形態におけるテストケースメタモデルの作成・登録の動作を説明するための模式図である。
【図２５】同実施形態におけるテストケースメタメタモデルの一部を示す模式図である。
【図２６】同実施形態において作成・登録されたテストケースメタモデル要素データ及びテストケースメタモデル要素属性データの一例を示す模式図である。
【図２７】同実施形態において作成・登録されたテストケースメタモデルの一部を示す模式図である。
【図２８】同実施形態におけるテストケースメタモデルの検証の動作を説明するためのフローチャートである。
【図２９】同実施形態におけるマッピングルールメタモデルの作成・登録の動作を説明するためのフローチャートである。
【図３０】同実施形態におけるマッピングルールメタメタモデルの一部を示す模式図である。
【図３１】同実施形態において作成・登録されたマッピングルールメタモデル要素データ及びマッピングルールメタモデル要素属性データの一例を示す模式図である。
【図３２】同実施形態において作成・登録されたマッピングルールの一部を示す模式図である。
【図３３】同実施形態におけるマッピングルールメタモデルの検証の動作を説明するためのフローチャートである。
【図３４】同実施形態におけるテストケースの生成の動作を説明するためのフローチャートである。
【図３５】同実施形態におけるテストケーステンプレート及びマッピングルールメタモデルを示す模式図である。
【図３６】同実施形態においてテストケーステンプレートの置換部分への置換に用いられる要素データ、要素項目データ及び要素処理データの一例を示す模式図である。
【図３７】同実施形態において生成されたテストケースの一例を示す模式図である。
【発明を実施するための形態】
【００３３】
以下、本発明の各実施形態について図面を用いて説明する。なお、以下の各装置は、装置毎に、ハードウェア構成、又はハードウェア資源とソフトウェアとの組合せ構成のいずれでも実施可能となっている。組合せ構成のソフトウェアとしては、予めネットワーク又は記憶媒体から対応する装置のコンピュータにインストールされ、対応する装置の機能を実現させるためのプログラムが用いられる。
【００３４】
本実施形態では、テスト対象の要件／設計要素の構造（設計メタモデル）を、テストケースの構造（テストケースメタモデル）にマッピングすることにより、テストケースの生成を行うことができる。実際に、要件／設計要素をテストケースに変換する際には、テストケースのテンプレートを用意する。但し、このテストケースのテンプレートは、テストケースの構造（テストケースメタモデル）の種類だけ用意すればよい。また、テスト対象の要件／設計要素の構造（設計メタモデル）、テストケースの構造（テストケースメタモデル）、及び両者のマッピングルール（マッピングルールメタモデル）を、利用者が定義してシステムに取り込むことを可能にし、テストケース生成の適用範囲を拡げることも容易になる。
【００３５】
設計メタモデルの構造のパターン、テストケースメタモデルの構造のパターン、及び両者間のマッピングルールメタモデルのパターンは、図１に示すように、各メタモデルの上層である各メタメタモデルの階層で記述できるようにする。メタメタモデルの階層で、メタモデルの構造のパターンを記述することにより、メタメタモデルを利用してメタモデルの検証を可能にする。
【００３６】
本実施形態での用語の定義は、以下の通りである。
【００３７】
要件／設計要素は、要件定義や外部設計、内部設計の結果である成果物、要件定義書や、設計書の内容を表す。以下の説明では、要件定義書の内容を示す要件要素と、設計書の内容を表す設計要素のうち、設計要素を代表例に用いて要件／設計要素を述べる。
【００３８】
設計メタモデルは、設計要素を構成する要素が、どのような属性をもち、他の要素とどのように関連しているかを表したモデルを表す。設計メタモデルは、例えば、ＵＭＬ（Unified Modeling Language：統一モデリング言語）のクラス図の表記で記述される。
【００３９】
設計メタメタモデルは、設計メタモデルの要素が、他の要素とどのように関連しているか、その構造を表したモデルを表す。また、設計メタメタモデルは、設計メタモデルの構造のパターンを表しており、例えば、ＵＭＬのクラス図の表記で記述される。
【００４０】
テストケースは、テスト対象である設計要素のテストの最小単位を表す。
【００４１】
・テストケースメタモデルは、テストケースを構成する要素が、どのような属性をもち、他の要素とどのように関連しているかを表したモデルを表しており、例えば、ＵＭＬのクラス図の表記で記述される。
【００４２】
テストケースメタメタモデルは、テストケースメタモデルの要素が、他の要素とどのように関連しているか、その構造を表したモデルを表す。テストケースメタメタモデルは、テストケースメタモデルの構造のパターンを表しており、例えば、ＵＭＬのクラス図の表記で記述される。
【００４３】
マッピングルールメタモデルは、設計メタモデルとテストケースメタモデルの対応関係を表したモデルを表し、例えば、ＵＭＬのクラス図の表記で記述される。
【００４４】
マッピングルールメタメタモデルは、設計メタメタモデルとテストケースメタメタモデルの対応関係を表したモデルを表す。マッピングルールメタメタモデルは、設計メタモデルとテストケースメタモデルのマッピングの構造のパターンを表しており、例えば、ＵＭＬのクラス図の表記で記述される。
【００４５】
次に、一実施形態の具体的な構成について説明する。図２は一実施形態に係るテストケース生成装置の構成を示す模式図である。このテストケース生成装置は、テスト対象の設計書に記述された画面又はデータに対応する設計要素と、設計要素の構造を表す設計メタモデルと、設計メタモデルの構造を表す設計メタメタモデルと、設計要素を用いてテスト内容を記述したテストケースの構造を表すテストケースメタモデルと、テストケースメタモデルの構造を表すテストケースメタメタモデルと、テストケースメタメタモデル及び設計メタメタモデル間の関係を表すマッピングルールメタメタモデルと、テストケースメタモデル及び設計メタモデル間の関連付けを表すマッピングルールメタモデルと、テストデータとを記憶する記憶部２０１〜２０８を備えている。また、テストケース生成装置は、設計要素との置換部分を含んでテストケースのひな型を表すテストケーステンプレートをテストケースメタモデルの一部として準備し、テストケーステンプレートの置換部分をテスト対象の設計要素に置換してテストケースを生成する。
【００４６】
具体的には、テストケース生成装置は、入出力部２００、設計要素記憶部２０１、設計メタメタモデル記憶部２０２、設計メタモデル記憶部２０３、テストケースメタメタモデル記憶部２０４、テストケースメタモデル記憶部２０５、マッピングルールメタメタモデル記憶部２０６、マッピングルールメタモデル記憶部２０７、テストケース記憶部２０８、制御部２０９、設計メタモデル登録部２１０、設計メタモデル検証部２１１、設計要素入力部２１２、テストケースメタモデル登録部２１３、テストケースメタモデル検証部２１４、マッピングルールメタモデル登録部２１５、マッピングルールメタモデル検証部２１６及びテストケース生成部２１７を備えている。
【００４７】
ここで、入出力部２００は、テストケース生成者（本システムの利用者）に対するユーザ・インタフェースである。入出力部２００としては、例えば、ディスプレイ等の表示出力装置と、キーボード及びマウス等の入力装置とが使用可能となっている。すなわち、入出力部２００は、テストケース生成者の操作により、種々のデータを制御部２０９に入力する機能と、制御部２０９から受けるデータを表示する機能と、この表示により、種々のデータの入力を促す機能とをもっている。
【００４８】
設計要素記憶部２０１は、図３及び図４に示すように、各部２０９〜２１７から読出／書込可能であって、テスト対象の設計書に記述された画面又はデータに対応する設計要素２０１ａを記憶するためのＤＢＭＳ(DataBase Management System)、記憶装置又は記憶装置の記憶領域である。なお、各記憶部２０１〜２０８は、別々の記憶装置として実現してもよく、同一の記憶装置内の別々の記憶領域として実現してもよい。
【００４９】
ここで、設計要素２０１ａは、設計要素を特定する要素データ２０１ａ１，２０１ａ４、当該設計要素の項目を示す要素項目データ２０１ａ２，２０１ａ５及び当該設計要素の処理を示す要素処理データ２０１ａ３から構成される。
【００５０】
要素データ２０１ａ１，２０１ａ４は、設計要素を識別する要素ＩＤの項目と値及び設計要素の名称を示す設計要素名の項目と値を含んでいる。
【００５１】
要素項目データ２０１ａ２，２０１ａ５は、要素ＩＤの項目と値、要素の項目を識別する要素項目ＩＤの項目と値、要素の項目の名称を示す要素項目名の項目と値を含んでいる。
【００５２】
要素処理データ２０１ａ３は、要素ＩＤの項目と値、設計要素の処理を識別する要素処理ＩＤの項目と値、設計要素の処理の名称を示す要素処理名の項目と値、要素項目ＩＤの項目と値、イベントを識別するイベントＩＤの項目と値、処理先の要素項目ＩＤの項目と値、設計要素の処理の結果を示す処理結果の項目と値を含んでいる。
【００５３】
設計メタメタモデル記憶部２０２は、図５に示すように、各部２０９〜２１７から読出／書込可能であって、設計メタモデルの構造を表す設計メタメタモデル２０２ａを記憶するためのＤＢＭＳ、記憶装置又は記憶装置の記憶領域である。
【００５４】
ここで、設計メタメタモデル２０２ａは、設計要素を表す設計要素クラスに汎化される全体要素クラス及び項目要素クラスと、当該汎化される全体要素クラス又は項目要素クラス間の関係を示す組合せ情報クラス及び遷移情報クラスとの４種類の要素が設計メタモデルにあることを表し、項目要素クラスが多重度０以上で所有されるように全体要素クラスに関連付けられ、組合せ情報クラスが当該汎化されるいずれかの各要素クラスの関係を示す関連クラスであり、遷移情報クラスが当該汎化されるいずれかの各要素クラスに関連付けられることを表す情報である。また、設計メタメタモデル２０２ａは、図６に示すように、他のメタメタモデル２０４ａ，２０６ａと関係している。
【００５５】
設計メタモデル記憶部２０３は、図７及び図８に示すように、各部２０９〜２１７から読出／書込可能であって、設計要素の構造を表す設計メタモデル２０３ａを記憶するためのＤＢＭＳ、記憶装置又は記憶装置の記憶領域である。
【００５６】
補足すると、設計メタモデル記憶部２０３は、設計メタモデル２０３ａを表すＵＭＬのクラス図、設計メタモデル２０３ａを構成する設計メタモデル要素を示す設計メタモデル要素データ２０３ａ１、当該設計メタモデル要素の属性を示す設計メタモデル要素属性データ２０３ａ２及び関連先の設計メタモデル要素データ２０３ａ３が書き込まれる。
【００５７】
設計メタモデル２０３ａを表すＵＭＬのクラス図は、全体要素クラス及び項目要素クラスの両者に対応するステレオタイプ名と設計メタモデル要素の名称を示すメタモデル要素名とをもつクラスと、項目要素クラスに対応するステレオタイプ名と前記メタモデル要素名とをもつクラスと、組合せ情報クラスに対応するステレオタイプ名と前記メタモデル要素名とをもつクラスと、遷移情報クラスに対応するステレオタイプ名と前記メタモデル要素名とをもつクラスとを関連付けて表した情報である。
【００５８】
設計メタモデル要素データ２０３ａ１は、設計メタモデル要素を識別するメタモデル要素ＩＤの項目と値及びメタモデル要素名の項目と値を含んでいる。
【００５９】
設計メタモデル要素属性データ２０３ａ２は、メタモデル要素ＩＤの項目と値、設計メタモデル要素の属性を識別するメタモデル要素属性ＩＤの項目と値、設計メタモデル要素の属性の名称を示すメタモデル要素属性名の項目と値及び設計メタモデル要素の属性の型を示すメタモデル要素属性型の項目と値を含んでいる。
【００６０】
関連先の設計メタモデル要素データ２０３ａ３は、設計メタモデル要素の関連先の設計メタモデル要素を識別するメタモデル要素ＩＤの項目と値及び関連先の設計メタモデル要素の名称を示すメタモデル要素名の項目と値を含んでいる。
【００６１】
テストケースメタメタモデル記憶部２０４は、図９に示すように、各部２０９〜２１７から読出／書込可能であって、テストケースメタモデルの構造を表すテストケースメタメタモデル２０４ａを記憶するための記憶装置又は記憶装置の記憶領域である。
【００６２】
ここで、テストケースメタメタモデル２０４ａは、図６に示すように、設計メタメタモデル２０２ａの設計要素クラスに関連付けられた多重度０以上のテストケース要素クラスという１種類の要素がテストケースメタモデルにあることを表し、テストケース要素クラスが一連のテスト要素を表すテストスイート要素クラスに所有され、テストケース要素クラスが多重度０以上のテスト観点クラスに関連付けられ、テストケース要素クラスがテストケーステンプレートクラスに関連付けられ、テストケーステンプレートクラスに汎化される組合せテストケーステンプレート、遷移テストケーステンプレート及び一覧テストケーステンプレートを含む情報である。
【００６３】
テストケースメタモデル記憶部２０５は、図１０及び図１１に示すように、各部２０９〜２１７から読出／書込可能であって、設計要素を用いてテスト内容を記述したテストケースの構造を表すテストケースメタモデル２０５ａを記憶するためのＤＢＭＳ、記憶装置又は記憶装置の記憶領域である。
【００６４】
補足すると、テストケースメタモデル記憶部２０５は、テストケースメタモデル２０５ａを表すＵＭＬのクラス図、テストケースメタモデル２０５ａを構成するテストケースメタモデル要素を示すテストケースメタモデル要素データ２０５ａ１、当該テストケースメタモデル要素の属性を示すテストケースメタモデル要素属性データ２０５ａ２及びテストケーステンプレート２０５ｂが書き込まれる。
【００６５】
ここで、テストケースメタモデル２０５ａを表すＵＭＬのクラス図は、設計メタモデル２０３ａを表すクラス図内の各クラスのステレオタイプ名に代えてテストケース要素クラスに対応するステレオタイプ名をもつと共に、当該各クラスのメタモデル要素名に対するテストケース要素クラスを表すメタモデル要素名をもつ各クラスを表した情報である。
【００６６】
テストケースメタモデル要素データ２０５ａ１は、テストスイート要素クラスに対応するテストスイートＩＤの項目と値、テストケースメタモデル要素を識別するメタモデル要素ＩＤの項目と値及びテストケース要素クラスを表すメタモデル要素名の項目と値を含んでいる。
【００６７】
テストケースメタモデル要素属性データ２０５ａ２は、メタモデル要素ＩＤの項目と値、テストケースメタモデル要素の属性を識別するメタモデル要素属性ＩＤの項目と値、テストケースメタモデル要素の属性の名称を示すメタモデル要素属性名の項目と値及びテストケースメタモデル要素の属性の型を示すメタモデル要素属性型の項目と値を含んでいる。
【００６８】
テストケーステンプレート２０５ｂは、設計要素との置換部分として要素データ、要素項目データ及び要素処理データ内のいずれかの項目を含んでいるテストケースが記述されている。
【００６９】
マッピングルールメタメタモデル記憶部２０６は、図１２及び図６に示すように、各部２０９〜２１７から読出／書込可能であって、テストケースメタメタモデル２０４ａ及び設計メタメタモデル２０２ａ間の関係を表すマッピングルールメタメタモデル２０６ａを記憶するためのＤＢＭＳ、記憶装置又は記憶装置の記憶領域である。
【００７０】
ここで、マッピングルールメタメタモデル２０６ａは、設計メタメタモデル２０２ａ内の設計要素とテストケースメタメタモデル２０４ａ内のテストケース要素との関係を示す関連クラスであるマッピングルール要素クラスに汎化される組合せマッピングルール要素クラス、遷移マッピングルール要素クラス及び一覧マッピングルール要素クラスの３種類の要素がマッピングルールメタモデルにあることを表す情報である。
【００７１】
マッピングルールメタモデル記憶部２０７は、図１３及び図１４に示すように、各部２０９〜２１７から読出／書込可能であって、テストケースメタモデル２０５ａ及び設計メタモデル２０３ａ間の関連付けを表すマッピングルールメタモデル２０７ａを記憶するためのＤＢＭＳ、記憶装置又は記憶装置の記憶領域である。
【００７２】
補足すると、マッピングルールメタモデル記憶部２０７は、マッピングルールメタモデル２０７ａを表すＵＭＬのクラス図、マッピングルールメタモデル２０７ａを構成するマッピングルールメタモデル要素を示すマッピングルールメタモデル要素データ２０７ａ１、及び当該マッピングルールメタモデル要素の属性を示すマッピングルールメタモデル要素属性データ２０７ａ２が書き込まれる。
【００７３】
ここで、マッピングルールメタモデル２０７ａを表すＵＭＬのクラス図は、設計メタモデル２０３ａを表すクラス図内の各クラスと、テストケースメタモデル２０５ａを表すクラス図内の各クラスと、当該テストケースメタモデル２０５ａを表すクラス図内の各クラスが設計メタモデル２０３ａを表すクラス図内の各クラスに依存する旨を表すように依存元のクラスから依存先のクラスを結ぶ破線の矢印と、破線の矢印に近接して記述された依存先のクラスのステレオタイプ名とを表す情報である。
【００７４】
マッピングルールメタモデル要素データ２０７ａ１は、破線の矢印を識別するマッピング要素ＩＤの項目と値及び破線の矢印の名称を表すマッピング要素名の項目と値を含んでいる。
【００７５】
マッピングルールメタモデル要素属性データ２０７ａ２は、依存先のクラスを識別する設計メタモデル要素ＩＤの項目と値、依存元のクラスを識別するテストケースメタモデル要素ＩＤの項目と値、及び破線の矢印に近接して記述されたステレオタイプ名の項目と値を含んでいる。
【００７６】
テストケース記憶部２０８は、図１５に示すように、各部２０９〜２１７から読出／書込可能であって、テストケーステンプレートの置換部分がテスト対象の設計要素に置換されて生成されたテストケース２０８ｄを記憶するためのＤＢＭＳ、記憶装置又は記憶装置の記憶領域である。なお、テストケース記憶部２０８は、利用シナリオ毎にテストケース２０８ｄを含むテストケース一覧表２０８ａ、機能毎にテストケース２０８ｄを含むテストケース一覧表２０８ｂ、及び機能の組合せ毎にテストケース２０８ｄを含むテストケース一覧表２０８ｃを記憶するものとしてもよい。
【００７７】
制御部２０９は、入出力部２００及び各部２１０〜２１７を制御する機能をもっている。具体的には例えば、制御部２０９は、以下の機能(f209-1)〜(f209-3)をもっている。
【００７８】
(f209-1)  ＵＭＬのクラス図で表された設計メタメタモデル２０２ａを予め設計メタメタモデル記憶部２０２に書込む機能。
【００７９】
(f209-2)  ＵＭＬのクラス図で表されたテストケースメタメタモデル２０４ａを予めテストケースメタメタモデル記憶部２０４に書込む機能。
【００８０】
(f209-3)  ＵＭＬのクラス図で表されたマッピングルールメタメタモデル２０６ａを予めマッピングルールメタメタ記憶部２０６に書込む機能。
【００８１】
設計メタモデル登録部２１０は、入出力部２００からの設計メタモデル登録の依頼にしたがって、設計メタモデル２０３ａを設計メタモデル記憶部２０３に書き込む機能をもっている。このとき、設計メタモデル登録部２１０は、予め記憶された設計メタメタモデル２０２ａに基づき、設計メタメタモデル検証部２１１に設計メタモデル２０３ａを検証させる。具体的には例えば、設計メタモデル登録部２１０は、以下の機能(f210-1)〜(f210-4)をもっている。
【００８２】
(f210-1)  設計メタメタモデル記憶部２０２内の設計メタメタモデル２０２ａを入出力部２００にて表示することにより、設計メタモデル２０３ａを表すＵＭＬのクラス図の入力を促す機能。
【００８３】
(f210-2)  入力を受け付けた設計メタモデル２０３ａを表すＵＭＬのクラス図を設計メタモデル記憶部２０３に書込む機能。
【００８４】
(f210-3)  設計メタモデル記憶部２０３内の設計メタモデル２０３ａを表すＵＭＬのクラス図を入出力部２００にて表示することにより、設計メタモデル２０３ａを構成する設計メタモデル要素を示す設計メタモデル要素データ２０３ａ１、当該設計メタモデル要素の属性を示す設計メタモデル要素属性データ２０３ａ２及び関連先の設計メタモデル要素データ２０３ａ３の入力を促す機能。
【００８５】
(f210-4)  入力を受け付けた設計メタモデル要素データ２０３ａ１、設計メタモデル要素属性データ２０３ａ２及び関連先の設計メタモデル要素データ２０３ａ３を設計メタモデル記憶部２０３に書込む機能。
【００８６】
設計メタモデル検証部２１１は、設計メタモデル記憶部２０３内の設計メタモデル２０３ａを表すＵＭＬのクラス図、設計メタモデル要素データ２０３ａ１、設計メタモデル要素属性データ２０３ａ２及び関連先の設計メタモデル要素データ２０３ａ３に対し、設計メタメタモデル記憶部２０２内の設計メタメタモデル２０２ａに違反している箇所を含むか否かを検証する機能をもっている。
【００８７】
設計要素入力部２１２は、入出力部からの設計要素入力の依頼にしたがって、設計要素を設計要素記憶部２０１に書き込む機能をもっている。具体的には設計要素入力部２１２は、以下の機能(f212-1)〜(f212-2)をもっている。
【００８８】
(f212-1)  設計メタモデル検証部２１１による検証結果が否を示す場合、設計メタモデル記憶部２０３内の設計メタモデル２０３ａを表すＵＭＬのクラス図、設計メタモデル要素データ２０３ａ１、設計メタモデル要素属性データ２０３ａ２及び関連先の設計メタモデル要素データ２０３ａ３を入出力部２００にて表示することにより、設計要素を特定する要素データ２０１ａ１，２０１ａ４、当該設計要素の項目を示す要素項目データ２０１ａ２，２０１ａ５及び当該設計要素の処理を示す要素処理データ２０１ａ３の入力を促す機能。
【００８９】
(f212-2)  入力を受け付けた要素データ２０１ａ１，２０１ａ４、要素項目データ２０１ａ２，２０１ａ５及び要素処理データ２０１ａ３を設計要素記憶部２０１に書込む機能。
【００９０】
テストケースメタモデル登録部２１３は、入出力部２００からのテストケースメタモデル登録の依頼にしたがって、テストケースメタモデル２０５ａをテストケースメタモデル記憶部２０５に書き込む機能をもっている。なお、テストケースメタモデル登録部２１３は、テストケースメタメタモデル検証部２１４にテストケースメタモデル２０５ａを検証させる機能ももっている。具体的にはテストケースメタモデル登録部２１３は、以下の機能(f213-1)〜(f213-6)をもっている。
【００９１】
(f213-1)  テストケースメタメタモデル記憶部２０４内のテストケースメタメタモデル２０４ａを表すＵＭＬのクラス図及び設計メタモデル記憶部２０３内の設計メタモデル２０３ａを表すＵＭＬのクラス図を入出力部２００にて表示することにより、テストケースメタモデル２０５ａを表すＵＭＬのクラス図の入力を促す機能。
【００９２】
(f213-2)  入力を受け付けたテストケースメタモデル２０５ａを表すＵＭＬのクラス図をテストケースメタモデル記憶部２０５に書込む機能。
【００９３】
(f213-3)  テストケースメタモデル記憶部２０５内のテストケースメタモデル２０５ａを表すＵＭＬのクラス図を入出力部２００にて表示することにより、テストケースメタモデル２０５ａを構成するテストケースメタモデル要素を示すテストケースメタモデル要素データ２０５ａ１及び当該テストケースメタモデル要素の属性を示すテストケースメタモデル要素属性データ２０５ａ２の入力を促す機能。
【００９４】
(f213-4)  入力を受け付けたテストケースメタモデル要素データ２０５ａ１及びテストケースメタモデル要素属性データ２０５ａ２をテストケースメタモデル記憶部２０５に書込む機能。
【００９５】
(f213-5)  マッピングルールメタモデル検証部２１６による検証結果が否を示す場合、マッピングルールメタモデル記憶部２０７内のマッピングルールメタモデル２０７ａを表すクラス図とテストケースメタモデル記憶部２０５内のテストケースメタモデル要素属性データ２０５ａ２とを入出力部２００にて表示することにより、テストケースのひな型を表すテストケーステンプレート２０５ｂの入力を促す機能。
【００９６】
なお、この機能(f213-5)は、マッピングルールメタモデル記憶部２０７内のマッピングルールメタモデル２０７ａを表すクラス図とテストケースメタモデル記憶部２０５内のテストケースメタモデル要素属性データ２０５ａ２内のメタモデル要素属性名の値に含まれるテストケーステンプレート名とを入出力部２００にて表示する機能を含んでいる。
【００９７】
(f213-6)  入力を受け付けたテストケーステンプレート２０５ｂをテストケースメタモデル記憶部２０５に書込む機能。
【００９８】
テストケースメタモデル検証部２１４は、テストケースメタモデル記憶部２０５内のテストケースメタモデル２０５ａを表すＵＭＬのクラス図、テストケースメタモデル要素データ２０５ａ１及びテストケースメタモデル要素属性データ２０５ａ２に対し、テストケースメタメタモデル記憶部２０４内のテストケースメタメタモデル２０４ａに違反している箇所を含むか否かを検証する機能をもっている。
【００９９】
マッピングルールメタモデル登録部２１５は、入出力部２００からのマッピングルールメタモデル登録の依頼にしたがって、マッピングルールメタモデル２０７ａをマッピングルールメタモデル記憶部２０７に書き込む機能をもっている。なお、マッピングルールメタモデル登録部２１５は、マッピングルールメタモデル検証部２１６にマッピングルールメタモデル２０７ａを検証させる機能ももっている。具体的にはマッピングルールメタモデル登録部２１５は、以下の機能(f215-1)〜(f215-4)をもっている。
【０１００】
(f215-1)  テストケースメタモデル検証部２１４による検証結果が否を示す場合、マッピングルールメタメタモデル記憶部２０６内のマッピングルールメタメタモデル２０６ａを表すＵＭＬのクラス図、テストケースメタモデル記憶部２０５内のテストケースメタモデル２０５ａを表すＵＭＬのクラス図及び設計メタモデル記憶部２０３内の設計メタモデル２０３ａを表すＵＭＬのクラス図を入出力部２００にて表示することにより、マッピングルールメタモデル２０７ａを表すＵＭＬのクラス図の入力を促す機能。
【０１０１】
(f215-2)  入力を受け付けたマッピングルールメタモデル２０７ａを表すＵＭＬのクラス図をマッピングルールメタモデル記憶部２０７に書込む機能。
【０１０２】
(f215-3)  マッピングルールモデル記憶部２０７内のマッピングルールメタモデル２０７ａを表すＵＭＬのクラス図、設計メタモデル記憶部２０３内の設計メタモデル要素データ２０３ａ１及びテストケースメタモデル記憶部２０５内のテストケースメタモデル要素データ２０５ａ１を入出力部２００にて表示することにより、マッピングルールメタモデル２０７ａを構成するマッピングルールメタモデル要素を示すマッピングルールメタモデル要素データ２０７ａ１及び当該マッピングルールメタモデル要素の属性を示すマッピングルールメタモデル要素属性データ２０７ａ２の入力を促す機能。
【０１０３】
(f215-4)  入力を受け付けたマッピングルールメタモデル要素データ２０７ａ１及びマッピングルールメタモデル要素属性データ２０７ａ２をマッピングルールメタモデル記憶部２０７に書込む機能。
【０１０４】
マッピングメタモデル検証部２１６は、マッピングルールメタモデル記憶部２０７内のマッピングルールメタモデル２０７ａを表すＵＭＬのクラス図、マッピングルールメタモデル要素データ２０７ａ１及びマッピングルールメタモデル要素属性データ２０７ａ２に対し、マッピングルールメタメタモデル記憶部２０６内のマッピングルールメタメタモデル２０６ａに違反している箇所を含むか否かを検証する機能をもっている。
【０１０５】
テストケース生成部２１７は、入出力部２００からのテストケース生成の依頼にしたがって、テストケース２０８ｄを生成する機能をもっている。テストケース２０８ｄの生成は、設計要素２０１ａから、マッピングルールメタモデル２０７ａに基づいて、テストケース２０８ｄへのマッピングを行うことによって実現する。具体的にはテストケース生成部２１７は、以下の機能(f217-1)〜(f217-2)をもっている。
【０１０６】
(f217-1)  テストケースメタモデル記憶部２０５内のテストケーステンプレート２０５ｂの置換部分の各項目を、要素データ、要素項目データ及び要素処理データ内のいずれかの項目の値に置換してテストケース２０８ｄを生成する機能。
【０１０７】
(f217-2)  当該生成したテストケース２０８ｄをテストケース記憶部２０８に書込む機能。
【０１０８】
次に、以上のように構成されたテストケース生成装置の動作について図１６乃至図３７を用いて説明する。具体的には図１６に示すように、設計メタモデル２０３ａの作成・登録（ＳＴ１００）、設計メタモデル２０３ａの検証（ＳＴ２００）、設計要素２０１ａの作成・登録（ＳＴ３００）、テストケースメタモデル２０５ａの作成・登録（ＳＴ４００）、テストケースメタモデル２０５ａの検証（ＳＴ５００）、マッピングルールメタモデル２０７ａの作成・登録（ＳＴ６００）、マッピングルールメタモデル２０７ａの検証（ＳＴ７００）及びテストケース２０８ｄの生成（ＳＴ８００）の順に動作を述べる。また、各メタメタモデル２０２ａ，２０４ａ，２０６ａは、予め入出力部２００から制御部２０９を介して各記憶部２０２ａ，２０４ａ，２０６ａに書き込まれているとする。
【０１０９】
始めに、ステップＳＴ１００における設計メタモデル２０３ａの作成・登録の動作について図１７を用いて述べる。まず、設計メタモデル登録部２１０は、設計メタメタモデル記憶部２０２内の設計メタメタモデル２０２ａを入出力部２００にて表示することにより、設計メタモデル２０３ａを表すＵＭＬのクラス図の入力を促す。ここで、設計メタメタモデル２０２ａは、作成対象である設計メタモデル２０３ａの構造を表す。具体的には、設計メタメタモデル２０２ａは、設計メタモデルにはどのような種類の要素（全体要素、項目要素、組合せ情報、遷移情報）があり、その要素がどのように関連付けられるか（全体要素−項目要素、（全体要素、項目要素のいずれか）−組合せ情報、（全体要素、項目要素のいずれか）−遷移情報）を表している。
【０１１０】
続いて、設計メタモデル登録部２１０は、図１７に示すように、テストケース生成者による入出力部２００の操作により、入力を受け付けた設計メタモデル要素を追加していき（ＳＴ１０１〜ＳＴ１０２）、次いで、設計メタモデル要素を関連付けていく（ＳＴ１０３〜ＳＴ１０４）。このとき、テストケース生成者は、追加する設計メタモデル要素に関し、要素のステレオタイプ（どんな種類か）を設計メタメタモデル２０２ａから選択する（ＳＴ１０２）。また、テストケース生成者は、設計メタモデル要素どうしを関連付けるときに、関連付けのステレオタイプ（どんな関連付けか）を、設計メタメタモデル２０２ａから選択する（ＳＴ１０４）。
【０１１１】
しかる後、設計メタモデル要素の追加が不要になれば（ＳＴ１０１；追加不要）、設計メタモデル登録部２１０は、設計メタモデル２０３ａを登録する（ＳＴ１０５）。すなわち、設計メタモデル登録部２１０は、入力を受け付けた設計メタモデル２０３ａを表すＵＭＬのクラス図を設計メタモデル記憶部２０３に書込む。
【０１１２】
また、設計メタモデル登録部２１０は、設計メタモデル記憶部２０３内の設計メタモデル２０３ａを表すＵＭＬのクラス図を入出力部２００にて表示することにより、設計メタモデル２０３ａを構成する設計メタモデル要素を示す設計メタモデル要素データ２０３ａ１、当該設計メタモデル要素の属性を示す設計メタモデル要素属性データ２０３ａ２及び関連先の設計メタモデル要素データ２０３ａ３の入力を促す。
【０１１３】
しかる後、設計メタモデル登録部２１０は、入力を受け付けた設計メタモデル要素データ２０３ａ１、設計メタモデル要素属性データ２０３ａ２及び関連先の設計メタモデル要素データ２０３ａ３を設計メタモデル記憶部２０３に書込む。
【０１１４】
このように書き込まれた設計メタモデルの例を図１８、図１９、図２０及び図２１に示す。すなわち、図１８に示す設計メタメタモデル２０２ａに対し、図１９及び図２０に示す設計メタモデル要素データ２０３ａ１、設計メタモデル要素属性データ２０３ａ２及び関連先の設計メタモデル要素データ２０３ａ３が設計メタモデル記憶部２０３に書き込まれる。これにより、図２１に示す部分の設計メタモデル２０３ａが作成・登録される。
【０１１５】
次に、ステップＳＴ２００の設計メタモデル２０３ａの検証の動作について図２２を用いて述べる。ステップＳＴ２００では、設計メタモデル検証部２１１は、設計メタモデル記憶部２０３内の設計メタモデル２０３ａを表すＵＭＬのクラス図、設計メタモデル要素データ２０３ａ１、設計メタモデル要素属性データ２０３ａ２及び関連先の設計メタモデル要素データ２０３ａ３に対し、設計メタメタモデル記憶部２０２内の設計メタメタモデル２０２ａに違反している箇所を含むか否かを検証する。このような設計メタモデルの検証においては、設計メタモデル要素を検証し、次いで、設計メタモデル要素の関連付けを検証していくことにより、検証結果を得ることができる。検証結果には、設計メタモデル２０３ａの中で、設計メタメタモデル２０２ａに違反している箇所が含まれる。
【０１１６】
具体的には設計メタモデル検証部２１１は、図２２に示すように、メタモデル記憶部２０３内の全ての設計メタモデル要素データ２０３ａ１を取得し（ＳＴ２０１）、未検証の設計メタモデル要素データ２０３ａ１があるか否かを判定する（ＳＴ２０２）。ステップＳＴ２０２の判定結果が否の場合（ＳＴ２０２；なし）にはステップＳＴ２１３に進み、検証結果を出力して処理を終了する。
【０１１７】
ステップＳＴ２０２の判定結果が未検証のデータありを示す場合（ＳＴ２０２；あり）、設計メタモデル検証部２１１は、設計メタモデル２０３ａを表すクラス図内の各クラスのうち、当該設定メタモデル要素データ２０３ａ１のメタモデル要素名をもつクラスからステレオタイプを取得し（ＳＴ２０３）、このステレオタイプ名が設計メタメタモデル２０２ａで定義済みか否かを判定する（ＳＴ２０４）。ステップＳＴ２０４の判定結果が否の場合（ＳＴ２０４；未定義）、設計メタモデル検証部２１１は、当該設計メタモデル要素データ２０３ａ１と、ステレオタイプ名が未定義である旨とを含む検証結果を既存の検証結果に追加し（ＳＴ２０５）、ステップＳＴ２０２の処理に戻る。
【０１１８】
ステップＳＴ２０４の判定結果が定義済みを示す場合、当該設計メタモデル要素データ２０３ａ１における全ての関連先の設計メタモデル要素データ２０３ａ３を設計メタモデル記憶部２０３から取得し（ＳＴ２０６）、未検証の関連先の設計メタモデル要素データ２０３ａ３があるか否かを判定する（ＳＴ２０７）。ステップＳＴ２０７の判定結果が否の場合（ＳＴ２０７；なし）にはステップＳＴ２０２の処理に戻る。
【０１１９】
ステップＳＴ２０７の判定結果が未検証の関連先ありを示す場合（ＳＴ２０７；あり）、設計メタモデル検証部２１１は、設計メタモデル２０３ａを表すクラス図内の各クラスのうち、当該設定メタモデル要素データ２０３ａ３の関連元の設定メタモデル要素データ２０３ａ１のメタモデル要素名をもつクラスからステレオタイプを取得し（ＳＴ２０８）、当該関連先の設定メタモデル要素データ２０３ａ３のメタモデル要素名をもつクラスからステレオタイプを取得し（ＳＴ２０９）、両クラス間の関連を示す関連ステレオタイプを当該クラス図から取得する（ＳＴ２１０）。
【０１２０】
しかる後、設計メタモデル検証部２１１は、この関連ステレオタイプ名が設計メタメタモデル２０２ａで定義済みか否かを判定する（ＳＴ２１１）。ステップＳＴ２１１の判定結果が否の場合（ＳＴ２１１；未定義）、設計メタモデル検証部２１１は、当該設計メタモデル要素２０３ａ１及び関連先の設計メタモデル要素データ２０３ａ３と、両者間の関連ステレオタイプ名が未定義である旨とを含む検証結果を既存の検証結果に追加し、ステップＳＴ２０７の処理に戻る。なお、ステップＳＴ２０７の処理に戻った後、前述した通り、ステップＳＴ２０７の判定により未検証の関連先がなければ、ステップＳＴ２０２の処理に戻り、ステップＳＴ２０２の判定により未検証の設計メタモデル要素データ２０３ａ１がなければ、検証結果を出力して（ＳＴ２１３）、検証処理を終了する。
【０１２１】
次に、ステップＳＴ３００における設計要素の作成・登録の動作について図２３を用いて述べる。ステップＳＴ３００における設計要素の作成・登録は、設計メタモデル２０３ａ，２０３ａ１〜２０３ａ３で示された設計要素の構造毎に、設計要素を追加していく処理により実行される。
【０１２２】
具体的には図２３に示すように、設計要素入力部２１２は、設計メタモデル検証部２１１による検証結果が違反箇所を含まない場合、設計メタモデル記憶部２０３内の設計メタモデル２０３ａを表すＵＭＬのクラス図、設計メタモデル要素データ２０３ａ１、設計メタモデル要素属性データ２０３ａ２及び関連先の設計メタモデル要素データ２０３ａ３を取得して（ＳＴ３０１）入出力部２００にて表示する。
【０１２３】
これにより、設計要素入力部２１２は、設計要素を特定する要素データ２０１ａ１，２０１ａ４、当該設計要素の項目を示す要素項目データ２０１ａ２，２０１ａ５及び当該設計要素の処理を示す要素処理データ２０１ａ３の入力を促す。
【０１２４】
ここで、これら要素データ２０１ａ１，２０１ａ４、要素項目データ２０１ａ２，２０１ａ５及び要素処理データ２０１ａ３を未入力の設計メタモデル要素が無ければ（ＳＴ３０２；なし）、ステップＳＴ３０５に進み、登録を完了して処理を終了する。
【０１２５】
一方、未入力の設計メタモデル要素があれば（ＳＴ３０２；あり）、設計要素入力部２１２は、入出力部２００から要素データ２０１ａ１，２０１ａ４、要素項目データ２０１ａ２，２０１ａ５及び要素処理データ２０１ａ３の追加入力を受け付ける（ＳＴ３０３）。また、設計要素入力部２１２は、入力を受け付けた要素データ２０１ａ１，２０１ａ４、要素項目データ２０１ａ２，２０１ａ５及び要素処理データ２０１ａ３を設計要素記憶部２０１に書込む。
【０１２６】
しかる後、設計要素入力部２１２は、未入力の要素データ２０１ａ１，２０１ａ４、要素項目データ２０１ａ２，２０１ａ５及び要素処理データ２０１ａ３があれば（ＳＴ３０４；あり）、ステップＳＴ３０３の処理に戻る。
【０１２７】
また、設計要素入力部２１２は、未入力の要素データ２０１ａ１，２０１ａ４、要素項目データ２０１ａ２，２０１ａ５及び要素処理データ２０１ａ３がなければ（ＳＴ３０４；なし）、ステップＳＴ３０２の処理に戻る。なお、ステップＳＴ３０２の処理に戻った後、前述した通り、ステップＳＴ３０２の判定により要素データ等を未入力の設計メタモデル要素がなければ（ＳＴ３０２；なし）、登録を完了して処理を終了する（ＳＴ３０５）。
【０１２８】
ステップＳＴ４００におけるテストケースメタモデル２０５ａの作成・登録の動作について図２４を用いて述べる。まず、テストケースメタモデル登録部２１３は、テストケースメタメタモデル記憶部２０４内のテストケースメタメタモデル２０４ａを表すＵＭＬのクラス図及び設計メタモデル記憶部２０３内の設計メタモデル２０３ａを表すＵＭＬのクラス図を入出力部２００にて表示することにより、テストケースメタモデル２０５ａを表すＵＭＬのクラス図の入力を促す。ここで、テストケースメタメタモデル２０４ａは、作成対象であるテストケースメタモデル２０５ａの構造を表す。具体的には、テストケースメタメタモデル２０４ａは、テストケースメタモデル２０５ａにはどのような種類の要素（テストケース要素）があるのかを表す。なお、テストケースメタモデル２０５ａの要素同士を関連付けるという考え方はない。
【０１２９】
続いて、テストケースメタモデル登録部２１３は、図２４に示すように、テストケース生成者による入出力部２００の操作により、テストケースメタモデル要素の追加が不要となるまで（ＳＴ４０１）、入力を受け付けたテストケースメタモデル要素を追加していく（ＳＴ４０２）。また、ステップＳＴ４０２中、テストケース生成者は、テストケースメタモデル要素を追加するときに、要素のステレオタイプ（どんな種類か）を、テストケースメタメタモデル２０４ａに基づいてテストケース生成者が選択する。
【０１３０】
しかる後、テストケースメタモデル要素の追加が不要になれば（ＳＴ４０１；追加不要）、テストケースメタモデル登録部２１３は、テストケースメタモデル２０５ａを登録する（ＳＴ４０３）。すなわち、テストケースメタモデル登録部２１３は、入力を受け付けたテストケースメタモデル２０５ａを表すＵＭＬのクラス図をテストケースメタモデル記憶部２０５に書込む。
【０１３１】
また、テストケースメタモデル登録部２１３は、テストケースメタモデル記憶部２０５内のテストケースメタモデル２０５ａを表すＵＭＬのクラス図を入出力部２００にて表示することにより、テストケースメタモデル２０５ａを構成するテストケースメタモデル要素を示すテストケースメタモデル要素データ２０５ａ１及び当該テストケースメタモデル要素の属性を示すテストケースメタモデル要素属性データ２０５ａ２の入力を促す。
【０１３２】
しかる後、テストケースメタモデル登録部２１３は、入力を受け付けたテストケースメタモデル要素データ２０５ａ１及びテストケースメタモデル要素属性データ２０５ａ２をテストケースメタモデル記憶部２０５に書込む。
【０１３３】
このように書き込まれたテストケースメタモデルの例を図２５、図２６及び図２７に示す。すなわち、図２５に示すテストケースメタメタモデル２０４ａに対し、図２６に示すテストケースメタモデル要素データ２０５ａ１及びテストケースメタモデル要素属性データ２０５ａ２がテストケースメタモデル記憶部２０５に書き込まれる。これにより、図２７に示す部分のテストケースメタモデル２０５ａが作成・登録される。
【０１３４】
ステップＳＴ５００のテストケースメタモデル２０５ａの検証の動作について図２８を用いて述べる。ステップＳＴ５００では、テストケースメタモデル検証部２１４は、テストケースメタモデル記憶部２０５内のテストケースメタモデル２０５ａを表すＵＭＬのクラス図、テストケースメタモデル要素データ２０５ａ１及びテストケースメタモデル要素属性データ２０５ａ２に対し、テストケースメタメタモデル記憶部２０４内のテストケースメタメタモデル２０４ａに違反している箇所を含むか否かを検証する。このようなテストケースメタモデル２０５ａの検証においては、テストケースメタモデル要素を検証していくことで、検証結果を得ることができる。検証結果には、テストケースメタモデル２０５ａの中で、テストケースメタメタモデル２０４ａに違反している箇所が含まれる。
【０１３５】
具体的にはテストケースメタモデル検証部２１４は、テストケースモデル記憶部２０５内の全てのテストケースメタモデル要素データ２０５ａ１を取得し（ＳＴ５０１）、未検証のテストケースメタモデル要素データ２０５ａ１があるか否かを判定する（ＳＴ５０２）。ステップＳＴ５０２の判定結果が否の場合（ＳＴ５０２；なし）にはステップＳＴ５０６に進み、検証結果を出力して処理を終了する。
【０１３６】
ステップＳＴ５０２の判定結果が未検証のデータありを示す場合（ＳＴ５０２；あり）、テストケースメタモデル検証部２１４は、テストケースメタモデル２０５ａを表すクラス図内の各クラスのうち、当該テストケースメタモデル要素データ２０５ａ１のメタモデル要素名をもつクラスからステレオタイプを取得し（ＳＴ５０３）、このステレオタイプ名がテストケースメタメタモデル２０４ａで定義済みか否かを判定する（ＳＴ５０４）。ステップＳＴ５０４の判定結果が否の場合（ＳＴ５０４；未定義）、テストケースメタモデル検証部２１４は、当該テストケースメタモデル要素データ２０５ａ１と、ステレオタイプ名が未定義である旨とを含む検証結果を既存の検証結果に追加し（ＳＴ５０５）、ステップＳＴ５０２の処理に戻る。
【０１３７】
ステップＳＴ５０４の判定結果が定義済みを示す場合、テストケースメタモデル検証部２１４は、ステップＳＴ５０２の処理に戻る。なお、ステップＳＴ５０２の処理に戻った後、前述した通り、ステップＳＴ５０２の判定により未検証のテストケースメタモデル要素データ２０５ａ１がなければ、検証結果を出力して（ＳＴ５０６）、検証処理を終了する。
【０１３８】
ステップＳＴ６００におけるマッピングルールメタモデル２０７ａの作成・登録の動作について図２９を用いて述べる。始めに、マッピングルールメタモデル登録部２１５は、テストケースメタモデル検証部２１４による検証結果が違反箇所を含まない場合、設計メタモデル記憶部２０３から、マッピングの候補となる、マッピングルールメタメタモデル２０６ａで定義された３種類の設計メタモデル２０３ａの構造を持つ設計メタモデル２０３ａの組み合わせを抽出する（ＳＴ６０１）。ここで、マッピングルールメタメタモデル２０６ａは、作成対象であるマッピングルールメタモデル２０７ａの構造を表す。具体的には、マッピングルールメタメタモデル２０６ａは、マッピングルールメタモデル２０７ａが対象とする設計メタモデル２０３ａにはどのような構造があり、その設計メタモデル２０３ａがテストケースメタモデル２０５ａとどのように関連付くかを表す。
【０１３９】
続いて、マッピングルールメタモデル登録部２１５は、マッピングルールメタメタモデル記憶部２０６内のマッピングルールメタメタモデル２０６ａを表すＵＭＬのクラス図、テストケースメタモデル記憶部２０５内のテストケースメタモデル２０５ａを表すＵＭＬのクラス図及び設計メタモデル記憶部２０３内の設計メタモデル２０３ａを表すＵＭＬのクラス図を入出力部２００にて表示することにより、マッピングルールメタモデル登録部２１５は、マッピングルールメタモデル２０７ａを表すＵＭＬのクラス図の入力を促す。
【０１４０】
次いで、マッピングルールメタモデル登録部２１５は、抽出した設計メタモデル２０３ａの構造毎に、テストケース生成者による入出力部２００の操作により、マッピングルールメタモデル要素の追加が不要となるまで（ＳＴ６０２）、入力を受け付けたテストスイートメタモデル要素（ステレオタイプ全体要素をもつ設計メタモデルにマッピングするテストスイートメタモデル要素）、及びこのテストスイートメタモデル要素に関連付けるテストケースメタモデル要素を選択し（ＳＴ６０３，ＳＴ６０４）、テストケースメタモデル要素と、抽出した設計メタモデル要素の残りとを関連付けていく（ＳＴ６０５）。
【０１４１】
しかる後、マッピングルールメタモデル要素の追加が不要になれば（ＳＴ６０２；追加不要）、マッピングルールメタモデル２０７ａを登録する（ＳＴ６０６）。すなわち、マッピングルールメタモデル登録部２１５は、マッピングルールメタモデル登録部２１５は、入力を受け付けたマッピングルールメタモデル２０７ａを表すＵＭＬのクラス図をマッピングルールメタモデル記憶部２０７に書込む。
【０１４２】
また、マッピングルールメタモデル登録部２１５は、マッピングルールモデル記憶部２０７内のマッピングルールメタモデル２０７ａを表すＵＭＬのクラス図、設計メタモデル記憶部２０３内の設計メタモデル要素データ２０３ａ１及びテストケースメタモデル記憶部２０５内のテストケースメタモデル要素データ２０５ａ１を入出力部２００にて表示することにより、マッピングルールメタモデル２０７ａを構成するマッピングルールメタモデル要素を示すマッピングルールメタモデル要素データ２０７ａ１及び当該マッピングルールメタモデル要素の属性を示すマッピングルールメタモデル要素属性データ２０７ａ２の入力を促す。
【０１４３】
しかる後、マッピングルールメタモデル登録部２１５は、入力を受け付けたマッピングルールメタモデル要素データ２０７ａ１及びマッピングルールメタモデル要素属性データ２０７ａ２をマッピングルールメタモデル記憶部２０７に書込む。
【０１４４】
このように書き込まれたマッピングルールメタモデルの例を図３０、図３１及び図３２に示す。図３０に示すマッピングルールメタメタモデル２０６ａに対し、図３１に示すマッピングルールメタモデル要素データ２０７ａ１及びマッピングルールメタモデル要素属性データ２０７ａ２がマッピングルールメタモデル記憶部２０７に書き込まれる。これにより、図３２に示す部分のマッピングルールメタモデル２０７ａが作成・登録される。
【０１４５】
ステップＳＴ７００のマッピングルールメタモデル２０７ａの検証の動作について図３３を用いて述べる。ステップＳＴ７００では、マッピングメタモデル検証部２１６は、マッピングルールメタモデル記憶部２０７内のマッピングルールメタモデル２０７ａを表すＵＭＬのクラス図、マッピングルールメタモデル要素データ２０７ａ１及びマッピングルールメタモデル要素属性データ２０７ａ２に対し、マッピングルールメタメタモデル記憶部２０６内のマッピングルールメタメタモデル２０６ａに違反している箇所を含むか否かを検証する。このようなマッピングルールメタモデル２０７ａの検証においては、マッピングルールメタモデル要素を検証し、次いで、マッピングルールメタモデル要素の関連付けを検証していくことで、検証結果を得ることができる。検証結果には、マッピングルールメタモデル２０７ａの中で、マッピングルールメタメタモデル２０６ａに違反している箇所が含まれる。
【０１４６】
具体的にはマッピングルールメタモデル検証部２１６は、図３３に示すように、マッピングルールメタモデル記憶部２０７内の全てのマッピングルールメタモデル要素データ２０７ａ１を取得し（ＳＴ７０１）、未検証のマッピングルールメタモデル要素データ２０７ａ１があるか否かを判定する（ＳＴ７０２）。ステップＳＴ７０２の判定結果が否の場合（ＳＴ７０２；なし）にはステップＳＴ７１２に進み、検証結果を出力して処理を終了する。
【０１４７】
ステップＳＴ７０２の判定結果が未検証のデータありを示す場合（ＳＴ７０２；あり）、マッピングルールメタモデル検証部２１６は、未検証のマッピングルールメタモデル要素データ２０７ａ１が設計メタモデル２０３ａ又はテストケースメタモデル２０５ａで定義済みか否かを判定する（ＳＴ７０３）。ステップＳＴ７０３の判定結果が否の場合（ＳＴ７０３；未定義）、マッピングルールメタモデル検証部２１４は、当該マッピングルールメタモデル要素データ２０７ａ１が未定義である旨を含む検証結果を既存の検証結果に追加し（ＳＴ７０４）、ステップＳＴ７０２の処理に戻る。
【０１４８】
ステップＳＴ７０３の判定結果が定義済みを示す場合、当該マッピングルールメタモデル要素データ２０７ａ１における全ての関連先のメタモデル要素データ２０３ａ１をメタモデル記憶部２０３から取得し（ＳＴ７０５）、未検証の関連先のメタモデル要素データ２０３ａ１があるか否かを判定する（ＳＴ７０６）。ステップＳＴ７０６の判定結果が否の場合（ＳＴ７０６；なし）にはステップＳＴ７０２の処理に戻る。
【０１４９】
ステップＳＴ７０６の判定結果が未検証の関連先ありを示す場合（ＳＴ７０６；あり）、マッピングルールメタモデル検証部２１６は、マッピングルールメタモデル２０７ａを表すクラス図内の各クラスのうち、当該マッピングルールメタモデル要素データ２０３ａ３の関連元のテストケースメタモデル要素データ２０５ａ１のメタモデル要素名をもつクラスからステレオタイプを取得し（ＳＴ７０７）、当該関連先の設定メタモデル要素データ２０３ａ１のメタモデル要素名をもつクラスからステレオタイプを取得し（ＳＴ７０８）、両クラス間の関連を示す関連ステレオタイプを当該クラス図から取得する（ＳＴ７０９）。
【０１５０】
しかる後、マッピングルールメタモデル検証部２１６は、この関連ステレオタイプ名がマッピングルールメタメタモデル２０６ａで定義済みか否かを判定する（ＳＴ７１０）。ステップＳＴ７１０の判定結果が否の場合（ＳＴ７１０；未定義）、マッピングルールメタモデル検証部２１６は、当該テストケースメタモデル要素２０５ａ１及び関連先の設計メタモデル要素データ２０３ａ１と、両者間の関連ステレオタイプ名が未定義である旨とを含む検証結果を既存の検証結果に追加し（ＳＴ７１１）、ステップＳＴ７０６の処理に戻る。なお、ステップＳＴ７０６の処理に戻った後、前述した通り、ステップＳＴ７０６の判定により未検証の関連先がなければ、ステップＳＴ７０２の処理に戻り、ステップＳＴ７０２の判定により未検証のマッピングルールメタモデル要素データ２０７ａ１がなければ、検証結果を出力して（ＳＴ７１２）、検証処理を終了する。
【０１５１】
なお、マッピングルールメタモデル検証部２１６による検証結果が違反箇所を含まない場合、テストケースメタモデル登録部２１３は、マッピングルールメタモデル記憶部２０７内のマッピングルールメタモデル２０７ａを表すクラス図とテストケースメタモデル記憶部２０５内のテストケースメタモデル要素属性データ２０５ａ２とを入出力部２００にて表示することにより、テストケースのひな型を表すテストケーステンプレート２０５ｂの入力を促す。なお、入出力部２００による表示は、マッピングルールメタモデル記憶部２０７内のマッピングルールメタモデル２０７ａを表すクラス図とテストケースメタモデル記憶部２０５内のテストケースメタモデル要素属性データ２０５ａ２内のメタモデル要素属性名の値に含まれるテストケーステンプレート名とを含んでいる。
【０１５２】
しかる後、テストケースメタモデル登録部２１３は、入力を受け付けたテストケーステンプレート２０５ｂをテストケースメタモデル記憶部２０５に書込む。
【０１５３】
次に、ステップＳＴ８００のテストケース２０８ｄの生成の動作について図３４を用いて述べる。ステップＳＴ８００では、テストケース生成部２１７は、テストケースメタモデル記憶部２０５内のテストケーステンプレート２０５ｂの置換部分の各項目を、要素データ２０１ａ１，２０１ａ４、要素項目データ２０１ａ２，２０１ａ５及び要素処理データ２０１ａ３内のいずれかの項目の値に置換してテストケース２０８ｄを生成する。このようなテストケース２０８ｄの生成は、全てのテストスイートメタモデル要素の、全てのテストケースメタモデル要素に対して行う。テストケースメタモデル要素には、テストケーステンプレート２０５ｂがある。そのテンプレート２０５ｂの可変部分を、設計要素で置換していくことで、テストケース２０８ｄを生成する。
【０１５４】
具体的にはテストケース生成部２１７は、図３４に示すように、テストケースメタモデル記憶部２０５内の全てのテストスイートメタモデル要素を取得し（ＳＴ８０１）、未生成のテストスイートメタモデル要素があるか否かを判定する（ＳＴ８０２）。ステップＳＴ８０２の判定結果が否の場合（ＳＴ８０２；なし）にはステップＳＴ８１２に進み、テストケースを出力して処理を終了する。
【０１５５】
ステップＳＴ８０２の判定結果が未生成のテストスイートメタモデル要素ありを示す場合（ＳＴ８０２；あり）、テストケース生成部２１７は、当該テストスイートメタモデル要素に関連付く全てのテストケースメタモデル要素２０８ａ１をテストケースメタモデル記憶部２０５から取得する（ＳＴ８０３）。
【０１５６】
次に、テストケース生成部２１７は、未生成のテストケースメタモデル要素があるか否かを判定し（ＳＴ８０４）、判定結果が否の場合（ＳＴ８０４；なし）にはステップＳＴ８０２に戻る。
【０１５７】
ステップＳＴ８０４の判定結果が未生成のテストケースメタモデル要素ありを示す場合（ＳＴ８０４；あり）、テストケース生成部２１７は、当該テストケースメタモデル要素に関連付くテストケーステンプレート２０５ｂをテストケースメタモデル記憶部２０５から取得する（ＳＴ８０５）。
【０１５８】
続いて、テストケース生成部２１７は、テストスイートメタモデル要素に関連付く設計メタモデル要素に基づく設計要素を設計要素記憶部２０１から取得し（ＳＴ８０６）、テストケースメタモデル要素に関連付く設計要素を設計要素記憶部２０１から取得する（ＳＴ８０７）。
【０１５９】
しかる後、テストケース生成部２１７は、テストケーステンプレート２０５ｂ内に未変換の可変部分があるか否かを判定し（ＳＴ８０８）、可変部分があれば、当該可変部分に対応する設計要素を構成する要素データ２０１ａ１，２０１ａ４、要素項目データ２０１ａ２，２０１ａ５及び要素処理データ２０１ａ３を取得し（ＳＴ８０９）、テストケーステンプレート２０５ｂの置換部分の各項目を、要素データ２０１ａ１，２０１ａ４、要素項目データ２０１ａ２，２０１ａ５及び要素処理データ２０１ａ３内のいずれかの項目の値に置換する（ＳＴ８１０）。
【０１６０】
ステップＳＴ８０８の判定の結果、未変換の可変部分がなければ（ＳＴ８０８；なし）、テストケース生成部２１７は、全ての可変部分を置換後のテストケーステンプレート２０５ｂをテストケース２０８ｄとして生成し、当該生成したテストケース２０８ｄをテストケース記憶部２０８に追加（書込み）して、ステップＳＴ８０４に戻る。
【０１６１】
なお、ステップＳＴ８０４の処理に戻った後、テストケース生成部２１７は、前述した通り、ステップＳＴ８０４の判定により、未生成のテストケースメタモデル要素がなければ（ＳＴ８０４；なし）、ステップＳＴ８０２に戻り、未生成のテストスイートメタモデル要素がなければ（ＳＴ８０２；なし）、テストケース２０８ｄを出力して（ＳＴ８１２）、処理を終了する。
【０１６２】
このようにテストケースを生成する例を図３５、図３６及び図３７に示す。すなわち、図３５に示すテストケーステンプレート２０５ｂの置換部分の各項目を、図３６に示す要素データ２０１ａ１，２０１ａ４、要素項目データ２０１ａ２，２０１ａ５及び要素処理データ２０１ａ３内のいずれかの項目の値に置換する。このような置換後のテストケーステンプレート２０５ｂとして、図３７に示すテストケース２０５ｂが生成される。
【０１６３】
上述したように本実施形態によれば、テスト対象の設計書に記述された画面又はデータに対応する設計要素２０１ａの構造を表す設計メタモデル２０３ａと、設計メタモデル２０３ａの構造を表す設計メタメタモデル２０２ａと、設計要素２０１ａを用いてテスト内容を記述したテストケース２０８ｄの構造を表すテストケースメタモデル２０５ａと、テストケースメタモデル２０５ａの構造を表すテストケースメタメタモデル２０４ａと、テストケースメタメタモデル２０４ａ及び設計メタメタモデル２０２ａ間の関係を表すマッピングルールメタメタモデル２０６ａと、テストケースメタモデル２０５ａ及び設計メタモデル２０３ａ間の関連付けを表すマッピングルールメタモデル２０７ａとを用い、設計要素２０１ａとの置換部分を含んでテストケース２０８ｄのひな型を表すテストケーステンプレート２０５ｂを準備する構成により、テストケース生成の際に、未熟な作業者に対してもテストケースの漏れの発生を無くすことができる。
【０１６４】
また、本実施形態によれば、設計要素２０１ａ及びテストケーステンプレート２０５ｂに基づいてテストケース２０８ｄを生成する構成により、テスト対象からテストケースを生成する作業を自動化することができる。
【０１６５】
また、メタメタモデル２０２ａ，２０４ａ，２０６ａを利用することにより、設計メタモデル２０３ａ、テストケースメタモデル２０５ａ、マッピングルールメタモデル２０７ａの作成が容易になり、作成したメタモデル２０３ａ，２０５ａ，２０７ａの検証が可能になる。
【０１６６】
さらに、テストケース生成者のノウハウや経験を、設計メタモデル２０３ａ、テストケースメタモデル２０５ａ、マッピングルールメタモデル２０７ａという形で形式知化して蓄積することができるため、生成されるテストケース２０８ｄのバラつきがなくなり、テストケース２０８ｄの品質を向上させることができる。
【０１６７】
補足すると、本実施形態は、特許文献１に記載の技術とは異なり、固定のテストシナリオ作成ルールを持たないことから、テストシナリオ生成の適用範囲が限定されない。また、本実施形態は、特許文献２に記載の技術とは異なり、テスト仕様書のテンプレートをテストのパターン毎に用意しないことから、テスト仕様書テンプレートの作成に手間がかからない。
【０１６８】
また、本実施形態の設計要素２０１ａ、設計メタモデル２０３ａ、設計メタメタモデル２０２ａ、テストケースメタモデル２０５ａ、テストケースメタメタモデル２０４ａ、マッピングルールメタモデル２０７ａ、マッピングルールメタメタモデル２０６ａ及びテストケース２０８ｄは、ＤＢＭＳに格納してもよく、表形式のファイルに格納してもよい。
【０１６９】
また、本実施形態の設計メタメタモデル２０２ａでは、３種類の構造（一覧、遷移、組合）を対象にしているが、その他の構造としてもよい。また、本実施形態のマッピングルールメタメタモデル２０６ａでは、設計メタメタモデル２０２ａの３種類の構造毎に一つずつ計３種類のマッピングの構造を定義しているが、その他のマッピングの構造を定義してもよい。
【０１７０】
また、本実施形態は、設計メタメタモデル２０２ａの組合せ構造に基づいて、設計メタモデル２０３ａを構築する際に、二つの設計メタモデル要素を選択して組み合わせているが、三つ以上で組み合わせることもできる。
【０１７１】
なお、上記の各実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク（フロッピー（登録商標）ディスク、ハードディスクなど）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤなど）、光磁気ディスク（ＭＯ）、半導体メモリなどの記憶媒体に格納して頒布することもできる。
【０１７２】
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。
【０１７３】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているＯＳ（オペレーティングシステム）や、データベース管理ソフト、ネットワークソフト等のＭＷ（ミドルウェア）等が上記実施形態を実現するための各処理の一部を実行しても良い。
【０１７４】
さらに、各実施形態における記憶媒体は、コンピュータと独立した媒体に限らず、ＬＡＮやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
【０１７５】
また、記憶媒体は１つに限らず、複数の媒体から上記の各実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。
【０１７６】
なお、各実施形態におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、上記の各実施形態における各処理を実行するものであって、パソコン等の１つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
【０１７７】
また、各実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【０１７８】
なお、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１７９】
２００…入出力部、２０１…設計要素記憶部、２０１ａ…設計要素、２０１ａ１，２０１ａ４…要素データ、２０１ａ２，２０１ａ５…要素項目データ、２０１ａ３…要素処理データ、２０２…設計メタメタモデル記憶部、２０２ａ…設計メタメタモデル、２０３…設計メタモデル記憶部、２０３ａ…設計メタモデル、２０３ａ１…設計メタモデル要素データ、２０３ａ２…設計メタモデル要素属性データ、２０３ａ３…関連先の設計メタモデル要素データ、２０４…テストケースメタメタモデル記憶部、２０４ａ…テストケースメタメタモデル、２０５…テストケースメタモデル記憶部、２０５ａ…テストケースメタモデル、２０５ａ１…テストケースメタモデル要素データ、２０５ａ２…テストケースメタモデル要素属性データ、２０５ｂ…テストケーステンプレート、２０６…マッピングルールメタメタモデル記憶部、２０６ａ…マッピングルールメタメタモデル、２０７…マッピングルールメタモデル記憶部、２０７ａ…マッピングルールメタモデル、２０７ａ１…マッピングルールメタモデル要素データ、２０７ａ２…マッピングルールメタモデル要素属性データ、２０８…テストケース記憶部、２０８ａ〜２０８ｃ…テストケース一覧表、２０８ｄ…テストケース、２０９…制御部、２１０…設計メタモデル登録部、２１１…設計メタモデル検証部、２１２…設計要素入力部、２１３…テストケースメタモデル登録部、２１４…テストケースメタモデル検証部、２１５…マッピングルールメタモデル登録部、２１６…マッピングルールメタモデル検証部、２１７…テストケース生成部。
【図１】
0005487180.tif 000002
【図２】
0005487180.tif 000003
【図３】
0005487180.tif 000004
【図４】
0005487180.tif 000005
【図５】
0005487180.tif 000006
【図６】
0005487180.tif 000007
【図７】
0005487180.tif 000008
【図８】
0005487180.tif 000009
【図９】
0005487180.tif 000010
【図１０】
0005487180.tif 000011
【図１１】
0005487180.tif 000012
【図１２】
0005487180.tif 000013
【図１３】
0005487180.tif 000014
【図１４】
0005487180.tif 000015
【図１５】
0005487180.tif 000016
【図１６】
0005487180.tif 000017
【図１７】
0005487180.tif 000018
【図１８】
0005487180.tif 000019
【図１９】
0005487180.tif 000020
【図２０】
0005487180.tif 000021
【図２１】
0005487180.tif 000022
【図２２】
0005487180.tif 000023
【図２３】
0005487180.tif 000024
【図２４】
0005487180.tif 000025
【図２５】
0005487180.tif 000026
【図２６】
0005487180.tif 000027
【図２７】
0005487180.tif 000028
【図２８】
0005487180.tif 000029
【図２９】
0005487180.tif 000030
【図３０】
0005487180.tif 000031
【図３１】
0005487180.tif 000032
【図３２】
0005487180.tif 000033
【図３３】
0005487180.tif 000034
【図３４】
0005487180.tif 000035
【図３５】
0005487180.tif 000036
【図３６】
0005487180.tif 000037
【図３７】
0005487180.tif 000038