(57)【特許請求の範囲】
【請求項１】
システムが稼働する環境であるシステム環境に配備されるデータまたはソフトウェアのいずれかの属性を示す配備データ属性情報を記憶する配備データ属性情報記憶部と、
アプリケーションに実装されている処理で使用されるデータを示す処理属性情報を記憶する処理属性情報記憶部と、
システム環境を識別する識別情報と当該システム環境に配備可能な配備対象物の属性を示す情報とを含む配備先情報を記憶する配備先情報記憶部と、
前記配備先情報記憶部に記憶されている配備先情報のうち入力された配備対象物を配備可能なシステム環境の識別情報を含む配備先情報を選定する選定部とを備え、
前記選定部は、
配備対象物として入力されたアプリケーションに実装されている処理で使用されるデータである配備対象データを示す処理属性情報を前記処理属性情報記憶部から取得し、
取得された処理属性情報が示す前記配備対象データの属性を示す配備データ属性情報を前記配備データ属性情報記憶部から取得し、
取得された配備データ属性情報を用いて前記配備対象データを配備可能なシステム環境の識別情報を含む配備先情報を選定する
ことを特徴とする配備装置。
【請求項２】
選定部は、
配備対象物として入力されたアプリケーションに同梱されているソフトウェアの属性を示す配備データ属性情報を配備データ属性情報記憶部から取得し、
取得された配備データ属性情報を用いて前記ソフトウェアを配備可能なシステム環境の識別情報を含む配備先情報を選定する
請求項１記載の配備装置。
【請求項３】
選定部により選定された配備先情報に基づいて、システム環境に前記選定部に入力されたアプリケーションを配備する配備部を備える
請求項１または請求項２記載の配備装置。
【請求項４】
配備部は、通信ネットワークを介してシステム環境と通信可能に接続されている
請求項３記載の配備装置。
【請求項５】
配備先情報は、配備対象物の属性を示す情報として前記配備対象物の利用可能地域を示す情報を含む
請求項１から請求項４のうちのいずれか１項に記載の配備装置。
【請求項６】
配備先情報は、配備対象物の属性を示す情報として前記配備対象物が配備されるシステム環境に求められる機密性の度合いを示す情報を含む
請求項１から請求項５のうちのいずれか１項に記載の配備装置。
【請求項７】
システムが稼働する環境であるシステム環境に配備されるデータまたはソフトウェアのいずれかの属性を示す配備データ属性情報を記憶する配備データ属性情報記憶部と、アプリケーションに実装されている処理で使用されるデータを示す処理属性情報を記憶する処理属性情報記憶部と、システム環境を識別する識別情報と当該システム環境に配備可能な配備対象物の属性を示す情報とを含む配備先情報を記憶する配備先情報記憶部とを備える配備装置において実行される配備方法であって、
前記配備装置は、
前記配備先情報記憶部に記憶されている配備先情報のうち入力された配備対象物を配備可能なシステム環境の識別情報を含む配備先情報を選定し、
配備対象物として入力されたアプリケーションに実装されている処理で使用されるデータである配備対象データを示す処理属性情報を前記処理属性情報記憶部から取得し、
取得された処理属性情報が示す前記配備対象データの属性を示す配備データ属性情報を前記配備データ属性情報記憶部から取得し、
取得された配備データ属性情報を用いて前記配備対象データを配備可能なシステム環境の識別情報を含む配備先情報を選定する
ことを特徴とする配備方法。
【請求項８】
配備装置は、
配備対象物として入力されたアプリケーションに同梱されているソフトウェアの属性を示す配備データ属性情報を配備データ属性情報記憶部から取得し、
取得された配備データ属性情報を用いて前記ソフトウェアを配備可能なシステム環境の識別情報を含む配備先情報を選定する
請求項７記載の配備方法。
【請求項９】
システムが稼働する環境であるシステム環境に配備されるデータまたはソフトウェアのいずれかの属性を示す配備データ属性情報を記憶する配備データ属性情報記憶部と、アプリケーションに実装されている処理で使用されるデータを示す処理属性情報を記憶する処理属性情報記憶部と、システム環境を識別する識別情報と当該システム環境に配備可能な配備対象物の属性を示す情報とを含む配備先情報を記憶する配備先情報記憶部とを備えるコンピュータにおいて実行される配備プログラムであって、
前記コンピュータに、
前記配備先情報記憶部に記憶されている配備先情報のうち入力された配備対象物を配備可能なシステム環境の識別情報を含む配備先情報を選定する選定処理を実行させ、
前記選定処理で、配備対象物として入力されたアプリケーションに実装されている処理で使用されるデータである配備対象データを示す処理属性情報を前記処理属性情報記憶部から取得させ、取得された処理属性情報が示す前記配備対象データの属性を示す配備データ属性情報を前記配備データ属性情報記憶部から取得させ、取得された配備データ属性情報を用いて前記配備対象データを配備可能なシステム環境の識別情報を含む配備先情報を選定させる
ための配備プログラム。
【請求項１０】
コンピュータに、
選定処理で、配備対象物として入力されたアプリケーションに同梱されているソフトウェアの属性を示す配備データ属性情報を配備データ属性情報記憶部から取得させ、取得された配備データ属性情報を用いて前記ソフトウェアを配備可能なシステム環境の識別情報を含む配備先情報を選定させる
請求項９記載の配備プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、配備装置、配備方法および配備プログラムに関し、特に配備に関して制約を有するソフトウェアおよびデータを適切なクラウドコンピューティング環境（以下、クラウド環境という。）に配備する配備装置、配備方法および配備プログラムに関する。
【背景技術】
【０００２】
クラウドコンピューティングサービス（以下、クラウドサービスという。）は、インターネットを介してコンピューティング資源やアプリケーションが実行される環境資源を提供するサービスである。クラウドサービスを利用する場合、利用者は、ハイブリッド環境を利用できる。
【０００３】
ハイブリッド環境には、クラウドサービスで提供される環境であるクラウド環境と、自社内に用意された環境であるオンプレミス環境が含まれる。ハイブリッド環境を利用する場合、利用者は、クラウド環境とオンプレミス環境のそれぞれの違いを意識せずに各環境を利用できる。利用者は、業務システムをオンプレミス環境とクラウド環境のどちらで稼働させるか、業務システムの要件に応じて判断する。また、利用者は、業務システムを稼働させるクラウド環境を業務システムの要件に応じて選択する。
【０００４】
特許文献１には、ハイブリッド環境におけるクラウド環境を提供するクラウドサービスの中から、利用目的に沿ったクラウドサービスを選択するクラウドサービス選択装置が記載されている。特許文献１に記載されているクラウドサービス選択装置は、複数のクラウドサービスの中から、稼働させる業務システムの特性、提供されるクラウド環境のサービス品質、料金、性能や信頼性等の付加価値を示す指標等に基づいて適切なクラウドサービスを選択する。
【０００５】
また、特許文献２には、１つのパブリックな仮想サーバで複数の利用者のプログラムが実行される場合においてセキュリティの確保、効果的なセキュリティの制御、および効果的なセキュリティの管理を実現するクラウドセキュリティ管理システムが記載されている。特許文献２には、利用者のアプリケーションが共用サーバで実行される際の認証方法、または許可方法が記載されている。
【０００６】
また、非特許文献１には、統合開発環境(IDE:Integrated Development Environment)とクラウド環境が直接連携している環境でアプリケーションの開発、配備、および評価が行われる手法が記載されている。
【０００７】
ここで、利用者がクラウド環境に配備するソフトウェアやデータに、配備される環境に関する制約が課されている場合を想定する。例えば、非特許文献２には、クラウドサービスの利用時に考慮が求められる法規制が記載されている。
【０００８】
また、非特許文献３には、オンプレミス環境で利用されていたソフトウェアがクラウド環境で利用される際のライセンスに関する留意点が記載されている。上記の制約以外にも、例えば重要なデータには、流出や抹消等のリスク回避の観点からクラウド環境を配備先の環境に含めないというような利用者特有の制約が課されている場合がある。
【０００９】
実行されるシステムの規模やアプリケーションの規模が大きくなると、利用されるソフトウェアの種類、データの種類、およびライセンス形態の種類も増える。実行されるシステムやアプリケーションがより複雑になった場合も同様である。システムおよびアプリケーションの大規模化と複雑化が進んでいるため、手動での種々の制約の管理の煩雑化も進んでいる。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】国際公開第２０１４／０２４２５１号
【特許文献２】国際公開第２０１３／１７９３８３号
【非特許文献】
【００１１】
【非特許文献１】「Eclipseを使ったBluemixアプリケーション開発」、[online]、IBM Corporation、[平成２８年３月９日検索]、インターネット<https://www.ibm.com/developerworks/community/wikis/form/anonymous/api/wiki/38ad3157-38ad-4dd5-b425-7782f6a59546/page/1168fffe-414c-4559-8cb2-93e2e1268a26/attachment/97c0ab70-b0be-4c51-86cf-ba3b89df2e3b/media/Tutorial_2.pdf>
【非特許文献２】「５．クラウドを活用する上で理解しておくべきこと」、[online]、経済産業省、[平成２８年３月９日検索]、インターネット<http://www.meti.go.jp/committee/sankoushin/jouhoukeizai/jinzai/002_02_03d.pdf>
【非特許文献３】「クラウドや仮想化デスクトップ移行時のソフトウェアライセンスの考え方」、[online]、一般社団法人 ソフトウェア資産管理評価認定協会  仮想化・クラウドワーキンググループ、[平成２８年３月９日検索]、インターネット<http://www.samac.or.jp/docs/150612-SAMAC-wg-cloud-report.pdf>
【発明の概要】
【発明が解決しようとする課題】
【００１２】
上記の通り、パブリックなクラウド環境とオンプレミス環境が容易に連携可能なハイブリッド環境において大規模で複雑なシステムの開発やアプリケーションの開発が進められると、商用ライブラリ等の利用されるソフトウェアの種別、および利用されるデータの種別が増える。利用される種別が増えることによって、手動での制約管理が煩雑化する。
【００１３】
手動での制約管理が煩雑化するほど、セキュリティの観点やコンプライアンスの観点で設けられた制約に反してソフトウェアやデータが社外のクラウドサービス事業者が提供するクラウド環境やクラウドサービス事業者が提供する国外のクラウド環境で利用されるリスクが高まる。
【００１４】
例えば、別のシステムで開発された、アプリケーション開発で利用される外部API(Application Programming Interface)が国外に存在するサーバ等への保管が禁止されているデータを使用していることが事前に把握されない場合を想定する。外部APIの特性が事前に把握されないと、利用者の意図と関係無く外部APIが国外に存在するサーバ等で構成されるクラウド環境に配備される可能性がある。外部APIがクラウド環境に配備されると、セキュリティの問題やコンプライアンスの問題が発生する。
【００１５】
また、非特許文献１に記載されているような手法が既に提供されているため、利用者は、容易にクラウド環境を利用できる。クラウド環境が利用されやすくなっているため、利用者が意図せずに上記の各種制約に反してソフトウェアやデータをクラウド環境に配備するリスクが高まっている。
【００１６】
しかし、特許文献１に記載されているクラウドサービス選択装置や特許文献２に記載されているクラウドセキュリティ管理システムでは、クラウド環境に配備される際のデータ等に課された制約に関する上記の課題を解決することが想定されていない。
【００１７】
そこで、本発明は、配備対象物に課された制約を満たすシステム環境に配備対象物を配備できる配備装置、配備方法および配備プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１８】
本発明による配備装置は、システムが稼働する環境であるシステム環境に配備されるデータまたはソフトウェアのいずれかの属性を示す配備データ属性情報を記憶する配備データ属性情報記憶部と、アプリケーションに実装されている処理で使用されるデータを示す処理属性情報を記憶する処理属性情報記憶部と、システム環境を識別する識別情報とそのシステム環境に配備可能な配備対象物の属性を示す情報とを含む配備先情報を記憶する配備先情報記憶部と、配備先情報記憶部に記憶されている配備先情報のうち入力された配備対象物を配備可能なシステム環境の識別情報を含む配備先情報を選定する選定部とを備え、選定部は、配備対象物として入力されたアプリケーションに実装されている処理で使用されるデータである配備対象データを示す処理属性情報を処理属性情報記憶部から取得し、取得された処理属性情報が示す配備対象データの属性を示す配備データ属性情報を配備データ属性情報記憶部から取得し、取得された配備データ属性情報を用いて配備対象データを配備可能なシステム環境の識別情報を含む配備先情報を選定することを特徴とする。
【００１９】
本発明による配備方法は、システムが稼働する環境であるシステム環境に配備されるデータまたはソフトウェアのいずれかの属性を示す配備データ属性情報を記憶する配備データ属性情報記憶部と、アプリケーションに実装されている処理で使用されるデータを示す処理属性情報を記憶する処理属性情報記憶部と、システム環境を識別する識別情報とそのシステム環境に配備可能な配備対象物の属性を示す情報とを含む配備先情報を記憶する配備先情報記憶部とを備える配備装置において実行される配備方法であって、配備装置は、配備先情報記憶部に記憶されている配備先情報のうち入力された配備対象物を配備可能なシステム環境の識別情報を含む配備先情報を選定し、配備対象物として入力されたアプリケーションに実装されている処理で使用されるデータである配備対象データを示す処理属性情報を処理属性情報記憶部から取得し、取得された処理属性情報が示す配備対象データの属性を示す配備データ属性情報を配備データ属性情報記憶部から取得し、取得された配備データ属性情報を用いて配備対象データを配備可能なシステム環境の識別情報を含む配備先情報を選定することを特徴とする。
【００２０】
本発明による配備プログラムは、システムが稼働する環境であるシステム環境に配備されるデータまたはソフトウェアのいずれかの属性を示す配備データ属性情報を記憶する配備データ属性情報記憶部と、アプリケーションに実装されている処理で使用されるデータを示す処理属性情報を記憶する処理属性情報記憶部と、システム環境を識別する識別情報とそのシステム環境に配備可能な配備対象物の属性を示す情報とを含む配備先情報を記憶する配備先情報記憶部とを備えるコンピュータにおいて実行される配備プログラムであって、コンピュータに、配備先情報記憶部に記憶されている配備先情報のうち入力された配備対象物を配備可能なシステム環境の識別情報を含む配備先情報を選定する選定処理を実行させ、選定処理で、配備対象物として入力されたアプリケーションに実装されている処理で使用されるデータである配備対象データを示す処理属性情報を処理属性情報記憶部から取得させ、取得された処理属性情報が示す配備対象データの属性を示す配備データ属性情報を配備データ属性情報記憶部から取得させ、取得された配備データ属性情報を用いて配備対象データを配備可能なシステム環境の識別情報を含む配備先情報を選定させることを特徴とする。
【発明の効果】
【００２１】
本発明によれば、配備対象物に課された制約を満たすシステム環境に配備対象物を配備できる。
【図面の簡単な説明】
【００２２】
【図１】本発明による配備装置の第１の実施形態の構成例を示すブロック図である。
【図２】第１の実施形態の配備装置６０による選定処理の動作を示すフローチャートである。
【図３】本発明による配備システムの第２の実施形態の構成例を示すブロック図である。
【図４】アプリケーション開発環境２００から送信されるアプリケーションの例を示す説明図である。
【図５】アプリケーション開発環境２００から送信されるデータの例を示す説明図である。
【図６】配備データ属性情報記憶部１０４に記憶されている配備データ属性情報の例を示す説明図である。
【図７】処理属性情報記憶部１０５に記憶されている処理属性情報の例を示す説明図である。
【図８】配備先情報記憶部１０６に記憶されている配備先情報の例を示す説明図である。
【図９】第２の実施形態の配備支援サーバ１００による解析処理の動作を示すフローチャートである。
【図１０】第２の実施形態の配備支援サーバ１００による選定処理の動作を示すフローチャートである。
【図１１】第２の実施形態の配備支援サーバ１００による他の選定処理の動作を示すフローチャートである。
【図１２】第２の実施形態の配備支援サーバ１００による配備処理の動作を示すフローチャートである。
【図１３】本発明による配備システムの第２の実施形態の他の構成例を示すブロック図である。
【発明を実施するための形態】
【００２３】
実施形態１．
以下、本発明の実施形態を、図面を参照して説明する。図１は、本発明による配備装置の第１の実施形態の構成例を示すブロック図である。本発明による配備装置６０は、システムが稼働する環境であるシステム環境を示す情報とシステム環境に配備可能な配備対象物（例えば、アプリケーション４００やデータ５００）を示す情報とを含む配備先情報を記憶する記憶部６１（例えば、配備先情報記憶部１０６）と、記憶部６１に記憶されている配備先情報のうち入力された配備対象物を配備可能なシステム環境を示す配備先情報を選定する選定部６２（例えば、配備先評価部１０２）とを備える。
【００２４】
配備先情報は、少なくともシステム環境を示す情報と、システム環境に配備可能な配備対象物を示す情報とで構成される。システム環境に配備可能な配備対象物を示す情報に基づいて、入力された配備対象物がシステム環境に配備可能か否かが判別される。
【００２５】
以下、配備装置６０による選定処理を説明する。図２は、第１の実施形態の配備装置６０による選定処理の動作を示すフローチャートである。
【００２６】
選定部６２に、配備対象物が入力される（ステップＳ１１）。
【００２７】
次いで、選定部６２は、記憶部６１に記憶されている配備先情報のうち、入力された配備対象物がシステム環境に配備可能な配備対象物に適合する配備先情報を選定する（ステップＳ１２）。
【００２８】
次いで、選定部６２は、選定された配備先情報を出力する（ステップＳ１３）。出力した後、配備装置６０は、選定処理を終了する。
【００２９】
そのような構成により、配備装置は、配備対象物に課された制約を満たすシステム環境に配備対象物を配備できる。
【００３０】
また、配備装置６０は、選定部６２により選定された配備先情報が示すシステム環境に選定部６２に入力された配備対象物を配備する配備部（例えば、配備実行部１０３）を備えてもよい。
【００３１】
そのような構成により、配備装置は、選定された配備先情報が示すシステム環境にアプリケーション等を配備できる。
【００３２】
また、配備部は、通信ネットワークを介してシステム環境と通信可能に接続されていてもよい。
【００３３】
そのような構成により、配備装置は、社外の環境であるクラウド環境にアプリケーション等を配備できる。
【００３４】
また、配備先情報には、システム環境に配備可能な配備対象物の属性を示す情報が含まれてもよい。
【００３５】
そのような構成により、配備装置は、配備対象物の属性に基づいて配備対象物を配備可能なシステム環境を選定できる。
【００３６】
また、配備先情報は、配備対象物の属性として配備対象物の利用可能地域を示してもよい。
【００３７】
そのような構成により、配備装置は、配備対象物の利用可能地域を考慮した上で配備対象物を配備可能なシステム環境を選定できる。
【００３８】
また、配備先情報は、配備対象物の属性として配備対象物が配備されるシステム環境に求められる機密性の度合いを示してもよい。
【００３９】
そのような構成により、配備装置は、配備対象物のセキュリティ面での重要度を考慮した上で配備対象物を配備可能なシステム環境を選定できる。
【００４０】
実施形態２．
［構成の説明］
次に、本発明の第２の実施形態を、図面を参照して説明する。図３は、本発明による配備システムの第２の実施形態の構成例を示すブロック図である。図３に示すように、本実施形態の配備支援サーバ１００は、解析部１０１と、配備先評価部１０２と、配備実行部１０３と、配備データ属性情報記憶部１０４と、処理属性情報記憶部１０５と、配備先情報記憶部１０６とを含む。
【００４１】
また、図３に示すように、本実施形態の配備支援サーバ１００は、利用者によって管理される自社内環境１０に存在する。自社内環境１０には、配備支援サーバ１００の他にアプリケーション開発環境２００と、オンプレミス環境３００が存在する。
【００４２】
また、図３に示すように、配備支援サーバ１００は、通信ネットワーク２０を介して、自社内環境１０の外部に存在するクラウド環境３０１〜クラウド環境３０ｎ（ｎは１以上の整数）と通信可能に接続されている。また、配備支援サーバ１００は、通信ネットワーク２０を介して、自社内環境１０に存在するオンプレミス環境３００と通信可能に接続されている。なお、配備支援サーバ１００は、自社内環境１０ではなくいずれかのクラウド環境に設置されてもよい。
【００４３】
配備支援サーバ１００は、システムで利用されるデータやデータを扱うアプリケーションの処理（例えば、APIを使用する処理）を、利用可能なクラウド環境の選定に使用される属性情報を付与した上で管理する。クラウド環境に配備する際、配備支援サーバ１００は、配備されるアプリケーションやデータと共に管理されている属性情報を解析し、配備先環境として適切なクラウド環境を選定する。配備支援サーバ１００は、選定されたクラウド環境にアプリケーションやデータを配備する。
【００４４】
アプリケーション開発環境２００に存在する開発システムは、アプリケーション４００やデータ５００を配備支援サーバ１００に送信する。送信することによって、開発システムは、配備支援サーバ１００にアプリケーション４００やデータ５００のオンプレミス環境、またはクラウド環境への配備を依頼する。
【００４５】
図４は、アプリケーション開発環境２００から送信されるアプリケーションの例を示す説明図である。図４に示すように、アプリケーション４００は、アプリケーション処理識別情報４０１と、ソフトウェア識別情報４０２と、アプリケーション部４０３とで構成される。
【００４６】
アプリケーション処理識別情報４０１は、アプリケーション４００に実装されている処理を識別する識別子(ID)を１つ以上含む情報である。アプリケーション４００に実装されている処理は、例えば関数を使用する処理やAPIを使用する処理である。
【００４７】
ソフトウェア識別情報４０２は、アプリケーション４００に同梱されているソフトウェアを識別する識別子(ID)を１つ以上含む情報である。また、アプリケーション部４０３は、アプリケーション４００で提供されるアプリケーションの物理的な実体である。
【００４８】
図５は、アプリケーション開発環境２００から送信されるデータの例を示す説明図である。図５に示すように、データ５００は、データ識別情報５０１と、データ部５０２とで構成される。
【００４９】
データ識別情報５０１は、データ５００に含まれているデータを識別する識別子(ID)を１つ以上含む情報である。また、データ部５０２は、データ識別情報５０１が示すデータである。
【００５０】
図４に示すアプリケーション４００、および図５に示すデータ５００は、例えばアプリケーション開発環境２００でユーザがアプリケーションやデータを設計した時、または開発した時に作成される。
【００５１】
開発システムから配備を依頼されると、配備支援サーバ１００は、配備処理を行う。配備処理を行う際、配備支援サーバ１００の解析部１０１は、アプリケーション開発環境２００から送信されたアプリケーション４００、またはデータ５００を解析する。
【００５２】
解析することによって、解析部１０１は、アプリケーション４００で実行される関数やAPI等を使用する処理を示す情報と、アプリケーション４００に同梱されているソフトウェアを示す情報を抽出する。また、解析部１０１は、データ５００に含まれているデータを示す識別情報を抽出する。
【００５３】
配備先評価部１０２は、解析部１０１で抽出された処理を示す情報、ソフトウェアを示す情報、およびデータを示す情報を用いて、配備を依頼された対象物を配備可能な環境を選定する機能を有する。環境を選定する際、配備先評価部１０２は、配備データ属性情報記憶部１０４に記憶されている情報、処理属性情報記憶部１０５に記憶されている情報、および配備先情報記憶部１０６に記憶されている情報をそれぞれ参照する。
【００５４】
配備実行部１０３は、配備先評価部１０２で選定された環境のうち、いずれかの環境にアプリケーション４００やデータ５００等の配備を依頼された対象物を配備する機能を有する。
【００５５】
配備データ属性情報記憶部１０４には、システム環境に配備されるデータのセキュリティレベルや利用可能地域等の、配備されるデータの属性を示す配備データ属性情報が登録されている。図６は、配備データ属性情報記憶部１０４に記憶されている配備データ属性情報の例を示す説明図である。なお、配備されるデータには、データとソフトウェアが含まれる。
【００５６】
図６に示すように、配備データ属性情報は、識別子と、タイプと、利用可能地域と、セキュリティレベルと、内容とで構成される。識別子は、配備されるデータを識別する識別情報である。タイプは、識別子が示す配備されるデータのタイプである。タイプには、「Data」と「Software」の２種類がある。なお、タイプには、「Data」と「Software」以外の種類が含まれてもよい。
【００５７】
利用可能地域は、識別子が示す配備されるデータの利用可能な地域である。セキュリティレベルは、識別子が示すデータが配備される環境に求められる機密性の度合いを示す。セキュリティレベルが示す値が大きいほど重要なデータであり、配備される環境に求められる機密性が高くなる。なお、セキュリティレベルが「−」である場合、配備される環境に求められる機密性の水準はどのような水準でもよい。
【００５８】
内容は、識別子が示す配備されるデータの内容である。本実施形態では、配備データ属性情報が、データが配備される際の制約を示す制約情報として使用される。
【００５９】
処理属性情報記憶部１０５には、アプリケーションに実装されている処理で使用されるデータを示す処理属性情報が登録されている。図７は、処理属性情報記憶部１０５に記憶されている処理属性情報の例を示す説明図である。
【００６０】
図７に示すように、処理属性情報は、アプリケーション処理識別子と、データとで構成される。アプリケーション処理識別子は、アプリケーションに実装されている処理を識別する識別情報である。
【００６１】
データは、アプリケーション処理識別子が示す処理で使用されるデータである。図７に示すように、データには、図６に示すタイプが「Data」の識別子が格納されている。
【００６２】
配備先情報記憶部１０６には、セキュリティレベルや所在地域等の配備先環境に関する情報を示す配備先情報が登録されている。図８は、配備先情報記憶部１０６に記憶されている配備先情報の例を示す説明図である。
【００６３】
図８に示すように、配備先情報は、環境と、セキュリティレベルと、地域と、接続情報とで構成される。環境は、配備先環境を識別する識別情報である。なお、図８に示す環境「C1」はクラウド環境３０１、環境「C2」はクラウド環境３０２、および環境「O」はオンプレミス環境３００をそれぞれ示す。
【００６４】
セキュリティレベルは、環境に設定されている機密性の度合いを示す。各環境で取り扱われるデータは、図６に示すセキュリティレベルが図８に示すセキュリティレベル以下のデータである。すなわち、各環境で取り扱われるデータの種類は、各環境のセキュリティレベルに依存する。
【００６５】
地域は、環境を構成するサーバ等が存在する地域である。接続情報は、配備支援サーバ１００が各環境へ接続する際に使用される情報である。なお、配備先情報には、図８に示す情報以外の配備先環境に関する情報が含まれてもよい。
【００６６】
［動作の説明］
以下、本実施形態の配備支援サーバ１００の動作を図９〜図１２を参照して説明する。
【００６７】
最初に、アプリケーション４００、またはデータ５００が配備支援サーバ１００に受信されてから解析部１０１が受信されたアプリケーション４００、またはデータ５００を解析する処理を説明する。図９は、第２の実施形態の配備支援サーバ１００による解析処理の動作を示すフローチャートである。
【００６８】
配備支援サーバ１００は、アプリケーション開発環境２００からクラウド環境等に配備されるアプリケーション４００、またはデータ５００を受信する（ステップＳ１０１）。
【００６９】
次いで、解析部１０１は、受信された配備対象物が、アプリケーション４００であるか否かを確認する（ステップＳ１０２）。
【００７０】
配備対象物がアプリケーション４００である場合（ステップＳ１０２におけるＹｅｓ）、解析部１０１は、アプリケーション４００にアプリケーション処理識別情報４０１とソフトウェア識別情報４０２が設定されているか否かを確認する（ステップＳ１０３）。
【００７１】
アプリケーション処理識別情報４０１およびソフトウェア識別情報４０２が設定されている場合（ステップＳ１０３におけるＹｅｓ）、解析部１０１は、アプリケーション４００からアプリケーション処理識別情報４０１とソフトウェア識別情報４０２を取得する（ステップＳ１０４）。取得した後、配備支援サーバ１００は、解析処理を終了する。
【００７２】
アプリケーション処理識別情報４０１とソフトウェア識別情報４０２の少なくとも１つが設定されていない場合（ステップＳ１０３におけるＮｏ）、解析部１０１は、設定されていない識別情報のアプリケーション４００への設定を促す旨を利用者に通知する（ステップＳ１０５）。通知した後、配備支援サーバ１００は、解析処理を終了する。なお、識別情報が設定されていない場合、後続の処理は行われない。
【００７３】
配備対象物がアプリケーション４００でない場合（ステップＳ１０２におけるＮｏ）、配備対象物はデータ５００である。解析部１０１は、データ５００にデータ識別情報５０１が設定されているか否かを確認する（ステップＳ１０６）。
【００７４】
データ識別情報５０１が設定されている場合（ステップＳ１０６におけるＹｅｓ）、解析部１０１は、データ５００からデータ識別情報５０１を取得する（ステップＳ１０７）。取得した後、配備支援サーバ１００は、解析処理を終了する。
【００７５】
データ識別情報５０１が設定されていない場合（ステップＳ１０６におけるＮｏ）、解析部１０１は、設定されていない識別情報のデータ５００への設定を促す旨を利用者に通知する（ステップＳ１０５）。通知した後、配備支援サーバ１００は、解析処理を終了する。なお、識別情報が設定されていない場合、後続の処理は行われない。
【００７６】
次に、解析部１０１で取得された各種識別情報を用いて配備先評価部１０２がアプリケーション４００を配備可能な配備先環境を選定する処理を説明する。図１０は、第２の実施形態の配備支援サーバ１００による選定処理の動作を示すフローチャートである。
【００７７】
配備先評価部１０２は、解析部１０１で取得されたアプリケーション処理識別情報４０１が示すアプリケーション４００に実装されている処理を識別する識別子に対応するアプリケーション処理識別子が含まれている処理属性情報を処理属性情報記憶部１０５から取得する。
【００７８】
次いで、配備先評価部１０２は、アプリケーション４００に実装されている処理で取り扱われるデータを示す識別子(ID)を、取得された処理属性情報から取得する（ステップＳ２０１）。
【００７９】
次いで、配備先評価部１０２は、ステップＳ２０１で取得されたデータを示す識別子(ID)を用いて、識別子が示すデータの配備データ属性情報を配備データ属性情報記憶部１０４から取得する（ステップＳ２０２）。取得された配備データ属性情報は、上記の通りデータの利用可能な地域やデータのセキュリティレベル等、データが配備される際の制約を示す情報である。
【００８０】
また、配備先評価部１０２は、解析部１０１で取得されたソフトウェア識別情報４０２が示すソフトウェアの配備データ属性情報を配備データ属性情報記憶部１０４から取得する（ステップＳ２０２）。取得された配備データ属性情報は、アプリケーション４００に含まれるソフトウェアが配備される際の制約を示す情報である。
【００８１】
ステップＳ２０２の処理まで終えた段階で、配備先評価部１０２は、アプリケーション４００に関するデータおよびソフトウェアの各配備データ属性情報が全て取得されたか否かを確認する（ステップＳ２０３）。本実施形態において配備データ属性情報が取得されない場合は、配備データ属性情報記憶部１０４に該当の配備データ属性情報が存在しない場合に相当する。
【００８２】
データおよびソフトウェアの各配備データ属性情報の少なくとも１つが配備データ属性情報記憶部１０４に存在しない場合（ステップＳ２０３におけるＮｏ）、配備先評価部１０２は、登録されていない配備データ属性情報の配備データ属性情報記憶部１０４への登録を促す旨を利用者に通知する（ステップＳ２０５）。
【００８３】
また、ステップＳ２０１で取得されたアプリケーション処理識別情報４０１に対応する処理属性情報が処理属性情報記憶部１０５に存在しない場合にも、配備先評価部１０２は、登録されていない処理属性情報の処理属性情報記憶部１０５への登録を促す旨を利用者に通知する。通知した後、配備支援サーバ１００は、選定処理を終了する。なお、属性情報が登録されていない場合、後続の処理は行われない。
【００８４】
データおよびソフトウェアの各配備データ属性情報が全て配備データ属性情報記憶部１０４に存在する場合（ステップＳ２０３におけるＹｅｓ）、配備先評価部１０２は、配備先情報記憶部１０６から配備先情報を取得する。次いで、配備先評価部１０２は、取得された配備先情報のうち条件を満たす配備先情報を選定する（ステップＳ２０４）。
【００８５】
条件を満たす配備先情報は、ステップＳ２０２の処理で取得されたデータおよびソフトウェアの各配備データ属性情報が示す制約を全て満たす配備先情報である。なお、選定される条件を満たす配備先情報は、１つでもよいし、複数でもよい。選定した後、配備支援サーバ１００は、選定処理を終了する。
【００８６】
以下、配備先評価部１０２がアプリケーション４００を配備可能な配備先環境を選定する処理の具体例を、図６〜図８に示す具体的な値を用いて説明する。例えば、解析部１０１がアプリケーション４００から取得したアプリケーション処理識別情報４０１が識別子「F2」を示す場合を説明する。
【００８７】
ステップＳ２０１の処理で、配備先評価部１０２は、アプリケーション処理識別子が「F2」である処理属性情報を処理属性情報記憶部１０５から取得する。取得される処理属性情報は、図７に示す二番目の処理属性情報である。
【００８８】
次いで、配備先評価部１０２は、取得された処理属性情報からデータを示す識別子「D2」を取得する。すなわち、配備先評価部１０２は、配備対象のアプリケーション４００が識別子「D2」のデータを取り扱うという情報を、処理属性情報記憶部１０５から取得する。
【００８９】
次いで、配備先評価部１０２は、ステップＳ２０１の処理で取得されたデータを示す識別子「D2」を用いて、データの配備データ属性情報を配備データ属性情報記憶部１０４から取得する（ステップＳ２０２）。取得される配備データ属性情報は、図６に示す三番目の配備データ属性情報である。
【００９０】
また、例えば、解析部１０１がアプリケーション４００から取得したソフトウェア識別情報４０２が識別子「S1」を示す場合を説明する。配備先評価部１０２は、ソフトウェアを示す識別子「S1」を用いて、ソフトウェアの配備データ属性情報を配備データ属性情報記憶部１０４から取得する（ステップＳ２０２）。
【００９１】
取得される配備データ属性情報は、図６に示す二番目の配備データ属性情報である。すなわち、データおよびソフトウェアの各配備データ属性情報が全て配備データ属性情報記憶部１０４に存在する（ステップＳ２０３におけるＹｅｓ）。
【００９２】
識別子が「D2」の配備データ属性情報が示すデータの配備に関する制約は、利用可能な地域が「米国、EU、国内、自社」であることと、セキュリティレベルが１以上であることである。配備先環境が配備データ属性情報が示す制約を満たす環境でなければ、識別子が「D2」のデータは配備されない。
【００９３】
同様に、識別子が「S1」の配備データ属性情報が示すソフトウェアの配備に関する制約は、利用可能な地域が「国内、自社」であることである。配備先環境が配備データ属性情報が示す制約を満たす環境でなければ、識別子が「S1」のソフトウェアは配備されない。
【００９４】
ステップＳ２０４の処理で、配備先評価部１０２は、ステップＳ２０２の処理で取得されたアプリケーションに実装されている処理で取り扱われるデータの配備データ属性情報が示す制約と、ソフトウェアの配備データ属性情報が示す制約を満たす配備先情報を選定する。すなわち、配備先評価部１０２は、所在地域が「国内、自社」であり、かつセキュリティレベルが１以上の配備先環境を示す配備先情報を選定する。
【００９５】
上記の制約を満たす配備先情報として、配備先評価部１０２は、環境が「C2」の配備先情報、および環境が「O」の配備先情報を選定する。
【００９６】
次に、解析部１０１で取得された各種識別情報を用いて配備先評価部１０２がデータ５００を配備可能な配備先環境を選定する処理を説明する。図１１は、第２の実施形態の配備支援サーバ１００による他の選定処理の動作を示すフローチャートである。
【００９７】
配備先評価部１０２は、解析部１０１で取得されたデータ識別情報５０１に含まれる識別子(ID)を用いて、識別子が示すデータの配備データ属性情報を配備データ属性情報記憶部１０４から取得する（ステップＳ３０１）。
【００９８】
ステップＳ３０１の処理まで終えた段階で、配備先評価部１０２は、データ５００に関するデータの各配備データ属性情報が全て取得されたか否かを確認する（ステップＳ３０２）。
【００９９】
データの各配備データ属性情報の少なくとも１つが配備データ属性情報記憶部１０４に存在しない場合（ステップＳ３０２におけるＮｏ）、配備先評価部１０２は、登録されていない配備データ属性情報の配備データ属性情報記憶部１０４への登録を促す旨を利用者に通知する（ステップＳ３０４）。通知した後、配備支援サーバ１００は、選定処理を終了する。なお、配備データ属性情報が登録されていない場合、後続の処理は行われない。
【０１００】
データの各配備データ属性情報が全て配備データ属性情報記憶部１０４に存在する場合（ステップＳ３０２におけるＹｅｓ）、配備先評価部１０２は、配備先情報記憶部１０６から配備先情報を取得する。次いで、配備先評価部１０２は、取得された配備先情報のうち条件を満たす配備先情報を選定する（ステップＳ３０３）。
【０１０１】
条件を満たす配備先情報は、ステップＳ３０１の処理で取得されたデータの各配備データ属性情報が示す制約を全て満たす配備先情報である。なお、選定される条件を満たす配備先情報は、１つでもよいし、複数でもよい。選定した後、配備支援サーバ１００は、選定処理を終了する。
【０１０２】
次に、選定された配備先情報を用いて配備実行部１０３がアプリケーション４００やデータ５００を配備先環境に配備する処理を説明する。図１２は、第２の実施形態の配備支援サーバ１００による配備処理の動作を示すフローチャートである。
【０１０３】
配備実行部１０３は、配備先評価部１０２による選定処理で選定された配備先情報を取得する（ステップＳ４０１）。
【０１０４】
次いで、配備実行部１０３は、ステップＳ４０１の処理で取得された配備先情報の数を確認する（ステップＳ４０２）。ステップＳ４０１の処理で取得された配備先情報の数が０である場合（ステップＳ４０２における「０」）、すなわち配備先評価部１０２がどの配備先情報も選定しなかった場合、配備実行部１０３は、配備可能な環境が無い旨を利用者に通知する。通知した後、配備支援サーバ１００は、配備処理を終了する。
【０１０５】
ステップＳ４０１の処理で取得された配備先情報の数が１以上である場合（ステップＳ４０２における「１以上」）、配備実行部１０３は、利用者に配備先環境の選択を促す旨を通知する。利用者が配備先環境を選択した後、配備実行部１０３は、選択された配備先環境を示す配備先情報に含まれる接続情報を利用して、配備先環境にアプリケーション４００、またはデータ５００を配備する（ステップＳ４０３）。配備した後、配備支援サーバ１００は、配備処理を終了する。
【０１０６】
上記の具体例であれば、配備実行部１０３は、ステップＳ４０３の処理で利用者にアプリケーション４００を配備可能な環境として環境「C2、O」を提示する。配備実行部１０３は、利用者が選択したいずれかの配備先環境にアプリケーション４００を配備する。
【０１０７】
なお、配備支援サーバ１００は、図４に示すアプリケーションや図５に示すユーザデータ以外に、仮想マシン(VM:Virtual Machine)のイメージ等、クラウド環境に配備される様々なデータに対して解析処理、選定処理、および配備処理を実行できる。
【０１０８】
また、自社内環境１０には、オンプレミス環境３００が含まれていなくてもよい。すなわち、配備支援サーバ１００は、配備先環境としてクラウド環境のみを扱ってもよい。図１３は、本発明による配備システムの第２の実施形態の他の構成例を示すブロック図である。
【０１０９】
［効果の説明］
本実施形態の配備支援サーバ１００は、システムやアプリケーションの開発で用いられるソフトウェアやユーザデータ等、クラウド環境に配備されるデータを、配備される際の制約を示す属性情報を付与した上で管理する。また、配備支援サーバ１００は、APIを使用する処理等のアプリケーションの処理を、処理で取り扱われるデータを示す情報を付与した上で管理する。クラウド環境にアプリケーションやデータが配備される際、解析部１０１が配備されるデータ、および配備されるアプリケーションを解析し、配備先評価部１０２が管理されている属性情報と解析結果を照会することによって、配備に関する制約を満たす配備先環境を選定できる。
【０１１０】
本実施形態の配備支援サーバ１００は、クラウド事業者から提供されるクラウド環境と自社で用意されたオンプレミス環境のそれぞれの違いを利用者が意識せずに利用できるハイブリッド環境内の、ソフトウェアやデータに課された各種制約を満たす配備先環境を選定できる。その理由は、配備先評価部１０２がソフトウェアやデータに課された各種制約を満たす配備先環境を示す配備先情報を取得し、配備実行部１０３が利用者に指定された配備先情報に基づいてソフトウェアやデータを配備先環境に配備するためである。
【０１１１】
ハイブリッド環境において、アプリケーションやデータは、クラウド環境−オンプレミス環境間を簡単に移動できる。オンプレミス環境でのみ利用可能なデータを利用するアプリケーションが誤ってクラウド環境に配備された場合、アプリケーションがオンプレミス環境におけるデータをクラウド環境に流出させる可能性がある。オンプレミス環境でのみ利用可能なデータがクラウド環境に流出するような状況が発生することは、法規制の観点やセキュリティの観点で問題である。
【０１１２】
本実施形態の配備支援サーバ１００は、オンプレミス環境とクラウド環境の間をソフトウェアやデータが自由に移行できるハイブリッド環境の中から適切な配備先環境を、配備されるソフトウェアやデータに課された制約を考慮した上で選択できる。
【０１１３】
よって、本実施形態の配備支援サーバ１００は、オンプレミス環境に配備されているデータが国外に存在するサーバ等で構成されるクラウド環境に配備されているアプリケーションで利用されるような上記のセキュリティ上の問題の発生を予防できる。また、本実施形態の配備支援サーバ１００は、使用が許可されていない地域でソフトウェアが使用されるような上記の利用規制に違反した問題の発生を予防できる。
【０１１４】
なお、本実施形態の配備支援サーバ１００は、例えば、記憶媒体に格納されているプログラムに従って処理を実行するCPU(Central Processing Unit)によって実現される。すなわち解析部１０１、配備先評価部１０２、および配備実行部１０３は、例えば、プログラム制御に従って処理を実行するCPUによって実現される。
【０１１５】
また、配備データ属性情報記憶部１０４、処理属性情報記憶部１０５、および配備先情報記憶部１０６は、例えばRAM(Random Access Memory)で実現される。
【０１１６】
また、本実施形態の配備支援サーバ１００における各部は、ハードウェア回路によって実現されてもよい。
【０１１７】
本実施形態の配備支援サーバ１００は、例えばハイブリッド環境を提供可能なクラウドサービスを利用する企業が開発支援サービスやソフトウェアを使用する際に好適に利用されることが考えられる。
【符号の説明】
【０１１８】
１０  自社内環境
２０  通信ネットワーク
３０１〜３０ｎ  クラウドコンピューティング環境
６０  配備装置
６１  記憶部
６２  選定部
１００  配備支援サーバ
１０１  解析部
１０２  配備先評価部
１０３  配備実行部
１０４  配備データ属性情報記憶部
１０５  処理属性情報記憶部
１０６  配備先情報記憶部
２００  アプリケーション開発環境
３００  オンプレミス環境
４００  アプリケーション
４０１  アプリケーション処理識別情報
４０２  ソフトウェア識別情報
４０３  アプリケーション部
５００  データ
５０１  データ識別情報
５０２  データ部
【図１】
0006736927.tif 000002
【図２】
0006736927.tif 000003
【図３】
0006736927.tif 000004
【図４】
0006736927.tif 000005
【図５】
0006736927.tif 000006
【図６】
0006736927.tif 000007
【図７】
0006736927.tif 000008
【図８】
0006736927.tif 000009
【図９】
0006736927.tif 000010
【図１０】
0006736927.tif 000011
【図１１】
0006736927.tif 000012
【図１２】
0006736927.tif 000013
【図１３】
0006736927.tif 000014