(57)【要約】本発明は、モデルに含まれる各部品の下位部品まで考慮することにより、より適正な類似度を求めることを目的とする。ひいては、本発明によれば、より効率的な情報システム構築を行なうことが可能となる。  情報処理装置１０００は、モデル格納部１０と、部品対応判定部２０と類似度算出部３０を含む。このうち、モデル格納部１０は、少なくとも１つの部品を含むシステムモデルを格納する。また、部品対応判定部２０は、部品に含まれる下位部品の共通性に基づいて、モデル格納部１０から読出した２つのシステムモデルＡ、Ｂに含まれる部品間の対応関係を判定する。更に、類似度算出部３０は、部品対応判定部２０で判定された部品間の対応関係に基づいて、２つのシステムモデルの類似度を計算する。
2011115024.tif 000002
【特許請求の範囲】
【請求項１】
２つのシステムモデルに含まれる部品間の対応関係を、前記部品に含まれる下位部品の共通性に基づいて判定する判定手段と、
前記判定手段で判定された部品間の対応関係に基づいて、前記２つのシステムモデルの類似度を算出する類似度算出手段と、
を含む情報処理装置。
【請求項２】
前記判定手段は、前記下位部品の共通性を用いて判定された部品間の対応関係を示すデータである対応度を算出して出力し、
前記類似度算出手段は、前記対応度を用いて前記システムモデルの類似度を算出する
請求項１に記載の情報処理装置。
【請求項３】
前記類似度算出手段は、前記対応度のうち予め定められた閾値を超える対応度である第２の対応度を用いて前記システムモデルの類似度を算出する、
請求項２に記載の情報処理装置。
【請求項４】
前記判定手段は、第１システムモデルに含まれる第１部品と第２システムモデルに含まれる第２部品との前記対応関係を判定する場合に、前記第１部品に含まれる下位部品と前記第２部品に含まれる下位部品とを比較し、一致する下位部品がいくつあるかに基づいて前記対応度を算出する、
請求項２又は３に記載の情報処理装置。
【請求項５】
一方のモデルに含まれる少なくとも２つの部品が他方のモデルに含まれる少なくとも１つの部品と対応関係にあるときに、その複数の部品をまとめて１つの部品とみなした場合の前記対応関係を判定する複数部品集約部と、をさらに含み、
前記類似度算出手段は、前記対応関係の判定結果に基づいて類似度を算出する、
請求項１乃至４の何れか１項に記載の情報処理装置。
【請求項６】
前記類似度算出手段で算出した類似度に基づいてモデルを検索する検索手段と、
をさらに含む請求項１乃至５の何れか１項に記載の情報処理装置。
【請求項７】
前記システムモデルを特定する情報と、前記システムモデルに含まれる部品を表わす情報と、各部品に含まれる下位部品を表わす情報とを対応付けて格納しているモデル格納手段と、
をさらに含む請求項１乃至６の何れか１項に記載の情報処理装置。
【請求項８】
前記部品は、ハードウェア部品であって、前記下位部品は、そのハードウェア部品に含まれるソフトウェア部品である、
請求項１乃至７の何れか１項に記載の情報処理装置。
【請求項９】
２つのシステムモデルに含まれる部品間の対応関係を、前記部品に含まれる下位部品の共通性に基づいて判定し、
判定された前記部品間の対応関係に基づいて、前記２つのシステムモデルの類似度を算出する、
情報処理方法。
【請求項１０】
２つのシステムモデルに含まれる部品間の対応関係を、前記部品に含まれる下位部品の共通性に基づいて判定する判定ステップと、
判定された前記部品間の対応関係に基づいて、前記２つのシステムモデルの類似度を算出する算出ステップと、
をコンピュータに実行させる情報処理プログラムを格納するプログラム記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報システムの構築補助を行なう技術に関する。
【背景技術】
【０００２】
情報システムの構築補助を行なう技術の一例が、特許文献１及び２に記載されている。特許文献１の技術は、統一的なモデル記述言語であるＵＭＬ（Ｕｎｉｆｉｅｄ  Ｍｏｄｅｌｉｎｇ  Ｌａｎｇｕａｇｅ）同士の類似度を計算する。特許文献１に記載の情報システム構築補助システムは、ＵＭＬ図の中に含まれる部品の属性や他の部品との接続関係によって類似度を計算する。
一方、特許文献２の段落００１２〜００１７には、再利用ソフトウェア作成システムにおいて、要求機能項目と標準ソフトウェア記憶手段内の標準ソフトの機能とを比較し、一致する機能の割合から各標準ソフトの適合度を計算することが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−１４６３００号公報
【特許文献２】特開平７−５６７２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１の技術は、ＵＭＬ図の図形要素の属性（図形の位置や名称）を比較して類似度を算出しているだけであって、モデルに対して、部品と下位部品まで調べて類似度を算出するものではない。また、特許文献２の技術も、同様にソフトウェアとソフトウェア部品の関係しかみておらず、下位部品を調べて類似度を判断するものではない。
そのため、特許文献１又は特許文献２の技術で算出した類似度は必ずしも適正とは言えない場合があり、効率的な情報システム構築を阻害する要因になる可能性があった。
本発明の目的は、上述の課題を解決する技術を提供することにある。
【課題を解決するための手段】
【０００５】
上記目的を達成するため、本発明に係る装置は、２つのシステムモデルに含まれる部品間の対応関係を、前記部品に含まれる下位部品の共通性に基づいて判定する判定手段と、前記判定手段で判定された部品間の対応関係に基づいて、前記２つのシステムモデルの類似度を算出する類似度算出手段と、を備える。
上記目的を達成するため、本発明に係る方法は、２つのシステムモデルに含まれる部品間の対応関係を、前記部品に含まれる下位部品の共通性に基づいて判定し、判定された前記部品間の対応関係に基づいて、前記２つのシステムモデルの類似度を算出する。
上記目的を達成するため、本発明に係るプログラム記録媒体が格納する情報処理プログラムは、２つのシステムモデルに含まれる部品間の対応関係を、前記部品に含まれる下位部品の共通性に基づいて判定する判定ステップと、判定された前記部品間の対応関係に基づいて、前記２つのシステムモデルの類似度を算出する算出ステップと、をコンピュータに実行させる。
【発明の効果】
【０００６】
本発明によれば、モデルに含まれる各部品の下位部品まで考慮することにより、より適正な類似度を求めることができ、ひいてはより効率的な情報システム構築を行なうことができる。
【図面の簡単な説明】
【０００７】
【図１】本発明の第１実施形態としての情報処理装置の構成を示す図である。
【図２】本発明の第２実施形態としての情報処理システムの機能構成を示す図である。
【図３】本発明の第２実施形態としての情報処理システムのハードウェア構成を示す図である。
【図４】本発明の第２実施形態としての情報処理システムのモデル格納部の内容を示す図である。
【図５】本発明の第２実施形態としての情報処理システムの類似度格納部の内容を示す図である。
【図６】本発明の第２実施形態としての情報処理システムに用いられる、部品対応度算出式とモデル類似度算出式を示す図である。
【図７】本発明の第２実施形態としての情報処理システムに用いられる、対応度テーブルを示す図である。
【図８】本発明の第２実施形態としての情報処理システムでの処理の流れを示すフローチャートである。
【図９】本発明の第３実施形態としての情報処理システムの機能構成を示す図である。
【図１０】本発明の第３実施形態としての情報処理システムでの処理の流れを示すフローチャートである。
【図１１】本発明の第４実施形態としての情報処理システムの機能構成を示す図である。
【図１２】本発明の第４実施形態としての情報処理システムの機能構成を示す図である。
【図１３】本発明の第４実施形態の具体例を説明するため、比較モデルの一例を示す図である。
【図１４】本発明の第４実施形態の具体例を説明するため、比較モデルのクライアントの下位部品例を表す図である。
【図１５】本発明の第４実施形態の具体例を説明するため、比較モデルのＷｅｂサーバの下位部品例を表す図である。
【図１６】本発明の第４実施形態の具体例を説明するため、比較モデルのアプリケーションサーバの下位部品例を表す図である。
【図１７】本発明の第４実施形態の具体例を説明するため、比較モデルのデータベースサーバの下位部品例を表す図である。
【図１８】本発明の第４実施形態の具体例を説明するため、基準モデルの一例を示す図である。
【図１９】本発明の第４実施形態の具体例を説明するため、基準モデルのアプリケーションサーバの下位部品例を表す図である。
【図２０】本発明の第４実施形態の具体例を説明するため、対応度テーブルの例を表す図である。
【図２１】本発明の第４実施形態の具体例を説明するため、対応度テーブルの例を表す図である。
【図２２】本発明の第４実施形態の具体例を説明するため、対応度テーブルの例を表す図である。
【発明を実施するための形態】
【０００８】
以下に、図面を参照して、本発明の実施の形態について例示的に詳しく説明する。ただし、以下の実施の形態に記載されている構成要素はあくまで例示であり、本発明の技術範囲をそれらのみに限定する趣旨のものではない。
以下の実施形態中、部品（Ｃｏｍｐｏｎｅｎｔ）とは、情報システムの構築に際し、開発者が後に再利用できるように設計された構成要素であり、ソフトウェア部品及びハードウェア部品の両方を含む概念である。モデル（Ｍｏｄｅｌ）とは、このような部品の組み合わせを用いて情報システムを表現したもの（システムモデルとも呼ぶ）であり、例えば、ＵＬＭなどのモデル記述言語を用いて表現される。
一方、下位部品（Ｓｕｂ−Ｃｏｍｐｏｎｅｎｔ）とは、部品に含まれる構成要素である。例えば、クライアントとアプリケーションサーバとデータベースサーバとを含む情報システムがある場合、その部品は、「クライアント」、「アプリケーションサーバ」、「データベースサーバ」それぞれということになる。そして、例えば「クライアント」の下位部品は、「ＨＴＴＰクライアント」や「オペレーションシステム」である。ハードウェア的な比較をおこなう場合、下位部品としては、ＣＰＵやＮＩＣなどが挙げられる。構成要素間の接続関係や依存関係を「部品」又は「下位部品」の一部として認識してもよい。
（第１実施形態）
図１に示すように、本実施形態に係る情報処理装置１０００は、部品対応判定部２０と類似度算出部３０を含む。このうち、部品対応判定部２０は、部品に含まれる下位部品の共通性に基づいて、２つのシステムモデルＡ、Ｂに含まれる部品間の対応関係を判定し、判定した部品間の対応関係を示すデータである対応度を出力する。更に、類似度算出部３０は、部品対応判定部２０で判定された部品間の対応関係を示すデータ、すなわち対応度に基づいて、２つのシステムモデルの類似度を算出する。
以上の構成により、モデルに含まれる各部品の下位部品まで考慮することにより、より適正な類似度を求めることができ、ひいてはより効率的な情報システム構築を行なうことができる。つまり本実施形態は、情報システム構築を効率的に行なうため、類似したモデルの検索精度を向上させることを目的としており、さらに、類似モデルの検索精度を向上させるため、モデル類似度の算出方法を高度化したものである。
（第２実施形態）
図２乃至図８を参照して、本発明の第２実施形態を説明する。
［機能構成］
本実施形態としての情報処理システム２０００は、図２に示すような機能構成を有する。図２において、モデル格納部１０は、少なくとも１つの部品を含むシステムモデルを格納する。例えば、複数のモデル記述言語を用いて記述されたコンピュータシステムのモデルを格納する。また、モデル格納部１０は、構成途中の不完全なシステムモデルを格納することもできる。
対応度判定基準格納部２１は、モデル格納部１０から取り出した２つのシステムモデルに含まれる部品同士の対応関係を判定するための基準（対応度判定基準とも呼ぶ）をデータとして格納している。また、対応部品推定部２２は、モデル格納部１０から取り出したシステムモデルに含まれる部品間の対応関係を、対応度判定基準格納部２１に格納された対応度判定基準をもとに推定し、対応度として出力する。
類似度算出部３０は、部品対応判定部２０から対応度を受信し、部品間の対応関係に基づいて、モデル格納部１０から取り出した２つのシステムモデル間の類似度を算出する。類似度格納部４０は、類似度算出部３０が算出した類似度をデータとして格納する。
対応度判定基準格納部２１は、対応部品推定部２２において対応部品、すなわちある部品に対して対応関係を有する部品かどうかの判定に用いられる対応部品の判定式（以下、「部品対応度算出式」という。）と、対応部品かどうかを判定する閾値を、それぞれ対応度判定基準として格納する。図６は、対応度判定基準としての部品対応度算出式と、モデル類似度を算出するためのモデル類似度算出式１３１ｂの例に示す図である。対応部品推定部２２は、各部品の下位部品同士を比較することにより、部品で実現されている機能と同じ機能を含むか否か判定する。
具体的には、対応部品推定部２２は、２つのモデルのそれぞれに含まれる部品同士を総当たり的に比較し、部品対応度算出式１３１ａを用いて２つのシステムモデルの全ての部品組合せについて複数の第１の対応度を発生する。その後、対応部品推定部２２は、各第１の対応度を閾値と比較して、閾値以上の第１の対応度を第２の対応度とする。この第２の対応度は、類似度算出部３０に出力される。類似度算出部３０は、対応部品推定部２２で対応関係があると推定された部品間の対応度を用いて、２つのシステムモデル間の類似度を算出する。
［ハードウェア構成］
次に、図２の機能構成を実現する情報処理システム２０００のハードウェア構成の一例を、図３に示す。図３に示すように、情報処理システム２０００は、サーバ１００と端末２００とモデルデータベース４００とを含む。サーバ１００は、ＣＰＵ１１０の他、ＲＡＭ１２０、ＲＯＭ１３０、通信部１４０を含む。ＲＯＭ１３０は、ＣＰＵにより実行されるプログラムを記憶する。一方、端末２００は、ＣＰＵ２１０の他、ＲＡＭ２２０、ＲＯＭ２３０、通信部２４０、入出力部２５０を含む。端末２００のＲＡＭ２２０には、モデル生成アプリケーション２２１が含まれており、ユーザがこのアプリケーションを用いてシステムモデルを構築する。このシステムモデルは、端末２００からサーバ１００に送られ、通信部１４０を介してモデルデータベース４００のモデル格納部１０に格納される。
サーバのＲＡＭ１２０は、類似度を算出する類似度算出アプリケーション１２１を記憶しており、ＣＰＵ１１０がこの類似度算出アプリケーション１２１を実行する。ＲＯＭ１３０は、部品対応度算出式１３１ａとモデル類似度算出式１３１ｂと対応部品を決定するための閾値１３２とを記憶している。
なお、図２の対応度判定基準格納部２１、対応部品推定部２２及び類似度算出部３０は、ＣＰＵ１１０、ＲＡＭ１２０及びＲＯＭ１３０によって構成される。また、モデル格納部１０及び類似度格納部４０は、モデルデータベース４００によって構成される。
部品対応度算出式１３１ａによって算出された対応度は、ＲＡＭ１２０の対応度テーブル１２２に記憶され、類似度算出アプリケーション１２１が類似度を算出する際に用いられる。モデルデータベース４００は、また、類似度算出アプリケーション１２１を用いて算出された類似度を格納する類似度格納部４０を備えている。
モデル格納部１０は、モデルに関する情報を、図４に示すように記憶する。つまり、モデル格納部１０は、モデル名とその識別子としてのモデルＩＤとを対応付けるテーブル４０１を記憶する。また、モデル格納部１０は、各モデルに含まれる部品を示すテーブル４１１、４１２を記憶する。また、モデル格納部１０は、各部品に含まれる下位部品を示すテーブル４２１、４２２、４２３を記憶する。さらにモデル格納部１０は、矢印で示すようにそれらのテーブル間の対応関係（ポインタ）も記憶する。このように、モデル格納部１０は、どのモデルにどのような部品が含まれ、どの部品にどのような下位部品が含まれるのかが明確になるようにシステムモデルに関する情報を記憶する。
一方、類似度格納部４０は、図５に示すように、各基準モデルに対して、類似すると判定された比較モデルのモデルＩＤ４１及びその比較モデルとの各類似度４２を、対応付けて格納する。ここで基準モデルとは、類似度を算出するための基準となるモデルである。
図７はＲＡＭ１２０に格納された対応度テーブル１２２の内部構成を示す図である。ＣＰＵ１１０は、２つのモデルのそれぞれに含まれる部品同士を総当たり的に比較し、部品対応度算出式１３１ａを用いて全ての部品組合せについて対応度を求めて、対応度テーブル１２２ａを生成する。その後、ＣＰＵ１１０は、対応度テーブル１２２ａの各対応度を閾値ＴＨと比較することによって、第２の対応度からなる対応度テーブル１２２ｂを生成する。
［処理の流れ］
次に、図８を参照して本実施の形態の全体の動作について詳細に説明する。まず、対応部品推定部２２は、モデル格納部１０から基準モデルを取り出す（Ｓ８０１）。次に、対応部品推定部２２は、基準モデルと比較する対象となるモデル（比較モデル）であって、未だ基準モデルとの類似度を算出していないものをモデル格納部１０から読出す（Ｓ８０３）。
つぎに、対応部品推定部２２は、基準モデルから１つの部品を取り出し（Ｓ８０５）、取り出した部品と、比較モデルの各部品との対応度を、対応度判定基準に基づいて算出する（Ｓ８０７）。具体的には、対応部品推定部２２は、対応度判定基準としての部品対応度算出式（図６の１３１ａ）を用いて対応度を算出する。部品対応度算出式１３１ａにおいて、ｆｓは基準モデルの部品の各下位部品である。また、ＦＳは比較モデルの部品の各下位部品である。また、ｆｓバーは、基準モデルの部品に含まれる下位部品の集合である。また、ＦＳバーは、比較モデルの部品に含まれる下位部品の集合である。更に、ｓ（ｆｓ，ＦＳ）は、ｆｓとＦＳとが同一の場合１であり、それ以外の場合は０となる関数である。ｎｕｍ（ｘ）は、集合ｘの要素数を表わす関数である。つまり、ここで、部品対応度算出式１３１ａの分母は、基準モデルの部品に含まれる下位部品の数と比較モデルの部品に含まれる下位部品の数との総和を示している。一方、モデル類似度算出式１３１ｂにおいて、ｍａｘ（ａ，ｂ）は、ａ＞ｂのときａ，ａ＜ｂのときｂとなる関数である。
次に、ステップＳ８０９に進むと、対応部品推定部２２は、基準モデルの全部品について、対応度を計算したか否かを判定し、対応度を計算していない部品がある場合にはステップＳ８０５に戻って処理を繰り返す。対応部品推定部２２が基準モデルの全部品について比較モデルの各部品との対応度を算出した場合には、ステップＳ８１１に進む。
以上のように算出された全対応度（第１の対応度）は、図７の対応度テーブル１２２ａに格納される。図７においてｂ（Ａｘ，Ａｙ）は、基準モデルＸの部品Ａと比較モデルＹの部品Ａとの対応度を示す。具体的には、対応部品推定部２２が図６の部品対応度算出式１３１ａを用いて算出する。ステップＳ８１１では、対応部品推定部２２が閾値１３２を超える対応度（第２の対応度）を持つ部品の組合せを特定し、図７の対応度テーブル１２２ｂを生成する。
更に、ステップＳ８１３では、類似度算出部３０は、対応度テーブル１２２ｂの値（第２の対応度）と、図６に示したモデル類似度算出式１３１ｂとを用いて、類似度Ｓを算出し、類似度格納部４０に格納する。更にステップＳ８１５では、類似度算出部３０は、類似度未算出の比較モデルがあるか否か判定して、類似度未算出の比較モデルがあればステップＳ８０３〜Ｓ８１３の処理を繰り返す。
［実施形態の効果］
以上の処理により、情報処理システム２０００は、下位部品の対応関係まで考慮して部品間の対応度を算出し、基準モデルと比較モデルとの類似度を算出する。そのため、最終的な類似度の信頼性が高くなる。したがって、システム開発者は、基準モデルの具体的な設計を行なうにあたって参考にできるモデルをデータベースから効果的に抽出できるようになる。
（第３実施形態）
図９、図１０を参照して、本発明の第３実施形態について説明する。
［機能構成］
本実施形態としての情報処理システム３０００は、図９に示すような機能構成を有する。第２実施形態としての情報処理システム２０００との相違は、複数部品集約部２３を含む点である。モデル格納部１０は複数のモデル記述言語を用いて記述されたコンピュータシステムのモデルを格納する。対応度判定基準格納部２１は、モデル格納部１０から取り出した２つのモデルに含まれる部品同士の対応関係を判定するための対応度判定基準を格納する。また、対応部品推定部２２は、モデル格納部１０から取り出したモデルに含まれる部品間の対応関係を、対応度判定基準格納部２１に格納された対応度判定基準をもとに推定する。
複数部品集約部２３は、対応部品推定部２２にて推定された部品間の対応関係を更に発展させ、一方のモデルの２つ以上の部品を集約させて１つの部品と見なすことにより、他方のモデルとの類似性をより明確化するものである。類似度算出部３０は、部品間の対応関係を示す対応度データ（対応度）に基づいて、モデル間の類似度を算出する。類似度格納部４０は、類似度算出部３０が算出した類似度を格納する。
［処理の流れ］
次に、図１０を参照して本実施の形態の全体の動作について詳細に説明する。ステップＳ８０１〜Ｓ８０９は、図８を用いて説明した第２実施形態と同様であるためここでは詳しい説明を省略する。
ステップＳ８０１〜Ｓ８０９において、対応部品推定部２２は、基準モデルと比較モデルの間の各部品間の対応度を全て計算し、図７の対応度テーブル１２２ｂを生成する。次に、ステップＳ１００１において、複数部品集約部２３は、複数の部品をまとめて１つの部品とみなした場合の対応度（第３の対応度）を再度算出する。つぎに、ステップＳ１００３に進み、複数部品集約部２３は、複数の部品をまとめて１つの部品と見なした場合の第３の対応度が、そのように見なさない場合の対応度（第２の対応度）に比べて上がるか否かを判定する。例えば、一方のモデルの少なくとも２つの部品の全下位部品が他方のモデルの少なくとも１つの部品に含まれる全下位部品と一致する場合には、ここでの判定がＹＥＳとなる。
対応度が上がった組合せを発見すると、ステップＳ１００５に進んで、複数部品集約部２３は、対応度が上がった組合せをまとめて１つの部品とみなす。そして、ステップＳ８１３に進み、類似度算出部３０は、第３の対応度に基づいて、第２の実施の形態と同様に類似度を算出して類似度格納部４０に格納する。
本実施の形態の情報処理システム３０００は、一方のモデルに含まれる少なくとも２つの部品が他方のモデルに含まれる少なくとも１つの部品と対応関係にあるときには、その複数の部品をまとめて類似度を算出する。これにより、情報処理システム３０００は部品間の接続関係をより適正に類似度に反映させることができる。
（第４実施形態）
本発明の第４実施形態について図１１、１２を参照して詳細に説明する。
［機能構成］
本実施形態としての情報処理システム４０００は、図１１に示すような機能構成を有する。第３実施形態としての情報処理システム３０００との相違は、検索部５０を含む点である。検索部５０は、基準となるモデルを特定する情報（例えばモデル名やモデルＩＤ）と、その基準モデルに対する類似度の範囲を入力して、類似度格納部４０を参照し、基準モデルから入力した類似度の範囲に含まれるモデルを特定する。その他の構成は、第３実施形態と同様であるため、ここでは同じ構成要素については同じ符号を付してその説明を省略する。
［処理の流れ］
次に、図１２を参照して本実施形態の全体の動作について詳細に説明する。ステップＳ８０１〜Ｓ８１５は、図１０を用いて説明した第３実施形態と同様であるためここでは説明を省略する。
ステップＳ８０１〜Ｓ１００５の後、Ｓ８１３及びＳ８１５において類似度算出部３０は、基準モデル及び比較モデルの類似度を算出する。次に、ステップＳ１２０１において、検索部５０は、検索キーとしての類似度の入力値を用いて、基準モデルに対しその入力値以上の類似度を有するモデルを、類似度格納部４０を参照して検索する。そして、その検索結果を用いて、モデル格納部１０から所望のモデルを抽出する。
本実施の形態によれば、上記第３実施形態の効果に加えて、より的確にモデルの検索抽出が可能となるという効果がある。
［具体例］
本実施形態を適用したシステムの具体例について、図１３乃至図２２を用いて説明する。図１３は、クライアント（Ｃｌｉｅｎｔ）１３０１、Ｗｅｂサーバ（Ｗｅｂ  Ｓｅｒｖｅｒ）１３０２、アプリケーションサーバ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｅｒｖｅｒ）１３０３、データベースサーバ（ＤＢ  Ｓｅｖｅｒ）１３０４の４つのハードウェア部品を含む比較モデルとしてのシステムモデル１３００を示している。図１４は、クライアント１３０１の下位部品を表す図である。本具体例では、クライアント１３０１は、ＨＴＴＰクライアント１４０１とオペレーションシステム１４０２とをソフトウェア部品として含む。図１５は、Ｗｅｂサーバ１３０２の下位部品を表す図である。本具体例では、Ｗｅｂサーバ１３０２は、Ｗｅｂサーバ１５０１とオペレーションシステム１５０２とをソフトウェア部品として含む。図１６は、アプリケーションサーバ１３０３の下位部品を表す図である。本具体例では、アプリケーションサーバ１３０３は、アプリケーション１６０１とアプリケーションサーバ１６０２とオペレーションシステム１６０３とをソフトウェア部品として含む。図１７は、データベースサーバ１３０４の下位部品を表わす図である。本具体例では、データベースサーバ１３０４は、データベースサーバ１７０１とオペレーションシステム１７０２とをソフトウェア部品として含む。
図１８は、クライアント１３０１、アプリケーションサーバ１８０１、データベースサーバ１３０４の３つのハードウェア部品を含む基準モデルとしてのシステムモデル１８００を示している。図１９は、アプリケーションサーバ１８０１の下位部品を表す図である。本具体例では、アプリケーションサーバ１８０１は、アプリケーション１６０１とアプリケーションサーバ１６０２とオペレーションシステム１６０３の他、Ｗｅｂサーバ１９０１をソフトウェア部品として含む。
対応部品推定部２２が図６で示した部品対応度算出式１３１ａを用いて算出した、システムモデル１３００とシステムモデル１８００とに含まれる各部品同士の対応度を、図２０のテーブル２００１に示す。
例えば、システムモデル１３００とシステムモデル１８００とを比較した場合、クライアント１３０１及びデータベースサーバ１３０４は共通であるためそれらの対応度は１である。一方、システムモデル１３００のクライアント１３０１の下位部品（図１４）と、システムモデル１８００のアプリケーションサーバ１８０１の下位部品（図１９）との対応関係を見ると、含まれる同じ下位部品はオペレーションシステムのみである。したがって、共通する部品数は１であり、図６の部品対応度算出式１３１ａに数値を代入すると、その対応度は、２×１／（２＋４）＝０．３３となる。同様に、図１８のクライアントと、図１３のデータベースサーバとの対応度は、２×１／（２＋２）＝０．５となる。
一方、システムモデル１３００のＷｅｂサーバ１３０２の下位部品（図１５）と、システムモデル１８００のアプリケーションサーバ１８０１の下位部品（図１９）との対応関係を見ると、Ｗｅｂサーバとオペレーションシステムとの２つが共通している。したがって、対応度は、２×２／（２＋４）＝２／３（＝約０．６６）となる。
次に、システムモデル１３００のアプリケーションサーバ１３０３の下位部品（図１６）と、システムモデル１８００のアプリケーションサーバ１８０１の下位部品（図１９）との対応関係を考える。この場合、アプリケーションとアプリケーションサーバとオペレーションシステムとの３つの下位部品が共通している。したがって、対応度は、２×３／（３＋４）＝６／７（＝約０．８６）となる。
対応部品推定部２２は、同様に全ての下位部品の組合せについて対応度を求め、図２０のテーブル２０００を生成する。次に、対応部品推定部２２は、対応度の閾値０．６よりも大きな対応度を有する下位部品の組合せを抽出し、図２１のテーブル２１０１を生成する。これにより、クライアントとクライアント、Ｗｅｂサーバ及びアプリケーションサーバの組合せとアプリケーションサーバ、データベースサーバとデータベースサーバとが対応づけられることが分かる。図２１の例において、類似度算出部３０は、図６に示した式を用いて、１−｛（１−０．６６）＋（１−０．８６）｝／４＝０．８８と類似度を算出する。
複数部品集約部２３は、図２１に示すように１つの部品と複数の部品とが対応関係にある場合、その複数の部品をまとめて１つの部品として扱う。本具体例ではアプリケーションサーバ１８０１が、Ｗｅｂサーバ１３０２及びアプリケーションサーバ１３０３に対応づけられている。したがって、複数部品集約部２３は、Ｗｅｂサーバ１３０２及びアプリケーションサーバ１３０３を１つの部品として扱う。そのように考えた場合の部品間の対応度を再計算して、１−（１−０．６６）＊（１−０．８６）＝０．９５を図２２のようにテーブル２２０１に登録する。この時の部品名は対応する部品であるアプリケーションサーバとして扱うか、Ｗｅｂサーバ若しくはアプリケーション両方の名前をもつものとして扱う。
そして次に、このように求めた対応度を類似度算出部３０に伝達し、システムモデル１３００とシステムモデル１８００との類似度を求める。ここでは、１−｛（１−１）／３＋（１−０．９５）／３＋（１−１）／３｝＝１−０．０２＝０．９８が類似度として求まる。
類似度算出部３０は、このようにして求めた類似度を類似度格納部４０に格納する。このように求めた類似度に対して、ユーザから検索式が入力されたときには、この類似度を基に必要なモデルをユーザに提示する。例えば、類似度が０．７以上のものと指定された時には、上記比較モデルに類似するモデルとして提示される。このような類似検索に用いる類似度は、モデルの各組み合わせに対してあらかじめ計算されていてもよい。また、随時計算されてもよい。
なお、図１３にはクライアント１３０１とＷｅｂサーバ１３０２が直線で結ばれているが、この直線を１つの部品と考えてもよく、その場合は、例えば、クライアントとＷｅｂサーバを結ぶエッジがあると判定する。そうすると、Ｗｅｂサーバ１３０２及びアプリケーションサーバ１３０３を１つの部品として扱った場合であって、エッジが２つ共通するという共通性を加味すると、システムモデル１３００とシステムモデル１８００との類似度は、１−｛（１−０．９５）／５＝０．９９となる。
更に、下位部品間の接続関係をエッジとして下位部品に含めて考えても良く、例えば、図１４では、クライアント１４０１とオペレーションシステム１４０２の間にエッジ１４０３が１つあるとして、他の部品との比較を行なっても良い。
（実施形態の他の表現）
上記の実施形態の一部又は全部は、以下の付記のようにも記載される。ただし、本発明は以下には限定されるものではない。
（付記１）
２つのシステムモデルに含まれる部品間の対応関係を、前記部品に含まれる下位部品の共通性に基づいて判定する判定手段と、
前記判定手段で判定された部品間の対応関係に基づいて、前記２つのシステムモデルの類似度を算出する類似度算出手段と、
を含む情報処理装置。
（付記２）
前記判定手段は、前記下位部品の共通性を用いて判定された部品間の対応関係を示すデータである対応度を算出して出力し、
前記類似度算出手段は、前記対応度を用いて前記システムモデルの類似度を算出する
付記１に記載の情報処理装置。
（付記３）
前記類似度算出手段は、前記対応度のうち予め定められた閾値を超える対応度である第２の対応度を用いて前記システムモデルの類似度を算出する、
付記２に記載の情報処理装置。
（付記４）
前記判定手段は、第１システムモデルに含まれる第１部品と第２システムモデルに含まれる第２部品との前記対応関係を判定する場合に、前記第１部品に含まれる下位部品と前記第２部品に含まれる下位部品とを比較し、一致する下位部品がいくつあるかに基づいて前記対応度を算出する、
付記２又は３に記載の情報処理装置。
（付記５）
一方のモデルに含まれる少なくとも２つの部品が他方のモデルに含まれる少なくとも１つの部品と対応関係にあるときに、その複数の部品をまとめて１つの部品とみなした場合の前記対応関係を判定する複数部品集約部と、をさらに含み、
前記類似度算出手段は、前記対応関係の判定結果に基づいて類似度を算出する、
付記１乃至４の何れか１項に記載の情報処理装置。
（付記６）
前記類似度算出手段で算出した類似度に基づいてモデルを検索する検索手段と、
をさらに含む付記１乃至５の何れか１項に記載の情報処理装置。
（付記７）
前記システムモデルを特定する情報と、前記システムモデルに含まれる部品を表わす情報と、各部品に含まれる下位部品を表わす情報とを対応付けて格納しているモデル格納手段と、
をさらに含む付記１乃至６の何れか１項に記載の情報処理装置。
（付記８）
前記部品は、ハードウェア部品であって、前記下位部品は、そのハードウェア部品に含まれるソフトウェア部品である、
付記１乃至７の何れか１項に記載の情報処理装置。
（付記９）
２つのシステムモデルに含まれる部品間の対応関係を、前記部品に含まれる下位部品の共通性に基づいて判定し、
判定された前記部品間の対応関係に基づいて、前記２つのシステムモデルの類似度を算出する、
情報処理方法。
（付記１０）
２つのシステムモデルに含まれる部品間の対応関係を、前記部品に含まれる下位部品の共通性に基づいて判定し、
判定された部品間の対応関係を示すデータである対応度を算出して出力し、
前記対応度を用いて前記システムモデルの類似度を算出する、
情報処理方法。
（付記１１）
２つのシステムモデルに含まれる部品間の対応関係を、前記部品に含まれる下位部品の共通性に基づいて判定する判定ステップと、
判定された前記部品間の対応関係に基づいて、前記２つのシステムモデルの類似度を算出する類似度算出ステップと、
をコンピュータに実行させる情報処理プログラムを格納するプログラム記録媒体。
（付記１２）
２つのシステムモデルに含まれる部品間の対応関係を、前記部品に含まれる下位部品の共通性に基づいて判定する判定ステップと、
判定された部品間の対応関係を示すデータである対応度を算出して出力する対応度算出ステップと、
前記対応度を用いて前記システムモデルの類似度を算出する類似度算出ステップと、
をコンピュータに実行させる情報処理プログラムを格納するプログラム記録媒体。
（他の実施形態）
以上、本発明の実施形態について詳述したが、それぞれの実施形態に含まれる別々の特徴を如何様に組み合わせたシステム又は装置も、本発明の範疇に含まれる。
また、本発明は、複数の機器から構成されるシステムに適用しても良いし、単体の装置に適用しても良い。さらに、本発明は、実施形態の機能を実現する情報処理プログラムが、システム或いは装置に直接或いは遠隔から供給される場合にも適用可能である。したがって、本発明の機能をコンピュータで実現するために、コンピュータにインストールされるプログラム、或いはそのプログラムを格納した媒体、そのプログラムをダウンロードさせるＷＷＷサーバも、本発明の範疇に含まれる。
以上、実施形態を参照して本願発明を説明したが、本願発明は以上の実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で同業者が理解し得る様々な変更をすることができる。
この出願は、２０１０年３月１５日に出願された日本出願特願２０１０−０５８５２５を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【図１】
2011115024.tif 000003
【図２】
2011115024.tif 000004
【図３】
2011115024.tif 000005
【図４】
2011115024.tif 000006
【図５】
2011115024.tif 000007
【図６】
2011115024.tif 000008
【図７】
2011115024.tif 000009
【図８】
2011115024.tif 000010
【図９】
2011115024.tif 000011
【図１０】
2011115024.tif 000012
【図１１】
2011115024.tif 000013
【図１２】
2011115024.tif 000014
【図１３】
2011115024.tif 000015
【図１４】
2011115024.tif 000016
【図１５】
2011115024.tif 000017
【図１６】
2011115024.tif 000018
【図１７】
2011115024.tif 000019
【図１８】
2011115024.tif 000020
【図１９】
2011115024.tif 000021
【図２０】
2011115024.tif 000022
【図２１】
2011115024.tif 000023
【図２２】
2011115024.tif 000024
【手続補正書】
【提出日】平成23年9月26日(2011.9.26)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
２つのシステムモデルに含まれる部品間の対応関係を、前記部品に含まれる下位部品の共通性に基づいて判定し、当該判定された部品間の対応関係を示すデータである対応度を第１の対応度として算出して出力する判定手段と、
前記判定手段から出力された第１の対応度のうち予め定められた閾値を超える対応度である第２の対応度を用いて、前記２つのシステムモデルの類似度を算出する類似度算出手段と、
を含む情報処理装置。
【請求項２】
（削除）
【請求項３】
（削除）
【請求項４】
前記判定手段は、第１システムモデルに含まれる第１部品と第２システムモデルに含まれる第２部品との前記対応関係を判定する場合に、前記第１部品に含まれる下位部品と前記第２部品に含まれる下位部品とを比較し、一致する下位部品がいくつあるかに基づいて前記対応度を算出する、
請求項１に記載の情報処理装置。
【請求項５】
一方のモデルに含まれる少なくとも２つの部品が他方のモデルに含まれる少なくとも１つの部品と対応関係にあるときに、その複数の部品をまとめて１つの部品とみなした場合の前記対応関係を判定する複数部品集約部と、をさらに含み、
前記類似度算出手段は、前記対応関係の判定結果に基づいて類似度を算出する、
請求項１又は４に記載の情報処理装置。
【請求項６】
前記類似度算出手段で算出した類似度に基づいてモデルを検索する検索手段と、
をさらに含む請求項１、４又は５の何れか１項に記載の情報処理装置。
【請求項７】
前記システムモデルを特定する情報と、前記システムモデルに含まれる部品を表わす情報と、各部品に含まれる下位部品を表わす情報とを対応付けて格納しているモデル格納手段と、
をさらに含む請求項１、４乃至６の何れか１項に記載の情報処理装置。
【請求項８】
前記部品は、ハードウェア部品であって、前記下位部品は、そのハードウェア部品に含まれるソフトウェア部品である、
請求項１、４乃至７の何れか１項に記載の情報処理装置。
【請求項９】
２つのシステムモデルに含まれる部品間の対応関係を、前記部品に含まれる下位部品の共通性に基づいて判定し、当該判定された部品間の対応関係を示すデータである対応度を第１の対応度として算出して出力し、
前記出力された第１の対応度のうち予め定められた閾値を超える対応度である第２の対応度を用いて、前記２つのシステムモデルの類似度を算出する、
情報処理方法。
【請求項１０】
２つのシステムモデルに含まれる部品間の対応関係を、前記部品に含まれる下位部品の共通性に基づいて判定し、当該判定された部品間の対応関係を示すデータである対応度を第１の対応度として算出して出力する判定ステップと、
前記出力された第１の対応度のうち予め定められた閾値を超える対応度である第２の対応度を用いて、前記２つのシステムモデルの類似度を算出する算出ステップと、
をコンピュータに実行させる情報処理プログラムを格納するプログラム記録媒体。
【国際調査報告】
2011115024.tif 000025
2011115024.tif 000026
2011115024.tif 000027
2011115024.tif 000028