意味モデル生成プログラムおよび意味モデル生成装置
【課題】ソフトウェアのモデルを表すデータを、ソースコードの自動生成に適合するように生成し、ソフトウェアの生産性を向上させる。
【解決手段】メタモデルは、ソフトウェアが含む部品をメタモデル化したメタ部品クラスの定義を含み、UMLで表記された第1のクラス図により、ソフトウェアをメタモデル化して表すものである。プログラムにしたがってコンピュータは、メタモデルを取得し、ソフトウェアに含まれる部品を表す部品クラスを、メタ部品クラスのサブクラスとして定義することにより、ソフトウェアをメタモデルにしたがってモデル化したモデルを、部品クラスを含みUMLで表記される第2のクラス図として生成する。コンピュータはさらに、部品クラスからメタ部品クラスへの汎化とメタモデルに基づいて、部品クラスが部品をモデル化したクラスであるという第2のクラス図の意味を形式言語により表す意味モデルを生成する。
【解決手段】メタモデルは、ソフトウェアが含む部品をメタモデル化したメタ部品クラスの定義を含み、UMLで表記された第1のクラス図により、ソフトウェアをメタモデル化して表すものである。プログラムにしたがってコンピュータは、メタモデルを取得し、ソフトウェアに含まれる部品を表す部品クラスを、メタ部品クラスのサブクラスとして定義することにより、ソフトウェアをメタモデルにしたがってモデル化したモデルを、部品クラスを含みUMLで表記される第2のクラス図として生成する。コンピュータはさらに、部品クラスからメタ部品クラスへの汎化とメタモデルに基づいて、部品クラスが部品をモデル化したクラスであるという第2のクラス図の意味を形式言語により表す意味モデルを生成する。
Notice: Undefined index: DEJ in /mnt/www/gzt_disp.php on line 298
【特許請求の範囲】
【請求項1】
コンピュータに、
ソフトウェアが含む部品をメタモデル化したメタ部品クラスの定義を含み、UMLで表記された第1のクラス図により、前記ソフトウェアをメタモデル化して表すメタモデルを取得するメタモデル取得ステップと、
前記ソフトウェアに含まれる部品を表す部品クラスを、前記メタ部品クラスのサブクラスとして定義することにより、前記ソフトウェアを前記メタモデルにしたがってモデル化したモデルを、前記部品クラスを含み前記UMLで表記される第2のクラス図として生成するクラス図生成ステップと、
前記部品クラスから前記メタ部品クラスへの汎化と前記メタモデルに基づいて、前記第2のクラス図における前記部品クラスが前記部品をモデル化したクラスであるという前記第2のクラス図の意味を所定の形式言語により表す意味モデルを生成する意味モデル生成ステップと、
を実行させることを特徴とする意味モデル生成プログラム。
【請求項2】
前記第1のクラス図は、前記部品間の通信のインタフェースをメタモデル化したメタインタフェースクラスの定義をさらに含み、
前記クラス図生成ステップは、
前記部品間の前記通信の前記インタフェースをモデル化したインタフェースクラスを、前記メタインタフェースクラスのサブクラスとして、前記第2のクラス図において定義するインタフェース定義ステップと、
前記インタフェースクラスとの間の関係を用いて、前記部品間の前記通信を前記第2のクラス図において表記するインタフェース表記ステップと、
を含み、
前記意味モデル生成ステップは、前記第2のクラス図における前記インタフェースクラスとの間の前記関係を、前記インタフェースクラスから前記メタインタフェースクラスへの汎化に基づいて、前記部品間の前記インタフェースを介した前記通信を意味する前記所定の形式言語の第1のコードで表現し、前記意味モデルに前記第1のコードを含めるインタフェース解釈ステップを含む、
ことを特徴とする請求項1に記載の意味モデル生成プログラム。
【請求項3】
前記第1のクラス図には、前記メタ部品クラスに含まれるクラスとして、メタ通信ポートクラスが定義されており、
前記クラス図生成ステップは、前記第2のクラス図において、前記部品クラスを、前記メタ通信ポートクラスまたは前記メタ通信ポートクラスのサブクラスとして定義される通信ポートクラスのいずれかのオブジェクトである通信ポートオブジェクトを含むように定義する通信ポート定義ステップをさらに含み、
前記インタフェース表記ステップは、前記部品クラスに含まれる前記通信ポートオブジェクトから前記インタフェースクラスへの依存を用いて、前記部品間の前記インタフェースを介した前記通信を前記第2のクラス図において表記するステップである、
ことを特徴とする請求項2に記載の意味モデル生成プログラム。
【請求項4】
前記クラス図生成ステップは、
前記部品クラスを新規作成するための第1の指示を受け取り、前記第1の指示を契機として、前記メタ部品クラスのサブクラスを前記部品クラスとして前記第2のクラス図内に作成する部品定義ナビゲーションステップ、または
前記第2のクラス図内に作成された任意の第1のクラスから前記メタ部品クラスへの汎化を追加するための第2の指示を受け取り、前記第2の指示を契機として、前記第1のクラスを前記部品クラスとして定義しなおす部品事後定義ステップ
を含むことを特徴とする請求項1〜3のいずれか1項に記載の意味モデル生成プログラム。
【請求項5】
前記インタフェース定義ステップは、
前記インタフェースクラスを新規作成するための第3の指示を受け取り、前記第3の指示を契機として、前記メタインタフェースクラスのサブクラスを前記インタフェースクラスとして前記第2のクラス図内に作成するインタフェース定義ナビゲーションステップ、または
前記第2のクラス図内に作成された任意の第2のクラスから前記メタインタフェースクラスへの汎化を追加するための第4の指示を受け取り、前記第4の指示を契機として、前記第2のクラスを前記インタフェースクラスとして定義しなおすインタフェース事後定義ステップ
を含むことを特徴とする請求項2または3に記載の意味モデル生成プログラム。
【請求項6】
ソフトウェアが含む部品をメタモデル化したメタ部品クラスの定義を含み、UMLで表記された第1のクラス図により、前記ソフトウェアをメタモデル化して表すメタモデルを格納する格納手段と、
前記格納手段から前記メタモデルを読み出して、前記ソフトウェアに含まれる部品を表す部品クラスを、前記メタ部品クラスのサブクラスとして定義することにより、前記ソフトウェアを前記メタモデルにしたがってモデル化したモデルを、前記部品クラスを含み前記UMLで表記される第2のクラス図として生成するクラス図生成手段と、
前記部品クラスから前記メタ部品クラスへの汎化と前記メタモデルに基づいて、前記第2のクラス図における前記部品クラスが前記部品をモデル化したクラスであるという前記第2のクラス図の意味を所定の形式言語により表す意味モデルを生成する意味モデル生成手段と、
を備えることを特徴とする意味モデル生成装置。
【請求項1】
コンピュータに、
ソフトウェアが含む部品をメタモデル化したメタ部品クラスの定義を含み、UMLで表記された第1のクラス図により、前記ソフトウェアをメタモデル化して表すメタモデルを取得するメタモデル取得ステップと、
前記ソフトウェアに含まれる部品を表す部品クラスを、前記メタ部品クラスのサブクラスとして定義することにより、前記ソフトウェアを前記メタモデルにしたがってモデル化したモデルを、前記部品クラスを含み前記UMLで表記される第2のクラス図として生成するクラス図生成ステップと、
前記部品クラスから前記メタ部品クラスへの汎化と前記メタモデルに基づいて、前記第2のクラス図における前記部品クラスが前記部品をモデル化したクラスであるという前記第2のクラス図の意味を所定の形式言語により表す意味モデルを生成する意味モデル生成ステップと、
を実行させることを特徴とする意味モデル生成プログラム。
【請求項2】
前記第1のクラス図は、前記部品間の通信のインタフェースをメタモデル化したメタインタフェースクラスの定義をさらに含み、
前記クラス図生成ステップは、
前記部品間の前記通信の前記インタフェースをモデル化したインタフェースクラスを、前記メタインタフェースクラスのサブクラスとして、前記第2のクラス図において定義するインタフェース定義ステップと、
前記インタフェースクラスとの間の関係を用いて、前記部品間の前記通信を前記第2のクラス図において表記するインタフェース表記ステップと、
を含み、
前記意味モデル生成ステップは、前記第2のクラス図における前記インタフェースクラスとの間の前記関係を、前記インタフェースクラスから前記メタインタフェースクラスへの汎化に基づいて、前記部品間の前記インタフェースを介した前記通信を意味する前記所定の形式言語の第1のコードで表現し、前記意味モデルに前記第1のコードを含めるインタフェース解釈ステップを含む、
ことを特徴とする請求項1に記載の意味モデル生成プログラム。
【請求項3】
前記第1のクラス図には、前記メタ部品クラスに含まれるクラスとして、メタ通信ポートクラスが定義されており、
前記クラス図生成ステップは、前記第2のクラス図において、前記部品クラスを、前記メタ通信ポートクラスまたは前記メタ通信ポートクラスのサブクラスとして定義される通信ポートクラスのいずれかのオブジェクトである通信ポートオブジェクトを含むように定義する通信ポート定義ステップをさらに含み、
前記インタフェース表記ステップは、前記部品クラスに含まれる前記通信ポートオブジェクトから前記インタフェースクラスへの依存を用いて、前記部品間の前記インタフェースを介した前記通信を前記第2のクラス図において表記するステップである、
ことを特徴とする請求項2に記載の意味モデル生成プログラム。
【請求項4】
前記クラス図生成ステップは、
前記部品クラスを新規作成するための第1の指示を受け取り、前記第1の指示を契機として、前記メタ部品クラスのサブクラスを前記部品クラスとして前記第2のクラス図内に作成する部品定義ナビゲーションステップ、または
前記第2のクラス図内に作成された任意の第1のクラスから前記メタ部品クラスへの汎化を追加するための第2の指示を受け取り、前記第2の指示を契機として、前記第1のクラスを前記部品クラスとして定義しなおす部品事後定義ステップ
を含むことを特徴とする請求項1〜3のいずれか1項に記載の意味モデル生成プログラム。
【請求項5】
前記インタフェース定義ステップは、
前記インタフェースクラスを新規作成するための第3の指示を受け取り、前記第3の指示を契機として、前記メタインタフェースクラスのサブクラスを前記インタフェースクラスとして前記第2のクラス図内に作成するインタフェース定義ナビゲーションステップ、または
前記第2のクラス図内に作成された任意の第2のクラスから前記メタインタフェースクラスへの汎化を追加するための第4の指示を受け取り、前記第4の指示を契機として、前記第2のクラスを前記インタフェースクラスとして定義しなおすインタフェース事後定義ステップ
を含むことを特徴とする請求項2または3に記載の意味モデル生成プログラム。
【請求項6】
ソフトウェアが含む部品をメタモデル化したメタ部品クラスの定義を含み、UMLで表記された第1のクラス図により、前記ソフトウェアをメタモデル化して表すメタモデルを格納する格納手段と、
前記格納手段から前記メタモデルを読み出して、前記ソフトウェアに含まれる部品を表す部品クラスを、前記メタ部品クラスのサブクラスとして定義することにより、前記ソフトウェアを前記メタモデルにしたがってモデル化したモデルを、前記部品クラスを含み前記UMLで表記される第2のクラス図として生成するクラス図生成手段と、
前記部品クラスから前記メタ部品クラスへの汎化と前記メタモデルに基づいて、前記第2のクラス図における前記部品クラスが前記部品をモデル化したクラスであるという前記第2のクラス図の意味を所定の形式言語により表す意味モデルを生成する意味モデル生成手段と、
を備えることを特徴とする意味モデル生成装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9A】
【図9B】
【図9C】
【図9D】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9A】
【図9B】
【図9C】
【図9D】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【公開番号】特開2011−48796(P2011−48796A)
【公開日】平成23年3月10日(2011.3.10)
【国際特許分類】
【出願番号】特願2009−198983(P2009−198983)
【出願日】平成21年8月28日(2009.8.28)
【出願人】(309033839)株式会社富士通コンピュータテクノロジーズ (8)
【Fターム(参考)】
【公開日】平成23年3月10日(2011.3.10)
【国際特許分類】
【出願日】平成21年8月28日(2009.8.28)
【出願人】(309033839)株式会社富士通コンピュータテクノロジーズ (8)
【Fターム(参考)】
[ Back to top ]