(57)【要約】      （修正有）【課題】大量のデータを複数の拠点で処理する場合のネットワークにおけるデータ通信量を低減する。【解決手段】第１情報処理装置２０と、第１情報処理装置２０と通信可能に接続する少なくとも１つ以上の第２情報処理装置４０とを含んで構成される情報処理システムに所定のプログラムを導入するためのプログラム導入支援システム１であって、所定のプログラムを構成するプログラムである単位プログラムにおけるデータの入力又は出力に関する入出力情報を、所定のプログラムを実行することにより取得する入出力情報取得部２０３と、単位プログラムのそれぞれを第１情報処理装置２０又は第２情報処理装置４０のいずれに配置するかの基準のポリシー情報を取得するポリシー情報取得部２０５と、入出力情報とポリシー情報とに基づき各単位プログラムの配置を決定する配置決定部２０６とを備える。【選択図】図１
2018147025.tif 000002
【特許請求の範囲】
【請求項１】
第１の情報処理装置と、前記第１の情報処理装置と通信可能に接続する少なくとも１つ以上の第２の情報処理装置とを含んで構成される情報処理システムに所定のプログラムを導入するための、プロセッサ及びメモリを備えるプログラム導入支援システムであって、
前記所定のプログラムを構成するプログラムである単位プログラムにおけるデータの入力又は出力に関する情報である入出力情報を、前記所定のプログラムを実行することにより取得する入出力情報取得部と、
前記単位プログラムのそれぞれを前記第１の情報処理装置又は前記第２の情報処理装置のいずれに配置するかの基準の情報であるポリシー情報を取得するポリシー情報取得部と、
前記取得した入出力情報と、前記取得したポリシー情報とに基づき、前記各単位プログラムの配置を決定する配置決定部と、
を備える、プログラム導入支援システム。
【請求項２】
前記ポリシー情報取得部は、前記ポリシー情報として、前記第１の情報処理装置及び前記第２の情報処理装置の間、又は各前記第２の情報処理装置の間で入力又は出力されたデータの量に応じて、前記単位プログラムのそれぞれを前記第１の情報処理装置又は前記第２の情報処理装置のいずれに配置するかを決定する基準を示す情報を取得する、請求項１に記載のプログラム導入支援システム。
【請求項３】
前記ポリシー情報取得部は、前記ポリシー情報として、前記単位プログラムに入力又は出力されるデータの種類に応じて当該単位プログラムを前記第２の情報処理装置に配置するか否かを決定する基準を示す情報を取得する、請求項１に記載のプログラム導入支援システム。
【請求項４】
前記所定のプログラムの実行に関する条件についての情報であるテスト情報を取得するテスト情報取得部を備え、
前記入出力情報取得部は、前記取得したテスト情報に基づき、前記所定のプログラムを実行する、
請求項１に記載のプログラム導入支援システム。
【請求項５】
前記テスト情報取得部は、前記テスト情報として、前記所定のプログラムに対して入力されるデータに関する条件、前記所定のプログラムから出力されるデータに関する条件、又は、前記所定のプログラムの実行時間に関する条件のうち少なくともいずれかの情報を取得する、請求項４に記載のプログラム導入支援システム。
【請求項６】
前記第１の情報処理装置又は前記第２の情報処理装置の性能に関する情報である性能情報を取得する性能情報取得部を備え、
前記配置決定部は、前記取得した性能情報と、前記入出力情報と、前記ポリシー情報とに基づき、前記各単位プログラムの配置を決定する、
請求項１に記載のプログラム導入支援システム。
【請求項７】
前記性能情報取得部は、前記性能情報として、前記第１の情報処理装置又は前記第２の情報処理装置が備えるハードウェアの性能に関する情報を取得する、請求項６に記載のプログラム導入支援システム。
【請求項８】
前記性能情報取得部は、前記性能情報として、前記第１の情報処理装置又は前記第２の情報処理装置の通信性能に関する情報を取得する、請求項６に記載のプログラム導入支援システム。
【請求項９】
前記決定した各単位プログラムの配置に関する情報を出力する配置結果出力部を備える、請求項１に記載のプログラム導入支援システム。
【請求項１０】
前記テスト情報の入力をユーザから受け付けるテスト情報入力部を備える、請求項４に記載のプログラム導入支援システム。
【請求項１１】
前記決定した各単位プログラムの配置に基づき、前記単位プログラムのそれぞれを、前記第１の情報処理装置又は前記第２の情報処理装置のいずれかに送信するプログラム送信部を備える、請求項１に記載のプログラム導入支援システム。
【請求項１２】
前記所定のプログラムの実行に関する条件についての情報であるテスト情報を取得するテスト情報取得部と、
前記第１の情報処理装置又は前記第２の情報処理装置の性能に関する情報である性能情報を取得する性能情報取得部と、
前記決定した各単位プログラムの配置に関する情報を出力する配置結果出力部と、
前記テスト情報の入力をユーザから受け付けるテスト情報入力部と、
前記決定した各単位プログラムの配置に基づき、前記単位プログラムのそれぞれを、前記第１の情報処理装置又は前記第２の情報処理装置のいずれかに送信するプログラム送信部とをさらに備え、
前記テスト情報取得部は、前記テスト情報として、前記所定のプログラムに対して入力されるデータに関する条件、前記所定のプログラムから出力されるデータに関する条件、又は、前記所定のプログラムの実行時間に関する条件のうち少なくともいずれかの情報を取得し、
前記入出力情報取得部は、前記取得したテスト情報に基づき、前記所定のプログラムを実行し、
前記性能情報取得部は、前記性能情報として、前記第１の情報処理装置又は前記第２の情報処理装置が備えるハードウェアの性能に関する情報を取得し、又は、前記性能情報として、前記第１の情報処理装置又は前記第２の情報処理装置の通信性能に関する情報を取得し、
前記ポリシー情報取得部は、前記ポリシー情報として、前記第１の情報処理装置及び前記第２の情報処理装置の間、又は各前記第２の情報処理装置の間で入力又は出力されたデータの量に応じて、前記単位プログラムのそれぞれを前記第１の情報処理装置又は前記第２の情報処理装置のいずれに配置するかを決定する基準を示す情報を取得するか、又は、前記ポリシー情報として、前記単位プログラムに入力又は出力されるデータの種類に応じて当該単位プログラムを前記第２の情報処理装置に配置するか否かを決定する基準を示す情報を取得し、
前記配置決定部は、前記取得した性能情報と、前記入出力情報と、前記ポリシー情報とに基づき、前記各単位プログラムの配置を決定する、
請求項１に記載のプログラム導入支援システム。
【請求項１３】
第１の情報処理装置と、前記第１の情報処理装置と通信可能に接続する少なくとも１つ以上の第２の情報処理装置とを含んで構成される情報処理システムに所定のプログラムを導入するためのプログラム導入支援方法であって、
プロセッサ及びメモリを備える情報処理装置が、
前記所定のプログラムを構成するプログラムである単位プログラムにおけるデータの入力又は出力に関する情報である入出力情報を、前記所定のプログラムを実行することにより取得する入出力情報取得処理と、
前記単位プログラムのそれぞれを前記第１の情報処理装置又は前記第２の情報処理装置のいずれに配置するかの基準の情報であるポリシー情報を取得するポリシー情報取得処理
と、
前記取得した入出力情報と、前記取得したポリシー情報とに基づき、前記各単位プログラムの配置を決定する配置決定処理と、
を実行する、プログラム導入支援方法。
【請求項１４】
前記ポリシー情報取得処理は、前記ポリシー情報として、前記第１の情報処理装置及び前記第２の情報処理装置の間、又は各前記第２の情報処理装置の間で入力又は出力されたデータの量に応じて、前記単位プログラムのそれぞれを前記第１の情報処理装置又は前記第２の情報処理装置のいずれに配置するかを決定する基準を示す情報を取得する処理である、請求項１３に記載のプログラム導入支援方法。
【請求項１５】
第１の情報処理装置と、前記第１の情報処理装置と通信可能に接続する少なくとも１つ以上の第２の情報処理装置とを含んで構成される情報処理システムに所定のプログラムを導入するための、プログラム導入支援プログラムであって、
プロセッサ及びメモリを備える情報処理装置に、
前記所定のプログラムを構成するプログラムである単位プログラムにおけるデータの入力又は出力に関する情報である入出力情報を、前記所定のプログラムを実行することにより取得する入出力情報取得処理と、
前記単位プログラムのそれぞれを前記第１の情報処理装置又は前記第２の情報処理装置のいずれに配置するかの基準の情報であるポリシー情報を取得するポリシー情報取得処理と、
前記取得した入出力情報と、前記取得したポリシー情報とに基づき、前記各単位プログラムの配置を決定する配置決定処理と、
を実行させる、プログラム導入支援プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム導入支援システム、プログラム導入支援方法、及びプログラム導入支援プログラムに関する。
【背景技術】
【０００２】
複数の国や地域にまたがって広範囲に事業を行っている事業体などにおいては、これらに分散して存在する事業拠点（工場など）で生成される大量のデータを収集して分析し、その結果に基づき各拠点を監視することが求められている。そして、これらの一連の作業を自動化するニーズも増大してきている。
【０００３】
しかしながら近年、分析対象のデータ量が急速に増大していることに伴って、各事業拠点に存在する様々なデータを中央のサーバなどに集約することは、非現実的となってきている。そこで、各拠点が分散してデータ処理を行う、いわゆるエッジコンピューティングによるデータ分析が行われるようになってきている。
【０００４】
例えば、非特許文献１には、大規模なクラスター上におけるデータ処理について、key/valueペアの中間値を生成するmap関数と、全ての中間値のvalueを同中間値のkeyと関連づけてマージするreduce関数とに基づき、分散コンピューティングを並列的に行う技術が開示されている。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Jefferey Dean and Sanjay Ghemawat, "MapReduce: Simplified Data Processing on Large Clusters", Google, Inc., https://static.googleusercontent.com/media/research.google.com/ja//archive/mapreduce-osdi04.pdf  （２０１７年１月３０日閲覧）
【発明の概要】
【発明が解決しようとする課題】
【０００６】
データを効率よく処理し管理するためには、一般に、コンピュータが充分な情報処理能力を有していることが必要である。しかし、近年ではコンピュータの情報処理能力が向上し、安価に高性能なコンピュータを調達できるようになっていることから、コンピュータ装置の性能そのものよりも、通信量の低減（ネットワークの帯域の確保など）が重要な問題となっている。そして、この点はコスト面でのボトルネックにもなっている。そこで、データ処理を各拠点に適切に配分しつつ、データの通信量を低減することが望まれている。
【０００７】
本発明はこのような背景に鑑みてなされたものであり、その目的は、大量のデータを複数の拠点で処理する場合のネットワークにおけるデータ通信量を低減することが可能なプログラム導入支援システム、プログラム導入支援方法、及びプログラム導入支援プログラムを提供することにある。
【課題を解決するための手段】
【０００８】
上記問題を解決するための本発明の一つは、第１の情報処理装置と、前記第１の情報処理装置と通信可能に接続する少なくとも１つ以上の第２の情報処理装置とを含んで構成される情報処理システムに所定のプログラムを導入するための、プロセッサ及びメモリを備
えるプログラム導入支援システムであって、前記所定のプログラムを構成するプログラムである単位プログラムにおけるデータの入力又は出力に関する情報である入出力情報を、前記所定のプログラムを実行することにより取得する入出力情報取得部と、前記単位プログラムのそれぞれを前記第１の情報処理装置又は前記第２の情報処理装置のいずれに配置するかの基準の情報であるポリシー情報を取得するポリシー情報取得部と、前記取得した入出力情報と、前記取得したポリシー情報とに基づき、前記各単位プログラムの配置を決定する配置決定部と、を備える。
【発明の効果】
【０００９】
本発明によれば、大量のデータを複数の拠点で処理する場合のネットワークにおけるデータ通信量を低減することができる。
【００１０】
上記した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【００１１】
【図１】図１は、本実施形態に係るプログラム導入支援システム１の構成の一例を示す図である。
【図２】図２は、プログラム導入支援システム１における各情報処理装置（第１情報処理装置２０、端末３０、及び第２情報処理装置４０）が備えるハードウェアの一例を説明する図である。
【図３】図３は、管理プログラムとマイクロプログラムの関係の一例を示す図である。
【図４】図４は、テスト情報ＤＢ３３０の一例を示す図である。
【図５】図５は、単体性能情報ＤＢ３５０の一例を示す図である。
【図６】図６は、通信性能情報ＤＢ３６０の一例を示す図である。
【図７】図７は、ポリシー情報ＤＢ３４０の一例を示す図である。
【図８】図８は、プログラム導入支援処理の一例を説明するフローチャートである。
【図９】図９は、配置結果表示画面３７０の一例を示す図である。
【図１０】図１０は、テスト情報入力処理の一例を説明するフローチャートである。
【図１１】図１１は、テスト情報入力画面の一例を示す図である。
【図１２】図１２は、配置決定処理の一例を説明するフローチャートである。
【図１３】図１３は、Ｉ／Ｏ計測処理の一例を説明するフローチャートである。
【図１４】図１４は、転送量データＤＢ３８０の一例を示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施形態の例を図面を用いて説明する。
＜システム構成＞
図１は、本実施形態に係るプログラム導入支援システム１の構成の一例を示す図である。同図に示すように、プログラム導入支援システム１は、第１情報処理装置２０及び端末３０を含むクラウドシステム１０と、クラウドシステム１０と通信可能に接続された、少なくとも１台以上の第２情報処理装置４０とを含んで構成されている。
【００１３】
プログラム導入支援システム１は、例えば、世界各国や各地域に事業拠点を有する事業体に設けられる情報処理システムであり、各事業拠点内の工場で取り扱っているデータを管理又は監視するための所定のプログラム（以下、管理プログラムともいう）の導入を支援し、これにより各事業拠点が扱うデータを管理し監視する。
【００１４】
クラウドシステム１０は、事業体のデータを統括的に管理する情報処理システムであり、例えば、事業体の本部又は所定のデータセンタに設けられる。
【００１５】
クラウドシステム１０における、第１情報処理装置２０及び端末３０の間は互いに通信可能に接続されている。なお、両者の間は、無線又は有線により直接に接続されていてもよいし、ＬＡＮ（Local Area Network）、ＷＡＮ（Wide Area Network）、インターネッ
ト、イントラネット、専用線、又は光ファイバなどの通信網を介して接続されていてもよい。
【００１６】
第２情報処理装置４０は、通信ネットワーク５０を介して、クラウドシステム１０の第１情報処理装置２０と通信可能に接続されている。第２情報処理装置４０は、例えば、いわゆるエッジサーバであり、事業体の各事業拠点に設けられる。なお、不図示であるが、第２情報処理装置４０は、前記の各工場に設けられている他の情報処理装置と通信可能に接続されており、各工場で生成される各種データを記憶している。
【００１７】
なお、通信ネットワーク５０は、例えば、ＬＡＮ（Local Area Network）、ＷＡＮ（Wide Area Network）、インターネット、イントラネット、専用線、又は光ファイバなどの
通信網である。
【００１８】
ここで、図２は、プログラム導入支援システム１における各情報処理装置（第１情報処理装置２０、端末３０、及び第２情報処理装置４０）が備えるハードウェアの一例を説明する図である。同図に示すように、各情報処理装置は、ＣＰＵ（Central Processing Unit）などのプロセッサ１１と、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）などの主記憶装置１２と、ＨＤＤ（Hard Disk Drive）、ＳＳＤ（Solid State Drive）などの補助記憶装置１３と、キーボード、マウス、タッチパネルなどからなる入力装
置１４と、モニタ（ディスプレイ）などからなる出力装置１５と、他の情報処理装置と通信を行う通信装置１６とを備える。
【００１９】
＜機能＞
次に、各情報処理装置が備える機能について説明する。
＜第１情報処理装置＞
図１に示すように、第１情報処理装置２０は、プログラム実行制御部２０１、プログラムテスト実行部２０２、入出力情報取得部２０３、テスト情報取得部２０４、ポリシー情報取得部２０５、配置決定部２０６、性能情報取得部２０７、及びプログラム送信部２０８を備える。
【００２０】
プログラム実行制御部２０１は、以下に説明する第１情報処理装置２０の機能を統括的に管理する。
【００２１】
プログラムテスト実行部２０２は、管理プログラムを実行する。例えば、プログラムテスト実行部２０２は、管理プログラムを試験的に実行する機能を備えている。
【００２２】
具体的には、プログラムテスト実行部２０２は、少なくとも１種類以上の管理プログラムを記憶しているデータベースであるプログラム情報３１０、及び、各管理プログラムを実行する際に必要なデータを記憶している環境情報３１２を管理している。プログラムテスト実行部２０２は、プログラム情報３１０、及び環境情報３１２に記憶されている情報に基づき、管理プログラムを実行する。
【００２３】
なお、プログラムテスト実行部２０２は、データ情報３１４、及び関連情報３１６の各データベースを管理しており、管理プログラムが取り扱う、事業体に関するデータ（例えば、各事業拠点に関するデータ）などをこれらのデータベースに記憶している。
【００２４】
入出力情報取得部２０３は、前記所定のプログラム（管理プログラム）を構成するプロ
グラムである単位プログラム（以下、マイクロプログラムともいう）におけるデータの入力又は出力に関する情報である入出力情報を、前記所定のプログラムを実行することにより取得する。
【００２５】
なお、入出力情報は、後述する入出力情報ＤＢ３２０に格納されている。
【００２６】
ここで、管理プログラムとマイクロプログラムの関係について説明する。
図３は、管理プログラムとマイクロプログラムの関係の一例を示す図である。同図に示すように、管理プログラム７０は、外部からの入力データ７１に基づき所定の処理を行い、これにより出力データ７２を出力する。
【００２７】
管理プログラム７０は、複数のマイクロプログラム８０（Ｓ１〜Ｓ６）により構成されており、各マイクロプログラム８０は、他のマイクロプログラム８０からの入力データ（又は外部からの入力データ）を受信し（データが入力され）、受信した入力データに基づき所定の処理を行い、当該処理により他のマイクロプログラム８０に（又は外部に）出力データを送信する（データを出力する）。
【００２８】
なお、各マイクロプログラム８０は通常、互いに異なる処理を行うプログラムであるが、同じ処理を行うものであってもよい。
【００２９】
このように、各マイクロプログラム８０は、他のマイクロプログラムとデータの送受信（データの入出力）を行うため、互いに通信可能に接続されている第１情報処理装置２０又は第２情報処理装置４０のいずれにも配置することができる。しかし、第１情報処理装置２０、第２情報処理装置４０、又はこれらを接続する通信ネットワーク５０の構成などによってデータの通信量（通信速度）が異り。これにより管理プログラム７０（マイクロプログラム８０）の処理速度も異なる。
【００３０】
そこで、本実施形態のプログラム導入支援システム１は、データの通信量などに基づき管理プログラム７０における各マイクロプログラム８０の最適な配置を決定し、決定した配置に基づき、各マイクロプログラム８０を第１情報処理装置２０又は第２情報処理装置４０に導入する。
【００３１】
以下、第１情報処理装置２０の説明を続ける。
図１に示すテスト情報取得部２０４は、前記所定のプログラムの実行に関する条件に関する情報であるテスト情報を取得する。前記入出力情報取得部は、前記取得したテスト情報に基づき、前記所定のプログラムを実行する。
【００３２】
例えば、前記テスト情報取得部２０４は、前記テスト情報として、前記所定のプログラムに対して入力されるデータに関する条件、前記所定のプログラムから出力されるデータに関する条件、又は、前記所定のプログラムの実行時間に関する条件のうち少なくともいずれかの情報を取得する。
【００３３】
なお、テスト情報は、後述するテスト情報ＤＢ３３０に格納されている。
【００３４】
ポリシー情報取得部２０５は、前記単位プログラムのそれぞれを前記第１の情報処理装置又は前記第２の情報処理装置のいずれに配置するかの基準（以下、ポリシーという）の情報であるポリシー情報を取得する。
【００３５】
具体的には、例えば、前記ポリシー情報取得部２０５は、前記ポリシー情報として、前記第１の情報処理装置及び前記第２の情報処理装置の間、又は各前記第２の情報処理装置
の間で入力又は出力されたデータの量に応じて、前記単位プログラムのそれぞれを前記第１の情報処理装置又は前記第２の情報処理装置のいずれに配置するかを決定する基準を示す情報を取得する。
【００３６】
また、例えば、前記ポリシー情報取得部２０５は、前記ポリシー情報として、前記単位プログラムに入力又は出力されるデータの種類に応じて当該単位プログラムを前記第２の情報処理装置に配置するか否かを決定する基準を示す情報を取得する。
【００３７】
なお、ポリシー情報は、後述するポリシー情報ＤＢ３４０に格納されている。
【００３８】
配置決定部２０６は、前記取得した入出力情報と、前記取得したポリシー情報とに基づき、前記各単位プログラムの配置を決定する。
【００３９】
性能情報取得部２０７は、前記第１の情報処理装置又は前記第２の情報処理装置の性能に関する情報である性能情報を取得する。前記配置決定部２０６は、前記取得した性能情報と、前記入出力情報と、前記ポリシー情報とに基づき、前記各単位プログラムの配置を決定する。
【００４０】
例えば、前記性能情報取得部２０７は、前記性能情報として、前記第１の情報処理装置又は前記第２の情報処理装置が備えるハードウェアの性能に関する情報を取得する。
【００４１】
また、例えば、前記性能情報取得部２０７は、前記性能情報として、前記第１の情報処理装置又は前記第２の情報処理装置の通信性能に関する情報を取得する。
【００４２】
本実施形態では、性能情報には、情報処理装置のハードウェア性能に関する情報である単体性能情報と、情報処理装置の通信性能に関する情報である通信性能情報とがあるものとする。そして、単体性能情報は、後述する単体性能情報ＤＢ３５０に格納され、通信性能情報は、後述する通信性能情報ＤＢ３６０に格納されているものとする。また、本実施形態では、単体性能情報ＤＢ３５０、及び通信性能情報ＤＢ３６０は第１情報処理装置２０が記憶しているものとするが、これらのデータは各情報処理装置（例えば、第２情報処理装置４０）が記憶し、必要に応じて、第１情報処理装置２０が各情報処理装置からこれらのデータを取得するようにしてもよい。
【００４３】
プログラム送信部２０８は、前記決定した各単位プログラムの配置に基づき、前記単位プログラム（マイクロプログラム）のそれぞれを、前記第１の情報処理装置又は前記第２の情報処理装置のいずれかに送信（配置）する。
【００４４】
次に、第１情報処理装置２０が管理している各データベースについて説明する。
＜テスト情報ＤＢ＞
【００４５】
図４は、テスト情報ＤＢ３３０の一例を示す図である。同図に示すように、テスト情報ＤＢ３３０は、各テストを識別する情報（以下、テストＩＤという）が格納されるＩＤ３３１、ＩＤ３３１のテストの名称が格納される名称３３２、ＩＤ３３１のテストに設定されている条件（以下、テスト条件という）が格納される制限３３３の各項目を有する、少なくとも１つ以上のレコードで構成される。
【００４６】
なお、制限３３３の項目は少なくとも１つ以上設けられ、それぞれの制限３３３は、テスト条件の内容（例えば、管理プログラムに入力するデータの数量に関する条件、管理プログラムから出力されるデータの数量に関する条件、管理プログラムを実行する時間に関する条件）が格納される項目３３４、及び、項目３３４の条件に係る閾値等の情報が格納
される値３３５の各小項目を有する。
【００４７】
例えば、同図の例では、テストＩＤが「１」のテストでは、管理プログラムに入力されたデータの量が１０００００件以上になったこと、管理プログラムから出力されたデータの量が１００ＭＢ（Mega byte）以上になったこと、又は管理プログラムの実行時間が２
０秒以上となったことのうちいずれかの条件が満たされた時点で、そのテスト対象となっている管理プログラムの実行が終了する。
【００４８】
なお、同図の例では、管理プログラムに関するテスト情報のみが示されているが、管理プログラムを構成する個々の単位プログラムに関するテスト情報が入力されてもよい。
【００４９】
また、前記で説明したテスト条件以外のテスト条件としては、例えば、所定の情報処理装置のみで入力又は出力されたデータ量が所定の閾値を超えた場合にテスト実行を終了するという条件、又は、管理プログラムの各処理のうち所定の処理のみを対象とした条件などがある。
【００５０】
なお、テスト情報ＤＢ３３０へのテスト情報の入力は、予め、プログラム導入支援システム１の管理者などが行ってもよいし、所定のプログラムに従って自動的にテスト情報の入力が行われてもよい。
【００５１】
＜単体性能情報ＤＢ＞
次に、単体性能情報ＤＢ３５０について説明する。
【００５２】
図５は、単体性能情報ＤＢ３５０の一例を示す図である。同図に示すように、単体性能情報ＤＢ３５０は、情報処理装置が備えるハードウェアを識別する情報（以下、ハードウェアＩＤという）が格納されるＩＤ３５１、ＩＤ３５１のハードウェアの種類を識別する情報（以下、ハードウェアＩＤという）が格納される種別３５２、ＩＤ３５１のハードウェアに関する情報（以下、ハードウェア属性という）を示す情報が格納される属性３５３の各項目を有する、少なくとも１つ以上のレコードで構成される。
【００５３】
なお、属性３５３の項目は少なくとも１つ以上設けられ、それぞれの属性３５３は、属性３５３のハードウェア属性を特定する情報が格納される名称３５４、及び、属性３５３の内容を特定する情報が格納される値３５５の各小項目を有する。
【００５４】
例えば、同図の例では、ハードウェアＩＤが「１」のハードウェアである「ＣＰＵ」は次の属性を備える：属性である「世代」の内容が「ａｂｃｄ」であり、属性である「コア数」の内容が「６」であり、属性である「Clock (GHz)」の内容が「２．４」である。
【００５５】
なお、単体性能情報ＤＢ３５０への性能情報の入力は、例えば、プログラム導入支援システム１の管理者等が予め行う。
【００５６】
＜通信性能情報ＤＢ＞
次に、通信性能情報ＤＢ３６０について説明する。
図６は、通信性能情報ＤＢ３６０の一例を示す図である。同図に示すように、通信性能情報ＤＢ３６０は、プログラム導入支援システム１に設けられている通信機器を識別する情報（以下、通信機器ＩＤという）が格納されるＩＤ３６１、ＩＤ３６１の通信機器の名称が格納される名称３６２、ＩＤ３６１の通信機器の種別を示す情報が格納される種別３６３、ＩＤ３６１の通信機器の帯域幅を示す情報が格納される帯域幅３６４、及び、ＩＤ３６１の通信機器が行う通信の実効速度を示す情報が格納される実効速度３６５の各項目を有する、少なくとも１つ以上のレコードで構成される。
【００５７】
例えば、同図の例では、通信機器ＩＤが「１」の通信機器である「ＶＰＮ−１」は、その種別が「Broadband」であり、その帯域幅が「100Mbps」であり、その実効速度が「10Mbpx」である。
【００５８】
なお、通信性能情報ＤＢ３６０には、通信性能に関する他の項目として、例えば、情報処理装置に搭載されているＯＳ（Operating system）の情報、情報処理装置のリソースの情報、情報処理装置が処理するデータの種類の情報（例えば、それが機密データ（当該情報処理装置の外部に送信することが禁じられているデータ）であるか否かなど））を格納する項目が設けられていてもよい。
【００５９】
また、同図には明示していないが、単体性能情報ＤＢ３５０及び通信性能情報ＤＢ３６０は、クラウドシステム１０及び各拠点の情報処理装置の、単体性能情報及び通信性能情報をそれぞれ記憶している。
【００６０】
なお、通信性能情報ＤＢ３６０への性能情報の入力は、例えば、プログラム導入支援システム１の管理者等が予め行う。
【００６１】
＜ポリシー情報ＤＢ＞
次に、ポリシー情報ＤＢ３４０について説明する。
【００６２】
図７は、ポリシー情報ＤＢ３４０の一例を示す図である。本実施形態において、ポリシーは、少なくとも１つ以上の判定条件によって構成されている。
【００６３】
同図に示すように、ポリシー情報ＤＢ３４０は、各判定条件を識別する情報が格納される条件番号３４１、ポリシーを識別する情報（以下、ポリシーＩＤという）が格納されるポリシーＩＤ３４２、条件番号３４１の判定条件の内容（属性）を示す情報が格納される属性名３４３、及び、条件番号３４１の判定条件における基準値などを示す情報が格納される値３４４の各項目を有する、少なくとも１つ以上のレコードで構成される。
【００６４】
なお、ポリシー情報ＤＢ３４０へのポリシー情報の入力は、予め、プログラム導入支援システム１の管理者などが行ってもよいし、所定のプログラムに従って自動的にポリシー情報の入力が行われてもよい。
【００６５】
同図の例では、例えば、ポリシーＩＤが「１」のポリシーには２つの判定条件が存在する。すなわち、管理プログラムの実行によって入出力されるデータ（転送データ）の累積量が「１６３８４ＭＢ」（Mega byte）を超えず、かつ、１分間当たりの当該転送データ
が「５１２ＭＢ」を超えないように、第１情報処理装置２０及び第２情報処理装置４０に各単位プログラムを配置することをポリシーとしている。
【００６６】
また、例えば、ポリシーＩＤが「４」のポリシーは、第１情報処理装置２０及び／又は第２情報処理装置４０のうち「xxx」を超える通信速度を超える通信を行うことが可能な
通信装置を備える情報処理装置のみに単位プログラムを配置するというポリシーである。
【００６７】
また、例えば、ポリシーＩＤ「６」のポリシーは、値３４４に示される所定の通信性能（例えば、帯域幅又は実効速度）を満たしている第１情報処理装置２０又は第２情報処理装置４０に単位プログラムを配置するというポリシーである。
【００６８】
また、例えば、単位プログラムに入力又は出力されるデータの種類に応じて、当該単位プログラムを第２情報処理装置４０に配置するか否かを決定するポリシーがあってもよい
。例えば、ポリシーＩＤが「５」のポリシーは、機密データを処理している第２情報処理装置４０には、そのデータを外部に送信しない単位プログラムのみを導入するように各単位プログラムを配置するポリシーである。例えば、ポリシーＩＤが「５」のポリシーにおける値３４４には、機密データを処理する第２情報処理装置４０を特定する情報（識別子）が格納される。
【００６９】
このように、ポリシー情報ＤＢ３４０には、データの通信量、及び／又は通信装置のハードウェア性能に係る判定条件（ポリシー）が格納される。
【００７０】
＜端末＞
次に、図１に示すように、端末３０は、テスト情報入力部３０１、ポリシー情報入力部３０２、及び配置結果出力部３０３を備える。
【００７１】
テスト情報入力部３０１は、前記テスト情報の入力をユーザから受け付ける。ポリシー情報入力部３０２は、前記ポリシー情報の入力をユーザから受け付ける。配置結果出力部３０３は、前記決定した各単位プログラムの配置に関する情報を出力する。
【００７２】
＜第２情報処理装置＞
次に、図１に示すように、第２情報処理装置４０は、プログラム受信実行部４０１を備える。
プログラム受信実行部４０１は、第１情報処理装置２０から送信されてきた単位プログラム（マイクロプログラム）を受信し、または実行する。
【００７３】
なお、受信した単位プログラムはプログラム情報４１０に記憶され、また、受信した単位プログラムを実行する際に必要なデータが環境情報４１２に記憶される。
【００７４】
なお、第２情報処理装置４０は、データ情報４１４、及び関連情報４１６の各データベースを記憶している。これらのデータベースには、当該第２情報処理装置４０が設置されている事業拠点に関するデータ（例えば、当該事業拠点内の工場で生成されるデータ）が記憶されている。
【００７５】
以上に説明した各情報処理装置の機能は、各情報処理装置のハードウェアによって、もしくは、各情報処理装置のプロセッサが、プロセッサやメモリに記憶されている各プログラムを読み出して実行することにより実現される。
【００７６】
また、これらのプログラムは、例えば、二次記憶デバイスや不揮発性半導体メモリ、ハードディスクドライブ、ＳＳＤなどの記憶デバイス、または、ＩＣカード、ＳＤカード、ＤＶＤなどの、計算機で読み取り可能な非一時的データ記憶媒体に格納される。
【００７７】
＜処理説明＞
次に、プログラム導入支援システム１において行われる処理について説明する。
【００７８】
＜プログラム導入支援処理＞
図８は、プログラム導入支援システム１において典型的に行われる、管理プログラムを各情報処理装置に導入するための処理（以下、プログラム導入支援処理という）の一例を説明するフローチャートである。なお、この処理は、例えば、端末３０にユーザから所定の入力が行われた場合に開始される。
【００７９】
まず、端末３０は、ユーザから、ポリシーの指定を受け付ける（ｓ１）。例えば、端末３０は、ポリシー情報ＤＢ３４０に記録されている各ポリシーの内容を表示した所定の入
力画面（不図示）を表示し、この画面に基づき、ユーザから、指定するポリシー（例えば、ポリシーＩＤ）の入力を受け付ける。
【００８０】
また、端末３０は、ユーザから、テスト情報の入力を受け付ける処理（以下、テスト情報入力処理という）を実行する（ｓ２）。この処理の詳細は後述する。
【００８１】
次に、第１情報処理装置２０は、ユーザに指定された管理プログラムを試験的に実行し、その結果に基づき、管理プログラムを構成する単位プログラムの配置を決定する処理（以下、配置決定処理という）を実行する（ｓ３）。この処理の詳細は後述する。
【００８２】
端末３０は、配置決定処理の結果を画面に表示する（ｓ４）。
【００８３】
＜配置結果の出力画面＞
ここで、ｓ４の処理において表示される画面について説明する。
【００８４】
図９は、端末３０が表示する、配置決定処理の結果を示す画面（配置結果表示画面３７０という）の一例を示す図である。同図に示すように、配置結果表示画面３７０は、各マイクロプログラムの配置場所を表示する配置場所表示欄３７１、各マイクロプログラムにおけるデータの入出力量が格納される内部入出力データ表示欄３７２、管理プログラムへの入力データの量（すなわち、管理プログラムの外部から入力データが入力されるマイクロプログラムへの入力データの量）が格納される外部入力データ表示欄３７３、各マイクロプログラム間における入力データの量が格納される内部入力データ表示欄３７４、管理プログラムから出力される出力データの量（すなわち、管理プログラムの外部に出力データを出力するマイクロプログラムにおけるその出力データの量）が格納される外部出力データ表示欄３７５、及び、各マイクロプログラムに入力されたデータ及び各マイクロプログラムから出力されたデータの合計量（すなわち、管理プログラム及びその内部で入出力されたデータの合計量。以下、全通信量という）が格納される全通信量表示欄３７６の各表示欄を有する。
【００８５】
例えば、同図は、管理プログラムにおけるマイクロプログラムＳ１を第１情報処理装置２０（C: center）に配置し、マイクロプログラムＳ２を第１情報処理装置２０（C: center）に配置し、マイクロプログラムＳ３を第１情報処理装置２０（C: center）に配置し
、マイクロプログラムＳ４を第２情報処理装置４０（R: remote）に配置した場合、その
管理プログラムの全通信量は「１０１５」ＭＢであったことを示している。
【００８６】
なお、配置結果表示画面３７０は、端末３０ではなく、第１情報処理装置２０などの他の装置が表示してもよい。
【００８７】
次に、図８のｓ５に示すように、第１情報処理装置２０は、配置決定処理の結果に基づき、各単位プログラムを各情報処理装置に転送（送信）する。具体的には、例えば、第１情報処理装置２０は、ｓ４で決定した配置に基づき、各単位プログラムを第１情報処理装置２０に記憶させ、又は第２情報処理装置４０に送信する。以上で、プログラム導入支援処理は終了する（ｓ６）。
【００８８】
以上のようにして配置された管理プログラムが随時実行されることにより、事業者は、第２情報処理装置４０が設置されている各事業拠点のデータを管理することができる。
【００８９】
次に、プログラム導入支援処理における各処理の詳細を説明する。
＜テスト情報入力処理＞
まず、テスト情報入力処理について説明する。テスト情報入力処理は、例えば、ユーザ
から端末３０に所定の入力があったことを契機に開始される。
【００９０】
図１０は、テスト情報入力処理の一例を説明するフローチャートである。同図に示すように、まず端末３０は、プログラム情報３１０及び環境情報３１２から、管理プログラムに関する情報を全て取得する（ｓ２１）。
【００９１】
次に、端末３０は、ユーザから、管理プログラムの指定の入力を受け付けると共に、指定された管理プログラムの試験実行のためのテスト情報（テスト条件）の入力を受け付ける（ｓ２２）。なお、この際、端末３０は、過去に入力されたテスト情報の内容を表示する。
【００９２】
具体的には、例えば、端末３０は、管理プログラムの指定及びテスト情報の入力を受け付ける画面（以下、テスト情報入力画面という）を表示すると共に、過去に当該テスト情報入力画面により入力されたテスト情報の内容を表示する。
【００９３】
そして、端末３０は、ｓ２２で入力された情報を、テスト情報ＤＢ３３０に格納する（テスト情報ＤＢ３３０を更新する）（ｓ２３）。
【００９４】
＜テスト情報入力画面＞
ここで、テスト情報入力画面について説明する。
【００９５】
図１１は、テスト情報入力画面の一例を示す図である。同図に示すように、テスト情報入力画面１０００は、管理プログラムを指定するプログラム選択１００１、マイクロプログラムを選択するマイクロプログラム選択１００３、テスト条件を設定する条件設定１００５、及び管理プログラムを試験的に実行する（テストする）テスト実行１００７の各入力欄を有する。
【００９６】
また、テスト情報入力画面１０００は、実行するテストのテストＩＤの入力を受け付けるテストＩＤ欄１０１３を備えており、このテストＩＤ欄１０１３には、前回指定したテストＩＤが表示される。
【００９７】
プログラム選択１００１が選択されると、プログラム一覧１００９に、プログラム情報３１０に記憶されている各管理プログラムに関する情報（「機器Ａデータ分析」、「ラインＢ監視結果分析」、など）が表示される。そして、プログラム一覧１００９は、表示された管理プログラムに対する選択を受け付ける。管理プログラムの選択が受け付けられると、プログラム構成表示欄１０１１に、選択された管理プログラムにおける各マイクロプログラムの関係性を示す図が表示される。
【００９８】
マイクロプログラム選択１００３が選択されると、プログラム一覧１００９に、前記で選択された管理プログラムを構成するマイクロプログラムに関する情報（「データ読み込み」、「データ前処理」、など）が表示される。プログラム一覧１００９は、このマイクロプログラムに対する選択をユーザから受け付ける。マイクロプログラムに対する選択が受け付けられると、プログラム構成表示欄１０１１に、選択されたマイクロプログラムに関する情報が表示される。
【００９９】
条件設定１００５が選択されると、テスト情報ＤＢ３３０の内容を設定するための画面（不図示）が表示され、ユーザはこの画面により、各テストＩＤのテストのテスト条件を編集することができる。
【０１００】
テスト実行１００７が選択されると、テスト情報ＤＢ３３０の編集内容の更新を確定す
ると共に、配置決定処理が実行される。
【０１０１】
＜配置決定処理＞
次に、配置決定処理について説明する。
【０１０２】
図１２は、配置決定処理の一例を説明するフローチャートである。同図に示すように、第１情報処理装置２０は、ｓ１で設定したポリシー情報を取得する。また、第１情報処理装置２０は、テスト情報入力処理で指定した管理プログラム（以下、選択プログラムという）の内容をプログラム情報３１０から読み込むと共に、選択プログラムの実行のための各パラメータの初期化を行う（ｓ３１）。
【０１０３】
次に、第１情報処理装置２０は、選択プログラムを構成する各単位プログラムを、第１情報処理装置２０又は第２情報処理装置４０のいずれに配置するかの組み合わせ（以下、断りの無い限り、「組み合わせ」とは、第１情報処理装置２０及び第２情報処理装置４０の配置の組み合わせを指すものとする。）を一つ選択する（ｓ３２）。
【０１０４】
第１情報処理装置２０は、ｓ３２で選択した組み合わせ（以下、選択組み合わせという）に従って各単位プログラムを第１情報処理装置２０又は第２情報処理装置４０に配置した選択プログラムをテスト実行する。そして、第１情報処理装置２０は、この選択プログラムの実行中に、各単位プログラムにおけるデータの入出力量を計測する処理（以下、Ｉ／Ｏ計測処理という）を実行する（ｓ３３）。この処理の詳細は後述する。なお、選択プログラムは、テスト情報入力処理で設定された条件が満たされている限り、その実行が継続される。
【０１０５】
なお、この選択プログラムをテスト実行する方法としては、例えば、予め、選択組み合わせに応じて各単位プログラムを第１情報処理装置２０又は第２情報処理装置４０に実際に転送してもよいし、第１情報処理装置２０などに予め設けられたシミュレータなどに基づき、選択組み合わせに応じた仮想的な管理プログラムを構築し（各単位プログラムを第１情報処理装置２０又は第２情報処理装置４０に配置した仮想的な環境を構築する）、これを実行してもよい。
【０１０６】
第１情報処理装置２０は、ｓ３３で行ったＩ／Ｏ計測処理の結果を集計する（ｓ３４）。具体的には、例えば、第１情報処理装置２０は、選択プログラムを実行中に各マイクロプログラム間で転送されたデータの合計量（例えば、全通信量）を算出する。
【０１０７】
第１情報処理装置２０は、これまでにｓ３２で選択した選択組み合わせ以外に、他の組み合わせがあるか否かを判断する（ｓ３５）。
【０１０８】
他の組み合わせがない場合は（ｓ３５：Ｎ）、後述のｓ３６の処理が行われ、他の組み合わせがある場合は（ｓ３５：Ｙ）、第１情報処理装置２０は、当該他の組み合わせを新たな選択組み合わせとし、ｓ３３の処理を繰り返す。
【０１０９】
ｓ３６において、第１情報処理装置２０は、ｓ３４で集計した結果に基づき、ポリシーを満たしている結果（組み合わせ）があるか否かを判定する。すなわち、第１情報処理装置２０は、ｓ１で指定したポリシーの内容をポリシー情報ＤＢ３４０を取得することにより特定し、そのポリシーの内容が、ｓ３４で集計した結果をそれぞれ満たしているか否かを判定する。
【０１１０】
具体的には、例えば、前記指定したポリシーが所定の閾値（例えば、５０ＭＢ）を含んでいる場合、第１情報処理装置２０は、ｓ３４で算出した各組み合わせにおいて、その組
み合わせにおける入出力データの量のそれぞれが前記閾値を超えていないかを判定し、その入出力データの全てが前記閾値を超えていない組み合わせを全て抽出する。
【０１１１】
また、例えば、図７に示したポリシーＩＤ「１」のポリシーが指定されている場合、第１情報処理装置２０は、ｓ３４で算出した全通信量が「１６３８４ＭＢ」を超えておらず、かつ、データの時間当たりの転送量が「５１２ＭＢ／分」を超えていない組み合わせを全て抽出する。
【０１１２】
また、例えば、ポリシーＩＤ「４」のポリシーが指定されている場合、第１情報処理装置２０は、単体性能情報ＤＢ３５０から各通信機器のハードウェアの属性の情報（属性３５３の内容）を取得し、取得した属性が、ポリシー情報ＤＢ３４０の値３４４が示す性能（属性）を満たしている組み合わせを全て抽出する。
【０１１３】
また、例えば、ポリシーＩＤ「５」のポリシーが指定されている場合、第１情報処理装置２０は、機密データを取り扱っている第２情報処理装置４０を特定する情報を所定のデータベースなどから取得し、その第２情報処理装置４０を含んでいない組み合わせを全て抽出する。
【０１１４】
また、例えば、ポリシーＩＤ「６」のポリシーが指定されている場合、第１情報処理装置２０は、通信性能情報ＤＢ３６０から各通信機器の通信性能の情報（帯域幅３６４又は実行速度３６５の内容）を取得し、取得した通信性能がポリシー情報ＤＢ３４０の値３４４が示す性能を満たしている組み合わせを全て抽出する。
【０１１５】
以上の処理により、第１情報処理装置２０が、ポリシーを満たしている結果があると判定した場合（ｓ３６：Ｙ）、後述するｓ３７の処理が実行され、第１情報処理装置２０がポリシーを満たしている結果がないと判定した場合（ｓ３６：Ｎ）、第１情報処理装置２０は、エラーを示す情報を端末３０に送信し、端末３０がその情報を出力してプログラム導入支援処理は終了する（ｓ３９）。
【０１１６】
ｓ３７において、第１情報処理装置２０は、ポリシーを満たしている結果（組み合わせ）のうち、最もポリシーに合致している結果を特定する。すなわち、第１情報処理装置２０は、ｓ３４で抽出した組み合わせのうち、全通信量が最小である組み合わせを特定する。
【０１１７】
なお、第１情報処理装置２０又は第２情報処理装置４０のいずれに配置しても全通信量に大きな違いがない組み合わせが複数ある場合は、第１情報処理装置２０は、データ処理能力が高い情報処理装置（一般には第１情報処理装置２０）に各単位プログラムを配置する組み合わせを優先的に選択するようにしてもよい。
【０１１８】
以上で配置決定処理は終了する（ｓ３８）。
【０１１９】
＜Ｉ／Ｏ計測処理＞
次に、Ｉ／Ｏ計測処理について説明する。
【０１２０】
図１３は、Ｉ／Ｏ計測処理の一例を説明するフローチャートである。同図に示すように、まず第１情報処理装置２０は、各マイクロプログラム８０が実行する処理のうち、他のマイクロプログラム８０からのデータの入力に係る処理、及び他のマイクロプログラム８０へのデータの出力に係る処理（以下、本明細書ではポート８５ともいう）のそれぞれに、識別番号（以下、ポート番号ともいう）を付与する（ｓ３３１）。なお、本実施形態では、同図に示しているように、他のマイクロプログラム８０へのデータの出力に係る処理
（ポート）と、この処理に対応する、データの入力に係る処理（ポート）とには同一の番号を付与する。
【０１２１】
そして、第１情報処理装置２０は、選択プログラムの実行中に、各マイクロプログラムが行うデータの入出力処理を監視する（ｓ３３２）。具体的には、第１情報処理装置２０は、各ポート８５におけるデータの入力量及び出力量を計測する。
【０１２２】
第１情報処理装置２０は、選択プログラムの実行終了後、ｓ３３２で計測した、データの入力量及び出力量を、転送量データＤＢ３８０に記録する（ｓ３３３）。
【０１２３】
ここで、転送量データＤＢ３８０について説明する。
＜転送量ＤＢ＞
【０１２４】
図１４は、転送量データＤＢ３８０の一例を示す図である。同図に示すように、転送量データＤＢ３８０は、テストＩＤが格納されるＩＤ３８１、管理プログラムの外部からポート８５に入力された（受信された）全データの量が格納される入力量３８２、ポート８５間で送受信された全データの量が格納される入出力量３８３、及び、ポート８５から管理プログラムの外部に出力された（送信された）全データの量が格納される出力量３８４、及び、総通信量が格納される総通信量３８５の各項目を有する、少なくとも１つ以上のレコードから構成される。
【０１２５】
なお、同図には明示していないが、転送量データＤＢ３８０は、テスト実行を行った管理プログラムごとに作成される。
【０１２６】
以上のように、本実施形態のプログラム導入支援システム１によれば、単位プログラムにおけるデータの入力又は出力に関する入出力情報を、管理プログラムを実行することにより取得し、単位プログラムのそれぞれを第１情報処理装置２０又は第２情報処理装置４０のいずれに配置するかの基準の情報であるポリシー情報を取得し、入出力情報とポリシー情報とに基づき、各単位プログラムの配置を決定するので、管理プログラムを構成する単位プログラムを、データの入出力の内容に応じて適切に第１情報処理装置２０又は第２情報処理装置４０に配置することができる。
このように、本実施形態のプログラム導入支援システム１によれば、各単位プログラムを適切に配置することにより、第１情報処理装置２０及び第２情報処理装置４０の間のネットワークにおけるデータ通信量を低減することができる。例えば、エッジコンピューティングを行うような広域分散分析プラットフォームにおいて、管理プログラムの実行に係るデータ通信量を最適化することが可能となる。
【０１２７】
また、本実施形態のプログラム導入支援システム１は、ポリシー情報として、第１情報処理装置２０及び第２情報処理装置４０の間、又は各第２情報処理装置４０の間で入出力されたデータの量に応じて、単位プログラムのそれぞれを第１情報処理装置２０又は第２情報処理装置４０のいずれに配置するかを決定する基準を示す情報を取得するので、管理プログラムの実行に際して入出力されるデータの量を確実に最適化することができる。
【０１２８】
また、本実施形態のプログラム導入支援システム１は、ポリシー情報として、単位プログラムに入出力されるデータの種類に応じて当該単位プログラムを第２情報処理装置４０に配置するか否かを決定する基準を示す情報を取得するので、第２情報処理装置４０が扱っているデータの種類に即した、管理プログラムの適切な導入が可能となる。例えば、第２情報処理装置４０が機密情報を処理している場合には、その第２情報処理装置４０には単位プログラムを配置しないようにして、情報の機密性を確保することができる。
【０１２９】
また、本実施形態のプログラム導入支援システム１は、管理プログラムの実行に関する条件についての情報であるテスト情報を取得し、管理プログラムを実行するので、管理プログラムが様々な環境下で実行される場合であっても、管理プログラムを効率よく実行させ、ネットワークにおけるデータ通信量を低減することができる。
【０１３０】
また、本実施形態のプログラム導入支援システム１では、テスト情報は、管理プログラムに対して入力されたデータの量に関する条件、管理プログラムから出力されたデータの量に関する条件、又は、管理プログラムの実行時間の少なくともいずれかに関する情報を含むので、管理プログラムが属するネットワークにおいて様々なデータが送受信されている場合であっても、管理プログラムを効率よく実行させ、ネットワークにおけるデータ通信量を低減することができる。
【０１３１】
また、本実施形態のプログラム導入支援システム１は、第１情報処理装置２０又は第２情報処理装置４０の性能に関する情報である性能情報を取得し、各単位プログラムの配置を決定するので、管理プログラムが実行されるネットワークにおいて様々な性能を有する情報処理装置が設けられている場合であっても、管理プログラムを効率よく実行させ、ネットワークにおけるデータ通信量を低減することができる。
【０１３２】
例えば、性能情報が、第１情報処理装置２０又は第２情報処理装置４０のハードウェアの性能に関する情報であることで、管理プログラムが実行されるネットワークにおいて各情報処理装置が様々な装置構成を有する場合であっても、管理プログラムを効率よく実行させ、ネットワークにおけるデータ通信量を低減することができる。
【０１３３】
また、例えば、性能情報が、第１情報処理装置２０又は第２情報処理装置４０の通信性能に関する情報であることで、管理プログラムが実行されるネットワークにおいて各情報処理装置が様々な通信性能を有する場合であっても、管理プログラムを効率よく実行させ、ネットワークにおけるデータ通信量を低減することができる。
【０１３４】
また、本実施形態のプログラム導入支援システム１は、各単位プログラムの配置に関する情報を出力するので、ユーザは、管理プログラムが各情報処理装置にどのように配置されるかを容易に確認することができる。
【０１３５】
また、本実施形態のプログラム導入支援システム１は、テスト情報の入力をユーザから受け付けるので、様々なテスト条件に基づき、最適な単位プログラムの配置を決定することができる。
【０１３６】
また、本実施形態のプログラム導入支援システム１は、決定した各単位プログラムの配置に基づき、単位プログラムのそれぞれを、第１情報処理装置２０又は第２情報処理装置４０のいずれかに送信するので、各単位プログラムにより構成されている管理プログラムを適切に実行することができる。
【０１３７】
以上の実施形態の説明は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明はその趣旨を逸脱することなく、変更、改良され得ると共に本発明にはその等価物が含まれる。
【０１３８】
例えば、本実施形態では、配置決定処理を含むプログラム導入支援処理は主に第１情報処理装置２０が行うものとしたが、それ以外の情報処理装置が行ってもよい。
【０１３９】
また、例えば、本実施形態では主に、各種情報を記憶する方法としてデータベースを挙げたが、情報は、データベース以外の任意の形式で記憶されてよい。
【符号の説明】
【０１４０】
１  プログラム導入支援システム、２０  第１情報処理装置、２０３  入出力情報取得部、２０５  ポリシー情報取得部、２０６  配置決定部、４０  第２情報処理装置、７０  管理プログラム、８０  マイクロプログラム
【図１】
2018147025.tif 000003
【図２】
2018147025.tif 000004
【図３】
2018147025.tif 000005
【図４】
2018147025.tif 000006
【図５】
2018147025.tif 000007
【図６】
2018147025.tif 000008
【図７】
2018147025.tif 000009
【図８】
2018147025.tif 000010
【図９】
2018147025.tif 000011
【図１０】
2018147025.tif 000012
【図１１】
2018147025.tif 000013
【図１２】
2018147025.tif 000014
【図１３】
2018147025.tif 000015
【図１４】
2018147025.tif 000016