(57)【特許請求の範囲】
【請求項１】
システムのモデルであるシステムモデル情報を構成する構成要素に対応するナレッジ情報を記憶するナレッジ記憶手段と、
第１のシステムモデル情報と、第２のシステムモデル情報との差分、及び前記システムモデル情報の構成要素が変更された際の変更目的を検索キーとして用いて、１以上のナレッジ情報を前記ナレッジ記憶手段に記憶されたナレッジ情報の中から検索する検索手段と、
前記検索手段により検索されたナレッジ情報を出力する出力手段と
を有し、
前記ナレッジ情報は、作業者のための留意点を示す情報である
システム構築支援装置。
【請求項２】
前記第１のシステムモデル情報と、前記第２のシステムモデル情報との差分を抽出する差分分析手段をさらに有する
請求項１記載のシステム構築支援装置。
【請求項３】
前記システムモデル情報は、システムを構成する機器間の接続関係を示す構造情報を含み、
前記差分分析手段が、前記第１のシステムモデル情報に含まれる前記構造情報と、前記第２のシステムモデル情報に含まれる前記構造情報との差分を抽出する
請求項２に記載のシステム構築支援装置。
【請求項４】
前記システムモデル情報は、システムにより実行される処理を示す処理情報を含み、
前記差分分析手段が、前記第１のシステムモデル情報に含まれる前記処理情報と、前記第２のシステムモデル情報に含まれる前記処理情報との差分を抽出する
請求項２又は３に記載のシステム構築支援装置。
【請求項５】
前記システムモデル情報は、システムを構成する機器の設定内容を示すプロパティ情報を含み、
前記差分分析手段が、前記第１のシステムモデル情報に含まれる前記プロパティ情報と、前記第２のシステムモデル情報に含まれる前記プロパティ情報との差分を抽出する
請求項２乃至４いずれか１項に記載のシステム構築支援装置。
【請求項６】
前記プロパティ情報は、前記機器で実行されるソフトウェアを特定するソフトウェア情報を含む
請求項５に記載のシステム構築支援装置。
【請求項７】
ソフトウェアごとに、ソフトウェアに関する前記ナレッジ情報を記憶するソフトウェアナレッジ記憶手段をさらに有し、
前記ナレッジ記憶手段は、ソフトウェアに関する前記ナレッジ情報以外の前記ナレッジ情報を記憶し、
前記検索手段は、前記差分分析手段により抽出された差分に基づいて、前記ナレッジ記憶手段に記憶された前記ナレッジ情報と、前記ソフトウェアナレッジ記憶手段に記憶された前記ナレッジ情報とを取得する
請求項６に記載のシステム構築支援装置。
【請求項８】
前記第１のシステムモデル情報により定義されるシステムの性能を予測し、所定の性能以上となるよう前記第１のシステムモデル情報を前記第２のシステムモデル情報へと修正するモデル修正手段をさらに有する
請求項１乃至７いずれか１項に記載のシステム構築支援装置。
【請求項９】
システムのモデルであるシステムモデル情報を構成する構成要素に対応するナレッジ情報を記憶し、
第１のシステムモデル情報と、第２のシステムモデル情報との差分、及び前記システムモデル情報の構成要素が変更された際の変更目的を検索キーとして用いて、１以上のナレッジ情報を記憶されたナレッジ情報の中から検索し、
検索されたナレッジ情報を出力し、
前記ナレッジ情報は、作業者のための留意点を示す情報である
システム構築支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はシステム構築支援装置及びシステム構築支援方法に関し、特にナレッジ情報を出力するシステム構築支援装置及びシステム構築支援方法に関する。
【背景技術】
【０００２】
システムモデルに基づくシステムの構築が知られている。このようなシステムの構築を行う場合、作成したシステムモデルに対して、その性能や構成に問題がないかを確認し、問題がある場合にはシステムモデルの修正が行われる。仮想環境を実現するにあたり、作成したシステムモデルの性能や機器の接続などの構成が、想定した条件通りに動くかどうかをシステムの構築前に確かめる手法が知られている。例えば、非特許文献１では、自動的にシミュレーションを実行し、条件通りに動くようシステムモデルを変更するという技術が開示されている。また、このようなシミュレーション技術を用いずとも、システムモデルの作成や仮想環境の実現について熟知した人によって、システムモデルの確認及び修正がなされることもある。
このようなシステムモデルに基づくシステムの構築にあたって、作業者の作業を補助する仕組みが求められている。
【０００３】
なお、作業者の作業を補助するための技術として、例えば、特許文献１〜３に記載された技術がある。
特許文献１は、設計時のトポロジと構築後のトポロジとを比較し、その結果を検証結果として出力するネットワーク構成検証装置について開示している。
特許文献２は、各種製品の開発プロジェクトにおいて、開発担当者に必要な情報を的確に提示して、開発業務の効率の向上を図るために、キーワードに関連したナレッジ情報を提示する開発支援システムについて開示している。
特許文献３は、繰り返し行われる解析過程において、解析で誰もが共通して使用する情報とは異なる情報が得られた場合に、この情報をナレッジとして蓄積し、キーワードにより検索できるようにした作業支援装置について開示している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１８２４４５号公報
【特許文献２】特開２００４−３４１７４９号公報
【特許文献３】特開２００４−６２７０７号公報
【非特許文献】
【０００５】
【非特許文献１】伊豆倉さやか、他４名、「システムモデルベースＳＩ支援環境による性能・可用性評価」、情報処理学会研究報告、情報処理学会、２０１０年１１月
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述のように、システムモデルを確認し、問題点を解消するよう変更を加えることはできる。しかしながら、例えば、システムモデルに変更が加えられた場合に、その変更箇所の実現に必要な情報を網羅的に得ることまではできない。そのため、結果的に、システムモデルの実現が属人的なものとなり、仮想環境の作成に慣れていない人が実現した場合には完成したシステムの動作に問題が生じるリスクが残っている。このような、システムモデルに基づくシステム構築に特有の課題について、上記先行技術文献には何ら解決策が示されていない。
【０００７】
本発明の目的は、このような課題を解決するためになされたものであり、システムを構築する作業者の経験や知識のレベルへの依存を低減し、システムを構築することができるシステム構築支援装置及びシステム構築支援方法を提供することにある。
【課題を解決するための手段】
【０００８】
本発明の一態様にかかるシステム構築支援装置は、システムのモデルであるシステムモデル情報を構成する構成要素に対応するナレッジ情報を記憶するナレッジ記憶手段と、第１のシステムモデル情報と、第２のシステムモデル情報との差分に対応する１以上のナレッジ情報を前記ナレッジ記憶手段に記憶されたナレッジ情報から選択して出力する出力手段とを有する。
【０００９】
また、本発明の一態様にかかるシステム構築支援方法は、システムのモデルであるシステムモデル情報を構成する構成要素に対応するナレッジ情報を記憶し、第１のシステムモデル情報と、第２のシステムモデル情報との差分に対応する１以上のナレッジ情報を記憶されたナレッジ情報から選択して出力する方法である。
【発明の効果】
【００１０】
本発明によれば、システムを構築する作業者の経験や知識のレベルへの依存を低減し、システムを構築することができるシステム構築支援装置及びシステム構築支援方法を提供することができる。
【図面の簡単な説明】
【００１１】
【図１】システム構築支援装置の構成の概要を示すブロック図である。
【図２】実施の形態１にかかるシステム構築支援装置の構成の詳細を示すブロック図である。
【図３】モデル修正部による修正前のシステムモデルである設計用システムモデルと、修正後のシステムモデルである構築用システムモデルとの一例を示す模式図である。
【図４Ａ】ナレッジ記憶部に記憶された情報の一例を示す図である。
【図４Ｂ】ナレッジ記憶部に記憶された情報の一例を示す図である。
【図４Ｃ】ナレッジ記憶部に記憶された情報の一例を示す図である。
【図５】システム構築支援装置の全体動作の一例を示すフローチャートである。
【図６】図５に示されるステップ２０の具体的な動作の一例を示すフローチャートである。
【図７】図５に示されるステップ３０の具体的な動作の一例を示すフローチャートである。
【図８】実施の形態２にかかるシステム構築支援装置の構成の詳細を示すブロック図である。
【図９】ソフトウェアナレッジ記憶部に記憶された情報の一例を示す図である。
【発明を実施するための形態】
【００１２】
＜本発明にかかる実施の形態の概要＞
実施の形態の説明に先立って、本発明にかかる実施の形態の概要を説明する。図１は、実施の形態にかかるシステム構築支援装置１の構成の概要を示すブロック図である。システム構築支援装置１は、図１に示されるように、ナレッジ記憶部１０と、出力部１１とを有する。
【００１３】
ナレッジ記憶部１０は、システムのモデルであるシステムモデル情報を構成する構成要素に対応するナレッジ情報を記憶する。ナレッジ記憶部１０は、ナレッジベースであり、具体的には、システムモデル情報からシステムを構築する際に用いられるナレッジ情報を記憶するデータベースである。ナレッジ記憶部１０は、例えば、仮想環境の構築において、人間が経験から得たノウハウなどの、機械的に生成することが困難な人間的な観点の情報であるナレッジ情報を記憶している。
【００１４】
出力部１１は、第１のシステムモデル情報と、第２のシステムモデル情報との差分に対応する１以上のナレッジ情報をナレッジ記憶部１０に記憶されたナレッジ情報から選択して出力する。例えば、出力部１１は、第１のシステムモデル情報と第２のシステムモデル情報との差分に基づいて、ナレッジ記憶部１０に記憶されたナレッジ情報の中から検索した検索結果であるナレッジ情報を出力する。なお、第２のシステムモデル情報は、例えば、第１のシステムモデル情報に対し修正がなされたものである。この場合、出力部１１は、第１のシステムモデル情報から第２のシステムモデル情報への変更に関連があるナレッジ情報出力することとなる。これにより、システムの構築を行う作業者は、第２のシステムモデルに基づいてシステムを構築する際に用いることができるナレッジを取得することができる。特に、作業者は、システムモデルの変更に伴って生じる留意点についてのナレッジを取得することができる。
このため、作業者の経験や知識のレベルによらず、作業者は留意したほうがよい情報を認識した上で、構築作業を行うことができる。したがって、システム構築支援装置１によれば、システムを構築する作業者の経験や知識のレベルに大きく依存せずにシステムを構築することができる。すなわち、ナレッジを用いることで、構築作業者の経験や知識の浅さを補えるため、システムモデルの実現における属人性がより少なくなり、関連する作業をより容易に実施することが可能になる。
【００１５】
＜実施の形態１＞
以下、実施の形態１について説明する。
図２は、実施の形態１にかかるシステム構築支援装置２の構成の詳細を示すブロック図である。図２に示すように、実施の形態１にかかるシステム構築支援装置２は、モデル修正部２０と、差分分析部２１と、ナレッジ記憶部２２と、検索部２３と、出力部２４とを有している。
【００１６】
モデル修正部２０は、設計用システムモデル情報５１により定義されるシステムの性能を予測し、所定の性能以上となるよう設計用システムモデル情報５１を構築用システムモデル情報５２へと修正する。なお、性能とは、処理速度などの性能に限らず、可用性、信頼性、安全性、保全性、保守性、機密性なども含まれる。
【００１７】
ここで、設計用システムモデル情報５１は、上記第１のシステムモデル情報に対応しており、設計図としてのシステムモデルを規定する情報であり、所定のモデリング言語により記述された情報である。設計用システムモデルは、例えば、クラウド環境下において利用者に固有の処理を行うために準備したシステムモデル（仮想化システム上で業務処理を実現するために個々のコンポーネントの構成を大まかに定義したモデル）であるが、これに限定されない。
また、構築用システムモデル情報５２は、上記第２のシステムモデル情報に対応しており、設計用システムモデル情報５１により定義されるシステムの性能予測結果において動作又はコストなどに問題（改善の余地なども含む）があった場合に、問題箇所に変更が加えられたシステムモデルを表す情報である。構築用システムモデル情報５２も、設計用システムモデルモデル情報と同様、所定のモデリング言語により記述された情報である。なお、システムモデルの記述方法としては、特定の記述方法に限定されないが、例えば、非特許文献１に記載された記述方法を採用してもよい。
【００１８】
本実施の形態では、システムモデル情報は、システムモデル情報を構成する構成要素として、構造情報、処理情報、割り当て情報、及びプロパティ情報の４種類の情報を含んでいる。以下、図３を参照しつつ、各情報について説明する。図３は、モデル修正部２０による修正前のシステムモデルである設計用システムモデルと、修正後のシステムモデルである構築用システムモデルとの一例を示す模式図である。
【００１９】
構造情報は、システムを構成する機器間の接続関係を示す情報である。すなわち、構造情報は、例えば、機器の種類、機器の台数、ネットワーク構成などを表す。なお、機器は、サーバやルータなど、システムを構成する要素となるものである。図３に示した例の設計用システムモデルにおいては、サーバが３台あるという情報、及びそれらがネットワークでつながりを持っているという情報が、構造情報に相当する。また、図３に示した例の構造用システムモデルにおいては、さらに、サーバ１台及びロードバランサ（ＬＢ）１台が追加されているという情報が構造情報に相当する。
【００２０】
処理情報は、システムにより実行される処理を示す情報である。具体的には、処理情報は、システムがどのような要求を受け付けて、どのような処理をするかということを表す情報である。言い換えると、処理情報は、どのようなデータを扱い、どのような働きをするのかという、システムにおけるフローごとの振る舞いを示す情報である。例えば、図３に示した例においては、インターネットを経由してクライアントからのリクエストを受け取り、そのリクエストに応じてデータベース（ＤＢ）及びアプリケーションからの情報を参照しながら処理を行い、処理結果をクライアントに返すなどといった処理内容を示す情報が、処理情報に該当する。
【００２１】
割り当て情報は、システムを構成する機器のシステムにおける役割を示す情報である。より具体的には、割り当て情報は、システムを構成する機器とシステム内で実行される処理とを対応付け、機器の役割を明確する情報である。言い換えると、割り当て上は、システムを構成する機器と処理内容とを対応付けることにより、機器ごとの働きを定義する情報である。図３に示した例においては、一般的なＷｅｂ三層モデルとしてシステムモデルが表されており、各機器は、Ｗｅｂサーバ、ＡＰ(アプリケーション)サーバ、ＤＢサーバとしての役割が割り当てられており、この割り当てについての情報が、割り当て情報に該当する。
【００２２】
プロパティ情報は、システムを構成する機器の設定内容を示す情報である。例えば、サーバであれば、ＣＰＵ（Central Processing Unit）のコア数、メモリ量、使用されるソフトウェアなどといった設定内容が、このサーバについてのプロパティ情報として該当する。なお、使用されるソフトウェアについては、使用されるＯＳ（Operating System）も含まれる。このように、プロパティ情報は、機器で実行されるソフトウェアを特定するソフトウェア情報を含む。
【００２３】
モデル修正部２０は、上述した各情報を含む設計用システムモデル情報５１を受付けると、設計用システムモデルの性能を予測し、予測結果に応じて、構築用システムモデルを生成する。例えば、モデル修正部２０は、非特許文献１に記載されているように、次のようにして、システムモデルの修正を行う。
【００２４】
モデル修正部２０は、指定された条件下でシミュレーションを実施し、問題がある箇所が検出された場合、システムモデル内における問題箇所に関するパラメータを再設定し、再度シミュレーションを実施する。また、モデル修正部２０は、動作が既に評価されているシステムモデルについてのリポジトリを備え、システムモデルの構造自体に問題があればリポジトリを参照して構造自体の再設定も行う。そして、モデル修正部２０は、期待される機能を実現するシステムモデルが得られるまでシミュレーション及び再設定を繰り返し、最終的に得られた問題の検出されないシステムモデルを構築用システムモデルとして出力する。
【００２５】
通常、システムモデルの定義が妥当かどうかは、システムモデルの定義をシステム基盤に合った定義へと変換し、さらに実際に環境を構築し、構築したシステムの動作をテストしてからでないと正確に判定することは難しい。しかしながら、モデル修正部２０によれば、そのようなことを実際に行わなくても、リソースが十分かどうか、また用途に対しスペックが適切であるかなどを確認することができる。これにより、プロビジョニング後の動作テストや、環境が妥当でない場合に生じる後戻り、などといった作業を省略することができる。また、より少ないリソース性能が取得できれば、より少ないコストでの運用環境を容易にプロビジョニングできる。
【００２６】
図３に示した例では、モデル修正部２０は、例えば、次のようにして構築用システムモデル情報５２を出力する。
まず、モデル修正部２０は、図３に示される設計用システムモデルを表す設計用システムモデル情報５１を入力として受付け、このシステムモデルの設計通りの構成で問題がないかを判定するため、シミュレーションを実行する。図３に示した例では、このシミュレーションの結果、ＡＰサーバが高負荷な状態であり、性能において問題がある診断される。これに対し、モデル修正部２０は、システムモデルの構成や機器のプロパティなど問題のあるポイントを検出し、パラメータを再設定する。図３に示した例では、モデル修正部２０は、ＡＰサーバの数を増やすことで負荷を分散させるよう修正している。モデル修正部２０は、この修正されたシステムモデルに対し再度シミュレーションを実施する。そして、負荷分散のための振り分けができないという問題が発見される。このため、モデル修正部２０は、システムモデルにロードバランサ（ＬＢ）を追加する。モデル修正部２０は、このＬＢが追加されたシステムモデルに対して再度シミュレーションを実施し、その結果、問題なく動作することを確認し、これを構築用システムモデルとして出力する。
なお、モデル修正部２０は、システムモデルの変更にあたり、構造情報、処理情報、割り当て情報、及びプロパティ情報のうち変更対象の情報について、変更目的を示す情報を含むよう修正する。
【００２７】
しかし、モデル修正部２０は、シミュレーションによりシステムモデルの妥当性を評価するに過ぎず、実際に仮想環境上などにシステムを構築する段階において、構築されるシステムの妥当性は構築作業者に委ねられてしまう。このため、構築作業者がシステムの構築に慣れていない場合、システムモデル自体が妥当なものであっても、知識やノウハウなどの不足から、所望の品質を満たさないシステムとなってしまうリスクを排除することはできない。本実施の形態は、そのようなリスクを低減し、構築作業者の能力によらず所望の品質のシステムを構築することができるよう、以下に示すように、システムの構築時に用いることができるナレッジを提示する。
【００２８】
差分分析部２１は、入力されたシステムモデルの差分を抽出する。差分分析部２１には、第１のシステムモデル情報と、第１のシステムモデル情報に対し修正がなされた第２のシステムモデル情報とが入力される。差分分析部２１は、入力された第１のシステムモデル情報と、入力された第２のシステムモデル情報の差分を抽出する。これにより、第１のシステムモデルから第２のシステムモデルへと変更された際の変更点が抽出される。具体的には、差分分析部２１は、モデル修正部２０に入力された設計用システムモデル情報５１と、モデル修正部２０から出力された構築用システムモデル情報５２との差分を抽出する。また、差分分析部２１は、抽出した差分を分析した結果をファイルとして出力する。本実施の形態では、差分分析部２１は、システムモデル情報に含まれる上述の４つの情報に関して、差分を抽出する。
【００２９】
すなわち、差分分析部２１は、設計用システムモデル情報５１に含まれる構造情報と構築用システムモデル情報５２に含まれる構造情報との差分を抽出する。例えば、図３に示した例では、構築用システムモデルは、既存のＡＰサーバと並列に接続される１台のＡＰサーバが追加されるという変更がなされている。なお、追加されたＡＰサーバは、設計用システムモデルにおいて既に存在したＡＰサーバと同等の性能を備えたサーバである。また、構築用システムモデルは、Ｗｅｂサーバに到着したリクエストを２台のＡＰサーバに割り当てることにより並列処理を実現するため、ＷｅｂサーバとＡＰサーバとの間に１台のロードバランサが追加されるという変更がなされている。差分分析部２１は、このような変更を、構造情報についての差分情報として抽出する。
【００３０】
また、差分分析部２１は、設計用システムモデル情報５１に含まれる処理情報と構築用システムモデル情報５２に含まれる処理情報との差分を抽出する。例えば、図３に示した例では、構築用システムモデル情報５２の処理情報は、設計用システムモデル情報５１の処理情報に比べ、ＡＰサーバが追加されたことにより、「受け取ったリクエスト処理に応じてデータベース及びアプリケーションと連携処理をする」ように振る舞う箇所がシステムモデル中で１つ追加されている。また、「システムモデル中の２つの連携処理をする箇所の間で、リスエストの割り振り及び稼働のチェックを行う」ように振る舞う箇所がシステムモデル中で１つ追加されている。差分分析部２１は、このような振る舞いの変更を、処理情報についての差分情報として抽出する。
【００３１】
また、差分分析部２１は、設計用システムモデル情報５１に含まれる割り当て情報と構築用システムモデル情報５２に含まれる割り当て情報との差分を抽出する。さらに、差分分析部２１は、設計用システムモデル情報５１に含まれるプロパティ情報と構築用システムモデル情報５２に含まれるプロパティ情報との差分を抽出する。
【００３２】
なお、図３では、ＡＰサーバなどのリソースが増加する変更が行われる例を示したが、リソースが減少する変更に対して、システム構築支援装置２はナレッジを出力してもよい。ＤＢサーバが設計用システムモデルでは２台であったのに対し、構築用システムモデルでは１台に減少し、この１台のＤＢサーバにより集中管理する場合を例にすると、両システムモデルの差分としては以下の情報が抽出される。
【００３３】
この例においては、設計用システムモデルの修正により、ＤＢサーバが２台から１台に減少する変更が発生し、それに合わせて物理的な接続の変更も発生する。これら変更が、構造情報の差分として得られる。
また、ＤＢサーバが２台の構成から単一構成に変更されたため、単一のＤＢサーバに要求される可用性及び信頼性なども高くなることが想定される。この場合、この要求に応えるべくサーバが備えるリソース量などの情報に差分が生じる。この差分は、プロパティ情報の差分として得られる。
また、「データの蓄積及び参照の処理を実行する」という働きを持つ箇所がシステムモデル中で１つ減少し、複数ＤＢサーバを持つ構成の際に設定される「ＤＢサーバ間の同期をする」という処理が不要になる。したがって、このような処理の変更が、処理情報の差分として得られる。
構築用システムモデルでは、ＤＢサーバが集中管理を行うという役割を追加されることとなり、この追加が割り当て情報の差分として得られる。
【００３４】
差分分析部２１は、差分を抽出すると、抽出した差分を分析し、差分種類、差分の対象となったリソース、差分の対象となったリソースのシステム内での役割、及び変更目的を特定する。なお、差分種類は、システムモデル情報に含まれる情報のうちいずれの情報についての差分であるかを表すものであり、変更目的は、システムモデル情報の構成要素が変更された際の変更目的である。また、差分分析部２１は、リソースにおいて、使用されるソフトウェアの変更が生じた場合には、変更前のソフトウェアを識別する情報と、変更後のソフトウェアを識別する情報とをさらに特定する。なお、特定されるリソースとしては、例えば、サーバ、ロードバランサ、ルータなどのネットワーク機器などが挙げられる。
【００３５】
差分分析部２１は、抽出した差分がいずれの情報についての差分であるかを判定することにより、差分種類を特定する。また、差分分析部２１は、構造情報を参照することにより、差分の対象となったリソースを特定する。また、差分分析部２１は、割り当て情報を参照することにより、差分の対象となったリソースの役割を特定する。さらに、差分分析部２１は、システムモデル情報に含まれる構造情報、処理情報、割り当て情報、及びプロパティ情報のうち、差分が生じた情報に表記されている変更目的を取得する。
差分分析部２１は、分析結果のファイルを検索部２３に出力する。
【００３６】
検索部２３は、差分分析部２１により抽出された差分に基づいて、構築用システムモデル情報５２から実際にシステムを構築する際に用いられるナレッジ情報を、ナレッジ記憶部２２に記憶されたナレッジ情報の中から検索する。これにより、検索部２３は、設計用システムモデル情報（第１のシステムモデル情報）から構築用システムモデル情報（第２のシステムモデル情報）への変更に関連があるナレッジ情報を検索する。具体的には、検索部２３は、差分分析部２１による分析結果から、この分析結果に対応するナレッジをナレッジ記憶部２２から検索するための検索キーを生成する。そして、検索部２３は、生成した検索キーを用いて検索を実施する。なお、本実施の形態では、検索部２３は、少なくとも、差分分析部２１により抽出された変更目的を、検索キーとして用いて検索を行う。生成される検索キーの具体例については後述する。
【００３７】
なお、本実施の形態では、検索部２３は、構造情報における変更に関するナレッジの検索、処理情報における変更に関するナレッジの検索、及びプロパティ情報における変更に関するナレッジの検索を行い、割り当て情報における変更に関するナレッジの検索は行わない。これは、システムを構成する機器とシステム内で実行される処理との対応付けのみの変更は、システムモデルの実現作業に直接的な影響を与えないためである。ただし、検索部２３は、割り当て情報における変更に関するナレッジの検索を行ってもよい。
【００３８】
図３の例によれば、検索部２３は、例えば、構造情報における変更に関するナレッジとして、ロードバランサ及びＡＰサーバを追加する変更を行った場合にシステムを稼働させるための設定やその設定方法などについてのナレッジを抽出する。また、検索部２３は、例えば、処理情報における変更に関するナレッジとして、ロードバランサ又はＡＰサーバとしての処理を機器に実行させるための設定や、設定の際の注意点などについてのナレッジを抽出する。また、検索部２３は、例えば、プロパティ情報における変更に関するナレッジとして、リソース量やソフトウェアなどの変更により構築用システムモデルの実現方法や設定がどのように変わるのか、どのような注意点があるのかなどのナレッジを抽出する。さらに、プロパティ情報の中でソフトウェア変更がある場合は、検索部２３は、変更前後のソフトウェアの種類ごとに、それぞれの特徴と、変更によりどのような点が異なるかなどをまとめたナレッジを抽出する。
【００３９】
ナレッジ記憶部２２は、ナレッジベースであり、システムモデル情報からシステムを構築する際に用いられるナレッジ情報を記憶するデータベースである。ナレッジ記憶部２２は、図４Ａ、図４Ｂ及び図４Ｃに示すように、例えば、システムモデル情報からの仮想環境の構築に関するナレッジを情報として記憶している。具体的には、例えば、構造情報における変更に関するナレッジ、処理情報における変更に関するナレッジ、及びプロパティ情報における変更に関するナレッジを記憶している。なお、ナレッジ記憶部２２は、これらのナレッジに限らず、割り当て情報における変更に関するナレッジを記憶してもよい。ナレッジ記憶部２２に記憶されたナレッジには、例えば、システムモデルの変更により生じる、構築の手法や運用方法の変更点、この変更点に対する対処法、構築の際の注意点などが含まれる。
【００４０】
ナレッジ記憶部２２に記憶された各ナレッジ情報は、「ナレッジＩＤ」という固有の識別情報を主キーとして有している。また、各ナレッジ情報は、属性として、「リソース」、「役割」、「変更目的」、「変更前ソフトウェア」、「変更後ソフトウェア」、「差分種類」、「ナレッジ」を有している。なお、これらの属性と、差分分析部２１により特定される情報との対応関係は次のようになっている。
【００４１】
「リソース」は、差分分析部２１により特定される、差分の対象となったリソースに対応している。「役割」は、差分分析部２１により特定される、差分の対象となったリソースのシステム内での役割に対応している。「変更目的」は、差分分析部２１により特定される変更目的に対応している。「変更前ソフトウェア」は、差分分析部２１により特定される、変更前のソフトウェアを識別する情報に対応している。「変更後ソフトウェア」は、差分分析部２１により特定される、変更後のソフトウェアを識別する情報に対応している。「差分種類」は、差分分析部２１により特定される差分種類に対応している。なお、「ナレッジ」は、実際にシステムを構築する際に用いられる留意点について示す情報である。
ナレッジ記憶部２２は、検索部２３により生成された検索キーに従った検索結果を返す。
【００４２】
出力部２４は、検索部２３により検索されたナレッジ情報を出力する。出力部２４は、例えば、ディスプレイなどの表示装置に表示出力する。
【００４３】
次に、システム構築支援装置２の動作について図５〜図７を参照して説明する。図５は、システム構築支援装置２の全体動作の一例を示すフローチャートである。
【００４４】
ステップ１０（Ｓ１０）において、モデル修正部２０が、設計用システムモデル情報５１を修正し、構築用システムモデル情報５２を生成する。
【００４５】
ステップ２０（Ｓ２０）において、差分分析部２１が、修正前後のシステムモデル情報の差分を抽出する。すなわち、差分分析部２１は、モデル修正部２０に入力された設計用システムモデル情報５１と、モデル修正部２０から出力された構築用システムモデル情報５２との差分を抽出する。図６は、図５に示されるステップ２０の具体的な動作の一例を示すフローチャートである。以下、図６を参照して、ステップ２０の具体的な動作について説明する。
【００４６】
ステップ２０１（Ｓ２０１）において、差分分析部２１は、設計用システムモデル情報５１を読み込む。ステップ２０２（Ｓ２０２）において、差分分析部２１は、モデル修正部２０から出力された構築用システムモデル情報５２を読み込む。
【００４７】
ステップ２０３（Ｓ２０３）において、差分分析部２１は、システムモデル情報に含まれる４種類の情報のうち、構造情報について比較する。すなわち、差分分析部２１は、設計用システムモデル情報５１に含まれる構造情報と構築用システムモデル情報５２に含まれる構造情報とを比較する。具体的には、差分分析部２１は、システムモデル情報における構造情報についての記載内容の増減をチェックする。ステップ２０４（Ｓ２０４）において、構造情報において違いがあるか否かが判定される。ステップ２０４において違いがあると判定された場合、処理はステップ２０５へ移行する。この場合、システムの接続や構造などといった物理的な変更が加わったことを意味する。ステップ２０４において違いがないと判定された場合、処理はステップ２０６へ移行する。ステップ２０５（Ｓ２０５）において、差分分析部２１は、比較により得られた差分を構造情報の差分として保存する。
【００４８】
次に、ステップ２０６（Ｓ２０６）において、差分分析部２１は、システムモデル情報で定義されているプロパティ情報について比較する。すなわち、差分分析部２１は、設計用システムモデル情報５１に含まれるプロパティ情報と構築用システムモデル情報５２に含まれるプロパティ情報とを比較する。具体的には、差分分析部２１は、機器のリソース量などの設定内容に変更がないかチェックする。ステップ２０７（Ｓ２０７）において、プロパティ情報において違いがあるか否かが判定される。ステップ２０７において違いがあると判定された場合、処理はステップ２０８へ移行する。この場合、各機器のスペック又は設定に変更があったことを意味する。ステップ２０７において違いがないと判定された場合、処理はステップ２０９へ移行する。ステップ２０８（Ｓ２０８）において、差分分析部２１は、比較により得られた差分をプロパティ情報の差分として保存する。
【００４９】
次に、ステップ２０９（Ｓ２０９）において、差分分析部２１は、システムモデル情報で定義されている処理情報について比較する。すなわち、差分分析部２１は、設計用システムモデル情報５１に含まれる処理情報と構築用システムモデル情報５２に含まれる処理情報とを比較する。具体的には、差分分析部２１は、システムにより実行される処理に変更がないかチェックする。ステップ２１０（Ｓ２１０）において、処理情報において違いがあるか否かが判定される。ステップ２１０において違いがあると判定された場合、処理はステップ２１１へ移行する。この場合、たとえ、システムをブラックボックスとして見た際の入出力が同じであったとしても、システムの中身の部分的な振る舞いの構成は変更されている。ステップ２１０において違いがないと判定された場合、処理はステップ２１２へ移行する。ステップ２１１（Ｓ２１１）において、差分分析部２１は、比較により得られた差分を処理情報の差分として保存する。
【００５０】
次に、ステップ２１２（Ｓ２１２）において、差分分析部２１は、システムモデル情報で定義されている割り当て情報について比較する。すなわち、差分分析部２１は、設計用システムモデル情報５１に含まれる割り当て情報と構築用システムモデル情報５２に含まれる割り当て情報とを比較する。本実施の形態において、割り当ての変更に関してのナレッジは検索されないが、割り当て情報は、構造情報と処理情報とを結び付ける情報であるため、システム全体の働きの差分を把握したり、変更目的を特定したりするために、差分が抽出される。ステップ２１３（Ｓ２１３）において、割り当て情報において違いがあるか否かが判定される。ステップ２１３において違いがあると判定された場合、処理はステップ２１４へ移行する。ステップ２１３において違いがないと判定された場合、差分の抽出処理は終了する。ステップ２１４（Ｓ２１４）において、差分分析部２１は、比較により得られた差分を割り当て情報の差分として保存する。ステップ２１４の後、処理は図５に示すステップ３０に移行する。
【００５１】
図５に戻り、システム構築支援装置２の全体動作の説明を続ける。
ステップ３０において、差分分析部２１は、ステップ２０で得られた差分の分析を行う。図７は、図５に示されるステップ３０の具体的な動作の一例を示すフローチャートである。以下、図７を参照して、ステップ３０の具体的な動作について説明する。
【００５２】
差分分析部２１は、ステップ２０で得られた差分について分析を行う。具体的には、ステップ２０で得られた各差分に対し、以下の処理を行う。
ステップ３０１（Ｓ３０１）において、差分分析部２１は、ステップ２０で得られた差分について、構造情報についての差分であるか否かを判定する。差分が構造情報についての差分である場合、処理はステップ３０２へ移行し、そうでない場合、処理はステップ３０３へ移行する。ステップ３０２（Ｓ３０２）において、差分分析部２１は、差分種類を「構造変更」と決定する。
【００５３】
ステップ３０３（Ｓ３０３）において、差分分析部２１は、ステップ２０で得られた差分について、プロパティ情報のソフトウェアについての差分であるか否かを判定する。差分がソフトウェアについての差分である場合、処理はステップ３０４へ移行し、そうでない場合、処理はステップ３０６へ移行する。ステップ３０４（Ｓ３０４）において、差分分析部２１は、差分種類を「ＳＷ（ソフトウェア）変更」と決定する。また、ステップ３０４の後、ステップ３０５（Ｓ３０５）において、差分分析部２１は、変更前ソフトウェアと変更後ソフトウェアを取得する。
【００５４】
ステップ３０６（Ｓ３０６）において、差分分析部２１は、ステップ２０で得られた差分について、プロパティ情報についての差分であるか否かを判定する。差分がプロパティ情報についての差分である場合、すなわちプロパティ情報についての差分のうちソフトウェア以外の差分である場合、処理はステップ３０７へ移行し、そうでない場合、処理はステップ３０８へ移行する。ステップ３０７（Ｓ３０７）において、差分分析部２１は、差分種類を「プロパティ変更」と決定する。
【００５５】
ステップ３０８（Ｓ３０８）において、差分分析部２１は、ステップ２０で得られた差分について、処理情報についての差分であるか否かを判定する。差分が処理情報についての差分である場合、処理はステップ３０９へ移行し、そうでない場合、分析処理は終了する。ステップ３０９（Ｓ３０９）において、差分分析部２１は、差分種類を「処理変更」と決定する。なお、本実施の形態では、割り当て情報における変更に関するナレッジの検索は行われないため、ステップ２０で得られた差分が割り当て情報についての差分であるか否かの判定は行われないが、割り当て情報における変更に関するナレッジの検索を行う場合には、ステップ３０１、３０３、３０６、及び３０８と同様に、判定が行われてもよい。また、差分が割り当て情報についての差分であると判定された場合、差分分析部２１は、差分種類を「割り当て変更」と決定してもよい。
【００５６】
ステップ３０２、３０５、３０７、及び３０９の後、処理は、ステップ３１０へ移行する。
ステップ３１０（Ｓ３１０）において、差分分析部２１は、ステップ２０で得られた差分について、差分の対象となったリソース、差分の対象となったリソースのシステム内での役割、及び変更目的を特定する。ステップ３１０の後、分析処理は終了する。
【００５７】
図５に戻り、システム構築支援装置２の全体動作の説明を続ける。
ステップ３０の後、ステップ４０（Ｓ４０）において、検索部２３は、ステップ３０における差分分析部２１の分析結果に基づいて、ステップ２０で抽出された各差分に対しそれぞれ検索キーを生成する。すなわち、検索部２３は、ステップ３０における分析により特定された、差分種類、差分の対象となったリソース、差分の対象となったリソースのシステム内での役割、及び変更目的により、ＡＮＤ検索をするようキーを作成する。具体的には、差分種類が「ＳＷ変更」以外の場合には、検索キー＝差分種類*リソース*役割*変更目的、というようにキーが生成される。また、差分種類が「ＳＷ変更」である場合には、検索キー＝差分種類*リソース*役割*変更目的*変更前ソフトウェア*変更後ソフトウェア、というようにキーが生成される。
【００５８】
このような検索キーを用いる理由は、より適切なナレッジを抽出及び提示するためである。システムモデルに対する同じような変更でも、上記検索キーの要素のうちのいずれか一つでも異なれば、用いられるノウハウ、注意点などは異なるため、それらを区別して提供するほうがよい。例えば、ＡＰサーバを一台追加するという変更であれば、その変更目的に応じて異なるナレッジが提供される。具体的には、図４Ａに示したナレッジＩＤが１のナレッジとナレッジＩＤが２のナレッジでは、差分種類、リソース、役割は同様だが変更目的が異なっており（一方は、負荷分散であり、他方は冗長化である）、提示されるナレッジも図４Ａに示されるように異なっている。このように、同じ役割をもつサーバを追加するという事象に対して、その事象ごとに目的を実現するために用いられるナレッジは異なるため、変更目的が検索キーとして利用される。リソース、役割などについても同様であり、これらの違いにより異なるナレッジを検索することで、構築作業者はより的確な知識を持った作業を行うことができる。
【００５９】
ステップ５０（Ｓ５０）において、検索部２３は、ステップ４０で生成した検索キーを用いて、ナレッジ記憶部２２における検索を行う。
【００６０】
最後に、ステップ６０（Ｓ６０）において、出力部２４は、ステップ５０で検索されたナレッジ情報を出力する。
【００６１】
以上、実施の形態１について説明した。実施の形態１にかかるシステム構築支援装置２によれば、仮想環境などのシステム構築に対する知識を広くカバーするナレッジベースから、システムモデルの変更に関するナレッジを、自動的に抽出することができる。このため、システムを構築する作業者の経験や知識のレベルによらず、所望の品質のシステムを構築することができる。以下、このような効果について、補足説明する。
シミュレーションなどでシステムモデルの性能を評価し、システムモデルを妥当なものへと修正したとしても、システムモデルの修正に伴い生じる実現方法の変更及び設定の留意点など、構築作業の際に参照される（用いられる）事項についてまでは把握できなかった。このため、これら事項について、作業者が独自で解決せねばならないため、実現された環境の動作や運用は作業者の知識レベルに依存していた。
特に、仮想環境の構築に慣れていない人にとって、モデル修正部２０による修正前後での差が生じた原因と、その差に対する対応策については、的確に分析することが難しい。これは、予測結果のシステムモデルの構造情報等が同じでも、システムモデルの変更の目的によって構築時の際に参照される（用いられる）ナレッジが異なるためである。
しかしながら、本実施の形態では、ナレッジベースを利用することで、作業者の構築に関する知識のレベルによらず、誰でも容易に所望の品質のシステムを構築することができる。
【００６２】
＜実施の形態２＞
次に、実施の形態２にかかるシステム構築支援装置３について説明する。
実施の形態１にかかるシステム構築支援装置２では、ソフトウェアの変更に関するナレッジは、変更前後のソフトウェアの組み合わせごとにナレッジ記憶部２２に保存されている。しかしソフトウェア製品は市場に非常に多く存在し、また今後も増えていくため、新たなソフトウェアに対応するようナレッジ記憶部２２のナレッジを増やしていくことは容易ではない。そこで、本実施の形態では、ソフトウェアに関するナレッジ情報をソフトウェアごとに記憶するナレッジベースを別途設け、ナレッジ記憶部２２に記憶されたナレッジと別に管理する。
【００６３】
図８は、実施の形態２にかかるシステム構築支援装置３の構成の詳細を示すブロック図である。図８に示すように、実施の形態２にかかるシステム構築支援装置３は、ソフトウェアナレッジ記憶部３０が追加されている点で、実施の形態１にかかるシステム構築支援装置２と異なる。以下、システム構築支援装置３について、システム構築支援装置２と異なる点を中心に説明する。
【００６４】
ソフトウェアナレッジ記憶部３０は、ソフトウェアごとに、ソフトウェアに関するナレッジ情報を記憶するデータベースである。
【００６５】
図９は、ソフトウェアナレッジ記憶部３０に記憶された情報の一例を示す図である。ソフトウェアナレッジ記憶部３０に記憶された情報は、次のような属性を持っている。ソフトウェアナレッジ記憶部３０に記憶された情報は、ソフトウェアを一意に識別する要素として、ソフトウェアＩＤ（ＳＷＩＤ）を主キーとして持つ。また、ソフトウェアナレッジ記憶部３０に記憶された情報は、ソフトウェア名称として、ソフトウェアの製品名を持っている。また、ソフトウェアナレッジ記憶部３０に記憶された情報は、動作要件として、ソフトウェアを動作させるためにシステム基盤に求められる要件を持つ。そして、ソフトウェアナレッジ記憶部３０に記憶された情報は、ソフトウェアナレッジ（ＳＷナレッジ）として、ソフトウェアを単体で利用する際の、ソフトウェアに固有の特徴や使い方に関する情報を含むナレッジを持っている。
【００６６】
また、本実施の形態にかかるナレッジ記憶部２２は、実施の形態１にかかるナレッジ記憶２２と異なり、ソフトウェアに関するナレッジ情報以外のナレッジ情報を記憶している。
このため、本実施の形態にかかる検索部２３は、差分分析部２１により抽出された差分に基づいて、ナレッジ記憶部２２に記憶されたナレッジ情報と、ソフトウェアナレッジ記憶部３０に記憶されたナレッジ情報とを取得する。
【００６７】
より具体的には、検索部２３は、ソフトウェアの変更に関するナレッジの検索時に、ナレッジ記憶部２２における検索に加えて、ソフトウェアナレッジ記憶部３０における検索を行い、変更前のソフトウェアについての情報と、変更後のソフトウェアについての情報とを取得する。なお、本実施の形態では、ソフトウェアナレッジ記憶部３０からの情報の取得にあたっては、ナレッジ記憶部２２のデータベースが、ソフトウェアナレッジ記憶部３０を参照することにより取得されるが、ソフトウェアナレッジ記憶部３０からの情報の取得は他の方法であってもよい。
【００６８】
また、出力部２４は、ナレッジ記憶部２２から得られた情報の表示のみならず、変更前のソフトウェアについての情報と変更後のソフトウェアについての情報とを比較できるように表示する。このように、システム構築支援装置３は、ナレッジ記憶部２２から得られる情報とソフトウェアナレッジ記憶部３０から得られる情報とを組み合わせることで、差分に対する詳細なナレッジの提供を可能にする。
【００６９】
本実施の形態では、ソフトウェアについてのナレッジについては、ナレッジ記憶部２２とは別のソフトウェアナレッジ記憶部３０で管理しているため、システム構築支援装置３の運用においてソフトウェア情報の管理コストを以下の通り抑制することができる。
ソフトウェア製品は日々増加するものなので、変更前ソフトウェアと変更後ソフトウェアの組合せは運用していくにつれ増加する。したがって、実施の形態１にかかるシステム構築支援装置２では、ナレッジ記憶部２２における情報は膨大になる。また、実施の形態１にかかるナレッジ記憶部２２には、ソフトウェアに関するナレッジ情報が重複して繰り返し記述されているため、ソフトウェア製品情報に変更が加わった場合にナレッジ記憶部２２に記憶されたナレッジを一つ一つ精査し、必要に応じてこの変更を反映させてもよい。このようなことから、実施の形態１にかかるシステム構築支援装置２においては、ソフトウェア情報に関する管理コストを低減することが望まれる。しかし、本実施の形態では、ソフトウェアについての情報は、別途、ソフトウェアナレッジ記憶部３０で一元管理される。これにより、ナレッジ記憶部２２に、同じソフトウェアの情報が別々のデータとして重複記憶されていないため、ソフトウェア情報の変更に際して、同じソフトウェア情報を、繰り返し入力しなおす必要がなくなり、管理コストを抑制することができる。また、ソフトウェア製品市場の変化に伴う管理コストを抑制することができる。
【００７０】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、上記の実施の形態では、モデル修正部２０が設けられているが、システム構築支援装置２、３は、必ずしもモデル修正部２０を有さなくてもよい。差分分析部２１には、第１のシステムモデル情報と、第１のシステムモデル情報に対し修正がなされた第２のシステムモデル情報とが入力さればよく、第２のシステムモデル情報が、例えば作業者により修正されたものであってもよい。
【００７１】
また、システム構築支援装置は、コンピュータとしての機能を備えており、システム構築支援装置の各構成はＣＰＵによってプログラムを実行することによって実現し得る。
【００７２】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体（non-transitory computer readable medium）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（tangible storage medium）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Read Only Memory）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Programmable ROM）、ＥＰＲＯＭ（Erasable PROM）、フラッシュＲＯＭ、ＲＡＭ（random access memory））を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（transitory computer readable medium）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【００７３】
また、例えば、上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
（付記１）
システムのモデルであるシステムモデル情報を構成する構成要素に対応するナレッジ情報を記憶するナレッジ記憶手段と、
第１のシステムモデル情報と、第２のシステムモデル情報との差分に対応する１以上のナレッジ情報を前記ナレッジ記憶手段に記憶されたナレッジ情報から選択して出力する出力手段と
を有するシステム構築支援装置。
（付記２）
前記出力手段は、前記差分、及び前記システムモデル情報の構成要素が変更された際の変更目的に対応する１以上のナレッジ情報を出力する
付記１に記載のシステム構築支援装置。
（付記３）
前記第１のシステムモデル情報と、前記第２のシステムモデル情報との差分を抽出する差分分析手段と、
前記差分分析手段により抽出された差分に基づいて、前記第２のシステムモデル情報からシステムを構築する際に用いられるナレッジ情報を前記ナレッジ記憶手段に記憶されたナレッジ情報の中から検索する検索手段と、
をさらに有し、
前記出力手段は、前記検索手段により検索されたナレッジ情報を出力する
付記１又は２に記載のシステム構築支援装置。
（付記４）
前記システムモデル情報は、システムを構成する機器間の接続関係を示す構造情報を含み、
前記差分分析手段が、前記第１のシステムモデル情報に含まれる前記構造情報と、前記第２のシステムモデル情報に含まれる前記構造情報との差分を抽出する
付記３に記載のシステム構築支援装置。
（付記５）
前記システムモデル情報は、システムにより実行される処理を示す処理情報を含み、
前記差分分析手段が、前記第１のシステムモデル情報に含まれる前記処理情報と、前記第２のシステムモデル情報に含まれる前記処理情報との差分を抽出する
付記３又は４に記載のシステム構築支援装置。
（付記６）
前記システムモデル情報は、システムを構成する機器のシステムにおける役割を示す割り当て情報を含み、
前記差分分析手段が、前記第１のシステムモデル情報に含まれる前記割り当て情報と、前記第２のシステムモデル情報に含まれる前記割り当て情報との差分を抽出する
付記３乃至５いずれか１つに記載のシステム構築支援装置。
（付記７）
前記システムモデル情報は、システムを構成する機器の設定内容を示すプロパティ情報を含み、
前記差分分析手段が、前記第１のシステムモデル情報に含まれる前記プロパティ情報と、前記第２のシステムモデル情報に含まれる前記プロパティ情報との差分を抽出する
付記３乃至６いずれか１つに記載のシステム構築支援装置。
（付記８）
前記プロパティ情報は、前記機器で実行されるソフトウェアを特定するソフトウェア情報を含む
付記７に記載のシステム構築支援装置。
（付記９）
ソフトウェアごとに、ソフトウェアに関するナレッジ情報を記憶するソフトウェアナレッジ記憶手段をさらに有し、
前記ナレッジ記憶手段は、ソフトウェアに関するナレッジ情報以外のナレッジ情報を記憶し、
前記検索手段は、前記差分分析手段により抽出された差分に基づいて、前記ナレッジ記憶手段に記憶されたナレッジ情報と、前記ソフトウェアナレッジ記憶手段に記憶されたナレッジ情報とを取得する
付記８に記載のシステム構築支援装置。
（付記１０）
前記検索手段は、少なくとも、前記差分分析手段により抽出された変更目的を、検索キーとして用いて検索を行う
付記３乃至９いずれか１つに記載のシステム構築支援装置。
（付記１１）
前記第１のシステムモデル情報により定義されるシステムの性能を予測し、所定の性能以上となるよう前記第１のシステムモデル情報を前記第２のシステムモデル情報へと修正するモデル修正手段をさらに有する
付記１乃至１０いずれか１つに記載のシステム構築支援装置。
（付記１２）
システムのモデルであるシステムモデル情報を構成する構成要素に対応するナレッジ情報を記憶し、
第１のシステムモデル情報と、第２のシステムモデル情報との差分に対応する１以上のナレッジ情報を記憶されたナレッジ情報から選択して出力する
システム構築支援方法。
（付記１３）
システムのモデルであるシステムモデル情報を構成する構成要素に対応するナレッジ情報をデータベースに記憶するナレッジ記憶ステップと、
第１のシステムモデル情報と、第２のシステムモデル情報との差分に対応する１以上のナレッジ情報を前記データベースに記憶されたナレッジ情報から選択して出力する出力ステップと
をコンピュータに実行させるプログラム。
【符号の説明】
【００７４】
１、２、３    システム構築支援装置
２１    差分分析部
１０、２２    ナレッジ記憶部
２３    検索部
１１、２４    出力部
２０    モデル修正部
３０    ソフトウェアナレッジ記憶部
５１    設計用システムモデル情報
５２    構築用システムモデル情報
【図１】
0006613725.tif 000002
【図２】
0006613725.tif 000003
【図３】
0006613725.tif 000004
【図４Ａ】
0006613725.tif 000005
【図４Ｂ】
0006613725.tif 000006
【図４Ｃ】
0006613725.tif 000007
【図５】
0006613725.tif 000008
【図６】
0006613725.tif 000009
【図７】
0006613725.tif 000010
【図８】
0006613725.tif 000011
【図９】
0006613725.tif 000012