クラウドコンピューティング環境のクラウドアプリケーションの開発、およびクラウドコンピューティング環境におけるクラウドアプリケーションの開発のためのコンピュータベースシステムであって、前記クラウドアプリケーションが前記クラウド環境に接続することを認可されたコンピュータシステムユーザによってアクセスおよび起動することが可能であり、A前記クラウドアプリケーションを開発し、少なくとも、1前記クラウドアプリケーションについての少なくとも1つのウェブサービスを作成すること、2ユーザインターフェイスコンポーネントを含むユーザインターフェイスを作成すること、3前記クラウドアプリケーションについてのデータを格納するジョブを作成すること、によって、前記開発されたクラウドアプリケーションをクラウド環境における開発のために準備するステップと、B前記ステップAで作成された前記少なくとも1つのウェブサービスにしたがって、前記クラウドアプリケーションに関連付けられたメタデータを更新するステップと、C前記ステップBにしたがって前記クラウドアプリケーションに関連付けられた前記更新されたメタデータを用いて、少なくともサービス定義およびサービスインベントリファイルを更新するステップと、D前記ステップCで更新された前記少なくとも更新されたサービス定義およびサービスインベントリファイル、ならびに、前記ステップAで作成された前記ユーザインターフェイスおよびジョブをバンドルするためにウェブアーカイブファイルをビルドするステップと、E前記ステップDでビルドされた前記ウェブアーカイブファイルをバンドルし、前記クラウド環境での開発のためのクラウドアプリケーションを作成するステップと、F前記ステップEでバンドルされた前記バンドルウェブアーカイブファイルに関連付けた前記クラウドアプリケーションについてのクラウドアプリケーションプロファイルを作成するステップと、G前記ステップFで作成された前記クラウドアプリケーションプロファイルを前記クラウド環境に送信することによって、前記クラウド環境における前記クラウドアプリケーションの開発を要求するステップであって、前記要求が受け入れられたgranted場合にはステップHに、そうでない場合には前記ステップAに進むステップと、H前記クラウド環境における前記クラウドアプリケーションを開発するために、前記クラウド環境からの承認を得るステップと、I前記クラウドアプリケーションに関連付けられたサービスで前記クラウド環境のサービスレジストリを更新するステップと、Jシステムユーザが前記クラウドアプリケーションに関するデータに少なくともアクセスし、変更し、操作するために前記クラウド環境についてのアクセスセキュリティを許可レベルに更新するステップと、K前記ステップKで前記更新されたアクセスセキュリティにしたがってシステムユーザが利用するために、前記クラウドアプリケーションを前記クラウド環境にプロモートするステップと、を含む、コンピュータベースシステム。0020しかしながら、より良好なシステムの実装のためのコンピュータベースのプライベートクラウドシステム、ならびに、クラウドコンピューティングおよび企業ワイドベースのクラウドアプリケーション開発および適用のための方法における必要性が存在する。本発明のシステム及び方法は、これらの必要性を解決するものである。0021本発明は、クラウドコンピューティング、ならびに企業内のプライベートクラウドにおいてクラウドアプリケーション開発および展開のためのコンピュータベースシステムおよび方法である。さらに本発明は、プライベートクラウドコンピューティングのためのコンピュータベースシステムおよび方法に向けられており、クラウドインフラストラクチャが、プライベートクラウドシステムについて開発されたクラウドアプリケーションの展開および使用によって生じる変更に対し自動で適応し、さらには応答することを可能にする。本発明のプライベートクラウドコンピューティングシステムおよび方法は、図1に示されるアプリケーションレイヤ104の一部として組み込むことができるアプリケーションレイヤおよびサービスレイヤのような、より高位レベルレイヤで実装することができる。0022本発明のプライベートクラウドコンピューティングシステム及び方法は、好ましくは、クラウドコントローラ、クラウドスタック、サービスレジストリ、およびクラウドアプリケーションビルダを含む。クラウドコントローラは、プライベートクラウドにインテリジェンスを提供する。クラウドコントローラは、クラウドデータベースに収集され格納される情報を分析するために用いるルールエンジンを含む。このデータベースは、クラウドアプリケーションバイナリをモニタリング情報と同様に格納する。従って、典型的なファイルシステムに格納されているクラウドアプリケーションではなく、本発明のコンピュータベースプライベートクラウドシステムは、クラウドアプリケーションをデータベース内に格納し、その結果、当該アプリケーションを簡易で効率的な方法によりクラウド全体において維持することができる。0023クラウドスタックは、クラウドについてのオペレーティングソフトウェアを含む。例えば、クラウドスタックは、オペレーティングシステムソフトウェア、仮想マシンソフトウェア、ウェブサーバソフトウェア、アプリケーションサーバソフトウェア、ネットワークセキュリティソフトウェア、ウェブアクセス管理ソフトウェア、データベースドライバソフトウェア、アプリケーションビルダランタイムソフトウェア、およびサードパーティライブラリを含むことができる。0024サービスレジストリは、プライベートクラウドにおいて展開される少なくともクラウドアプリケーションについてのウェブサービスレジスタを収容する。ウェブサービスは多くの異なる方法によって検索可能であり、その結果、開発者は、彼らがプライベートクラウドに展開するために開発しているクラウドアプリケーションを用いて再利用できそうなウェブサービスおよびこれらの詳細情報をビューすることができる。0025クラウドアプリケーションビルダは、クラウドコントローラを用いてプライベートクラウドに展開されるアプリケーションをビルドする手段を開発者に提供する。クラウドアプリケーションビルダは、好ましくは、クラウドアリケーションのコンポーネントを作成するためのツールを含む。これらのコンポーネントは、好ましくは、プライベートクラウドに展開されることになるクラウドアプリケーションごとに、ウェブサービス、ユーザインターフェイスおよびジョブを含む。このように、クラウドアプリケーションビルディングツールは、ウェブサービスを開発するためのツール、クラウドアプリケーションへのアクセスレベルを制御するためのユーザインターフェイスを開発しサービスレジストリ内のウェブサービスを登録するためのツール、およびジョブを開発するためのツールを含む。しかしながら、これらに限定されない。これらのツールを用いると、開発および展開される各クラウドアプリケーションは、フォアグラウンドのタスク、データストレージおよびバックグラウンドのタスクを管理するためのユーザインターフェイスを含む。しかしながら、これらツールは多かれ少なかれ利用することができ、また、それがなおも本発明の範囲内にあるものと理解される。0026クラウドアプリケーションをビルドすることに関し、好ましくは相違する2つの部分がある。第1は、クラウドアプリケーションをビルドするための開発時間であり、そして、第2は、クラウドアプリケーションフレームワークであろう。開発時間は、クラウドアプリケーションフレームワークに従ってアプリケーションをビルドするためのクラウドアプリケーションビルダの使用を含む。クラウドアプリケーションフレームワークは、結果として生じるクラウドアプリケーションコンポーネントと共に、プライベートクラウドに展開される。0027本発明のシステムおよび方法は、クラウドアプリケーションへのアクセスを認可するユーザ役割を管理する企業セキュリティ財団eSFenterpriseSecurityFoundationのソフトウェアを含む。したがって、eSFを通じて、アクセスセキュリティが、本発明のプライベートクラウドに提供される。0028本発明のシステムおよび方法によれば、プライベートクラウドの様々なウェブサーバおよびアプリケーションサーバにクライアントデバイスから入来する要求をルーティングすることによってクラウドアプリケーションおよびウェブサービスを利用するために、クラウドインフラストラクチャリソースが、これら要求をバランシングすることにより管理される。0029本発明のプライベートクラウド内部では、また、クラウドアプリケーションについてのウェブサービスに関連するビジネスルールの作成も存在することができる。これらは、より大きなフレキシビリティ、管理、ならびにプライベートクラウド内で開発および展開されるクラウドアプリケーションの制御を提供する。0030本発明のプライベートクラウドコンピューティングシステム及び方法は、外部サービスをサポートする。したがって、クラウドデータベースへのサービスの提供は、このような外部サービスのアクセスおよび制御についてのセルフサービスアプリケーションを用いて実施することができる。0031本発明のプライベートクラウドコンピューティングシステム及び方法は、ログファイル内の使用データ、およびプライベートクラウドで起動しているクラウドアプリケーションに関連付けられた健康状態記録を分析するためにクラウドをモニタリングするサービスを企図する。分析の結果は、クラウドインフラストラクチャを拡大または縮小し、アラート処理を制御し、そしてキャパシティプランニングを容易にするために用いる。0032本発明のコンピュータベースプライベートクラウドコンピューティングシステム及び方法は、企業内でのクラウドアプリケーションおよびウェブサービスの開発および適用を提供する。0033本発明のコンピュータベースプライベートクラウドコンピューティングシステム及び方法はまた、クラウドコントローラ、クラウドスタック、サービスレジストリ、およびクラウドアプリケーションビルダを用いて実施することができる。この実施を行う際、クラウドアプリケーションビルダは、クラウドアリケーションフレームワークに従ってクラウドアプリケーションをビルドする。一旦クラウドアプリケーションがビルドされると、クラウドスタックおよびサービスレジストリを有するクラウドコントローラは、プライベートクラウドのクラウドアプリケーションを展開するために用いられる。0034本発明のコンピュータベースプライベートクラウドコンピューティングシステム及び方法は、さらに、クラウドスタックを通じたPaaSを提供し、企業システムのニーズを予想することによるIaaS拡張を行い、企業がクラウドアプリケーション開発および適用のプロセスの標準化を支援する。0035本発明のコンピュータベースプライベートクラウドコンピューティングシステム及び方法は、図面を参照して本明細書の残りで更に詳細に説明される。0058本発明は、クラウドコンピューティング、ならびに企業内プライベートクラウドにおけるクラウドアプリケーションの開発および展開のためのコンピュータベースシステムおよび方法に向けられている。本発明はまた、プライベートクラウドコンピューティングのためのコンピュータベースシステムと方法にも向けられており、クラウドインフラストラクチャは、そのプライベートクラウドシステムのために開発されたアプリケーションの展開および使用によって生じる変更に対し、自動的にまたは実質的に自動的に適応および応答する。本発明のプライベートクラウドコンピューティングシステムおよび方法は、図1に示されるアプリケーション層104の一部として組み込むことができるアプリケーションレイヤおよびサービスレイヤのようなより高位レベルレイヤにおいて実施される。0059図2を参照する。全般的に200において、本発明のコンピュータベースプライベートクラウドコンピュータシステムの物理構造についての代表的な図が示されている。図2において、クラウドアプリケーションサーバを形成するクラウドクラスタおよびルータが202に示される。このクラスタは、クラウドアプリケーションサーバを形成する4台のサーバコンピュータを示す。このように、サービス提供を通じた本発明のプライベートクラウドにおける負荷バランシングの特徴のために、任意のものを提供することができ、クラウドアプリケーションまたはウェブサービスへの要求をハンドルする。しかしながら、クラスタは、4台よりも多いまたはそれより少ないサーバコンピュータを備えることができ、なおも本発明の範囲内にあるものとすることができる。0060外部クラウドサービス204は、クラウドアプリケーションサーバ202に接続される。図示の外部クラウドサービスは、ネットワークセキュリティをクラウドに提供するために用いるクロークウェアサーバ206を含む。0061外部クラウドサービス204は、ファイル転送サービス210を含む。ファイル転送サービス210によって取り扱われるサービスには、クライアントデバイス-クラウド間、クラウド-外部システム間、および内部クラウドにおけるファイル転送が含まれるが、これに限定されない。これらのファイル転送をセキュリティ目的のために暗号化できるということは、本発明の範囲内にある。0062外部クラウドサービス204に示される最後のサーバは、eメールサーバ212である。このサーバは、eメールメッセージをクライアントデバイスに送信し、およびeメールメッセージを送クライアントデバイスから受信するためのものである。より具体的には、このサーバにハンドルされることが予想されるeメールメッセージには、プライベートクラウドから外部システムへのeメールメッセージが含まれ、例えば、プライベートクラウド内でアラート条件またはサービスレベル目標SLOServicelevelobjective違反を通知する。0063クラウドアプリケーションサーバ202は、アプリケーションデータベース214に接続する。好ましくは、このデータベースは、クラウドアプリケーションデータを格納する。このデータは、例えば、アプリケーショントランザクションデータ、レポートおよびウェアハウスデータを含む。0064ウェブサーバ216は、クラウドアプリケーションサーバ202に接続して、クライアントデバイス222およびクラウドアプリケーションサーバ202の間に配置される。Webサーバ216は、従来どおり、コンテンツをクライアントデバイスに提供し、また、クラウドアプリケーションサーバ202に向けられるクライアントデバイスからの要求を処理するように動作する。ウェブサーバ216はまた、サイトマインダサーバ218にも接続する。好ましくは、サイトマインダサーバ218は、認証サービスの形態でウェブアクセス管理をウェブサーバ216に提供する。0065クライアントデバイス222およびウェブサーバ216の間に配置される負荷バランサ220は、クラウドインフラストラクチャ内のクラウドにおいて起動しているクラウドアプリケーションの分散をバランシングするためのサービス提供を行う。より具体的には、負荷バランサ220は、数多くのウェブサーバ間で入来するHTTP要求を負荷バランシングする。数多くのウェブサーバの1つのみを図2Bに示す。0066図2Bを参照する。全般的に230において、図2Aに示した本発明のコンピュータベースプライベートクラウドコンピューティングシステムの論理構造の代表的な図を示している。負荷バランサ220は、ウェブサーバのプールに入来するHTTP要求をバランシングし、そして、ウェブサーバのようなクラウドインフラストラクチャを、上りおよび下りについてトラフィックのニーズを満たすようにスケーリングする。Webサーバ216/218は、Webサーバおよびシングルサインオンベースの認証エージェントの機能を実行する。0067ウェブサーバは、アプリケーションルータに要求をルーティングする。アプリケーションルータは、アプリケーションサーバ202の一部であるルータのクラスタ形態である。アプリケーションルータは、クラウドアプリケーションサーバクラスタ内でウェブサービスに要求をルーティングする。クラウドアプリケーションサーバクラスタはまた、クラウドアプリケーションサーバ202の一部でもある。各サービスは、固有IDによって識別される。0068アプリケーションサーバクラスタは、ウェブサービスをホストし、アプリケーションルータクラスタからこのようなサービスについての要求を受信する。アプリケーションサーバクラスタはまた、ジョブを収容する。ジョブは、アプリケーションサーバクラスタ内に常駐するクラウドアプリケーションの一部であるバッチジョブである。0069アプリケーションサーバクラスタのウェブサービスは、企業データを含むアプリケーションデータベース214に接続する。アプリケーションデータベースは、プライベートクラウドの外側に常駐する。企業データは、オンライントランザクション処理OLTPおよびウェアハウスデータを含み、これらは別々に格納される。好ましくは、オラクルインスタンスとして示される複製インスタンスが、OLTP用のデータを保有する。0070図3を参照する。全般的に300において、本発明のコンピュータベースプライベートクラウドコンピューティングシステムのコンポーネントが示されている。これらコンポーネントについてこれから説明する。0071本発明のコンピュータベースプライベートクラウドコンピューティングシステムの主要なコンポーネントは、クラウドコントローラ302、クラウドスタック324、サービスレジストリ345およびクラウドアプリケーションビルダ350を含む。先に述べたように、クラウドコントローラ302は、本発明のコンピュータベースプライベートコンピューティングシステムにインテリジェンスを供給する。クラウドコントローラ302の一般的な機能は、展開ワークフローをハンドルすること、クラウドアプリケーションを展開するための時間および日付を設定すること、起動することになるクラウドアプリケーションに従ってプラットフォームニーズの拡大および縮小をすること、物理マシンおよびバーチャルマシンを点検するための時間および日付を設定すること、クラウドアプリケーションログを走査するための時間および日付をセットすること、クラウドアプリケーショントランザクションをモニタリングするための時間および日付を設定すること、およびエラーがプライベートクラウド内で発生したときにアラートを送ることである。展開ワークフローについては、図27~32に関してこれよりより詳細に説明する。0072クラウドコントローラ302の有する変更制御サービス308は、クラウドアプリケーションのセットアップに関連付けられる。変更制御サービス308は、クラウドアプリケーション用に作成されるバンドルされたバイナリを受け入れて、認可されたシステムユーザが、クラウドアプリケーションプロファイルを作成および更新し、ならびに特定のクラウドアプリケーションに関する情報を閲覧することを許可する。クラウドプロファイルの作成は、既にプライベートクラウドに展開されてきたクラウドアプリケーションのためのものであり、起動されることになる適切なクラウドアプリケーションを特定する。0073変更制御サービス308は、認可されたユーザが、識別フィールドのない既存のプロファイルの記載をコピーすることを許可し、その結果、新規のクラウドアプリケーションを記載するために用いることができる。変更制御サービス308はまた、認可されたユーザが、既存のクラウドアプリケーションプロファイルを閲覧して、それらが収容する情報を精査することを許可する。さらに、変更制御サービス308は、認可されたユーザが、関連付けられたアプリケーションバイナリを含む既存のアプリケーションプロファイルを修正することを許可する。0074変更制御サービス308は、認可されたユーザがアプリケーションプロファイルのステータスを変更することを許可する。例えば、この機能を用いると、認可されたユーザであれば、クラウドアプリケーションのステータスを下書き中から公開済みに変更できるだろう。しかしながら、他のステータスへの変更がなおも本発明の範囲内にあるとすることができるものと認識される。0075変更制御サービス308により、認可されたシステムユーザが、クラウドアプリケーションのアプリケーションステータスを閲覧して、クラウドアプリケーションの現在および直前のステータスを精査することを可能にする。変更制御サービス308はまた、認可されたシステムユーザが、クラウドアプリケーションに関連付けられたプロパティを閲覧し、そして、それらプロパティを編集することを可能にする。0076上記説明した変更制御サービス308の特徴は、好ましい特徴のみである。変更制御サービス308が、多かれ少なかれ上記説明した特徴を有することができ、そして、なおも本発明の範囲内にあるものとすることができることを意図している。0077再度、クラウドコントローラ302を参照すると、自動審査ルールが310に示される。自動審査ルール310は、クラウドアプリケーションプロファイルステータスが変更されるときに検査される特定のルールに向けられる。自動審査ルール310はシステムについて構成され、通例では、クラウドマネージャだけがこれらのルールを変更することができる。自動審査ルール310は、好ましくは、クラウドアプリケーションプロファイルに行われるあらゆる変更に適用されるルールのセットを含む。アラートは、この自動審査ルールに不合格になる度に発生される。自動審査ルール310について、図23Aおよび23Bに関して更に詳細に説明する。0078クラウドコントローラ302は、312においてプロビジョニングサービスを示す。プロビジョニングサービス312は、クラウドコントローラのルールエンジンによって発行される展開に関連したコマンドを実行する役割を果たす。プロビジョニングサービス312は、クラウドアプリケーションインスタンスを自動的に作成、シャットダウン、および再開することになる。ここでは、インスタンスは起動しているアプリケーションのシングルコピーとなる。プロビジョニングサービス312は、プロビジョニングの実施のために、プラットフォームインフラストラクチャと相互作用する。動作において、クラウドアプリケーションを起動する前に、プロビジョニングサービス312は、クラウドアプリケーションを起動し、そしてインフラストラクチャに提供するために必要となる資産を決定する。0079上記説明したプロビジョニングサービス312の特徴は、好ましい特徴だけである。プロビジョニングサービス312は、多かれ少なかれ上記説明した特徴を有することができ、そして、なおも本発明の範囲内にあるとすることができることを意図している。0080クラウドコントローラ302は、314においてモニタリングサービスを示している。モニタリングサービス314は、様々なクラウドアプリケーションの少なくとも動作上の性能についての情報をキャプチャする。アプリケーションコントロールパネルおよびダッシュボードを通じたユーザインターフェイスが、このキャプチャした情報を彼/彼女のクライアントデバイス上のシステムユーザに可視なものとする。さらに、情報は、ゾーンによって可視なものにすることができる。ゾーンは認可されたユーザによって作成され、本発明の目的を達成するために、ゾーンは予め決められたコンピュータのグループとして定義される。企業または他のタイプのグループ化の分類によって、このようなコンピュータは、地域的にグループ化することができる。このように、ゾーンは、例えば、展開、システムテスト、システムユーザによる受け入れ試験および製造のような環境の隔離のためのクラウドのセグメントを分離して、区別する手段となり、異なる物理位置およびデータセンタを識別して、素早い災害救助を可能とする。0081モニタリングサービス314はまた、認可されたユーザが、クラウドサーバ構成をゾーンによって詳細フォーマットで閲覧し、クラウドアプリケーションがどのようにゾーンまたはユーザが定義した基準によって用いられているかを示すトランザクションのリストを閲覧することを許可する。さらに、モニタリングサービス314は、認可されたユーザが、プライベートクラウドに関して特定クラウドユーザが何をしてきたかについて示す活動ログを閲覧することを許可する。認可されたユーザはまた、クラウドに関する物理マシン仮想マシン上のデータ、およびSLO違反に関するデータのグラフィカル表現を閲覧することもできる。モニタリングサービス314は、認可されたユーザが、プライベートクラウドに格納されるクラウドアプリケーションに関する情報を閲覧し、現在、アクティブ状態であるクラウドアプリケーションに関する情報を閲覧し、クラウドアプリケーションに関して履歴データを閲覧すること許可する。さらには、モニタリングサービス314は、認可されたユーザがSLO閾値を設定および更新し、SLO統計情報を精査し、そして、どのようなエラーがクラウドアプリケーション内で発生しているかに基づきアクションすることを許可する。0082上記説明したモニタリングサービス314の特徴は、好ましい特徴だけである。モニタリングサービス314は、多かれ少なかれ上記説明した特徴を有することができ、そして、なおも本発明の範囲内にあるとすることができることを意図している。0083クラウドコントローラのアラートサービス316は、開発および展開プロセスにおけるクラウドアプリケーションのステータス変化を示すために生成される。アラートサービス316によって発生するアラートは、自動審査ルールに関連付けられる。アラートは、情報、警告、エラーおよび致命的のアラートとして分類される。クラウドアプリケーションの開発において、クラウドアプリケーションおよび承認者クラウドマネージャの開発者は、クラウドアプリケーションプロファイルステータスのあらゆる変化と関連したアラートをビューすることができる。展開プロセスにおいて、すべてのアラートは、クラウドマネージャによる承認を必要とする。しかしながら、クラウドマネージャは承認者について1つ以上のレベルを含むことができ、このことがなおも本発明の範囲内にあるものとも理解される。0084クラウドマネージャは、精査後にアラートを受理し、または拒否することができる。クラウドマネージャがそのアラートを受理することを選択する場合、クラウドアプリケーションは前進することになる。しかしながら、クラウドマネージャがアラートを拒否する場合には、クラウドアプリケーションプロファイルのステータスを下書き中に設定することによって、クラウドアプリケーションを後方に移行することになる。その理由は拒絶されたからである。0085アラートサービス316は、認可されたユーザが、ゾーンによってクラウドアプリケーションについてのプロファイル変更のアラートを構成することを許可する。例えば、クラウドアプリケーションが拡大したとき、所定の数の健康状態検査が所定の時間量において不合格となったとき、またはSLO違反が平均を上回ったときに、アラートをアラートサービス316によって送信することができる。アラートは、手動で、または所定の条件下例えばeメールによるでは自動的に発出することができる。自動審査ルールに関するアラートは、図23A、23Bおよび32に関してこれよりより詳細に説明する。0086上記説明したアラートサービス316の特徴は、好ましい特徴だけである。アラートサービス316は、多かれ少なかれ上記説明した特徴を有することができ、そして、なおも本発明の範囲内にあるとすることができるものと意図している。0087クラウドコントローラ302が有するSLOによる監視および遵守サービス318は、認可されたシステムユーザが、個々のクラウドアリケーションにより、またはゾーンにより、すべてのSLO違反の概要をビューすることができる。SLO監視遵守サービス318はまた、認可されたシステムユーザが要約の評価のために個々の違反をビューすることを許可する。さらに、SLO監視遵守サービス318は、認可されたシステムユーザが個々のトランザクション違反のログをビューすることを可能にする。なおもさらに、SLO監視遵守サービス318は、認可されたユーザが、ユーザ、ゾーン、クラウドアプリケーション、ウェブサービスその他所定の基準による違反をフィルタリングすることを許可する。0088上記説明したSLO監視遵守サービス318の特徴は、好ましい特徴だけである。SLO監視遵守サービス318は、多かれ少なかれ上記説明した特徴を有することができ、そして、なおも本発明の範囲内にあるとすることができるものと意図している。0089クラウドコントローラ302のログ走査サービス320は、認可されたシステムユーザがクラウドドアリケーション、インスタンス、仮想マシンにおけるハイパバイザ、その他のクラウド要素に関係する行動をビューすることを許可する。ログ走査サービスを用いると、認可されたシステムユーザは、いかなるクラウドプリケーションまたはクラウドコンポーネントのオンデマンドのログ走査をも要求することができる。さらに、ログ走査サービス320を用いると、認可されたシステムユーザは、展開されたクラウドアプケーションに関係する行動をビューすることができる。0090スレッドアナライザサービス322は、認可されたシステムユーザが、起動しているクラウドアプリケーションに関係する特定ノードに関し、プライベートクラウド内で行うトランザクションをビューすることを許可する。0091トランザクションブラウザ323は、認可されたシステムユーザがユーザ、ゾーン、クラウドアプリケーション、ウェブサービス、その他の所定の基準によるトランザクションをフィルタリングすることを許可する。トランザクションブラウザ323は、共にグループトランザクションに対し認可されたユーザが、マクロ挙動を理解し、クラウドアプリケーションおよびゾーンによる時間統計情報をビューし、現在におけるクラウドアプリケーションおよびゾーンについての応答時間統計情報を、通例のクラウドアプリケーションおよびゾーンについての応答時間統計情報と比較することを許可する。0092上記説明したスレッドアナライザサービス322およびトランザクションブラウザ323の特徴は、好ましい特徴だけである。スレッドアナライザサービス322およびトランザクションブラウザ323は、多かれ少なかれ上記説明した特徴を有することができ、そして、なおも本発明の範囲内にあるとすることができるものと意図している。0093クラウドスタック324は、プライベートクラウドについてのソフトウェアスタックを含む。クラウドスタック324は、オペレーティングシステムソフトウェア326を含み、好ましくはLinux登録商標ソフトウェアである。さらに、クラウドスタック324は、仮想マシンのオペレーティングソフトウェア328であり、クラウド内で起動している仮想マシンが用いるためのものである。仮想マシンは、ハイパバイザによって管理される。好ましくは、このソフトウェアは、サンマイクロシステムズ社/オラクル社からのJava登録商標開発キットJDKソフトウェアである。0094クラウドスタック324は、ウェブサーバソフトウェア330を含み、このウェブサーバソフトウェア330は、好ましくはApacheソフトウェア財団によるApacheWebServerソフトウェアである。クラウドスタック324はまた、アプリケーションサーバソフトウェア332も含む。好ましくは、アプリケーションサーバソフトウェアは、Tomcatサーブレットコンテナを含むJBossソフトウェアである。JBossソフトウェアはRedHat社によるものであり、TomcatサーブレットコンテナソフトウェアはApacheソフトウェア財団によるものである。0095クラウドスタック324は、ネットワークセキュリティソフトウェア334を含み、好ましくはIrdetoB.V.によるクロークウェアCloakwareソフトウェアである。クラウドスタック324の次のソフトウェアはウェブアクセス管理ソフトウェア336であり、好ましくは、ComputerAssociates社によるサイトマインダSiteMinderソフトウェアである0096クラウドスタック324はデータベースアクセスドライバ338を含み、好ましくはJDBCドライバである。クラウドスタック324はまた、クラウドアプリケーションビルダランタイムソフトウェア340も含み、これは、プライベートクラウドにおいて展開されることになるクラウドアプリケーションフレームワークソフトウェアである。0097最後に、クラウドスタック324は、サードパーティのライブラリ342を含む。ライブラリの数として、このような1つ以上のサードパーティライブラリを含むことができ、なおも本発明の範囲内にあるものとすることができる。0098サービスレジストリ345は、先にも説明したが、プライベートクラウドにおいて展開されるクラウドアプリケーションについての少なくともウェブサービスのレジストリを含む。サービスレジストリは、プライベートクラウド内で開発されたクラウドアプリケーションを展開するために、クラウドコントローラ302およびクラウドスタック324と協働する。0099好ましくは、クラウドコントローラ302は、上記説明したサービスを含み、クラウドスタックは、上記説明したソフトウェアスタックを含み、これらは、クラウドアプリケーションフレームワークと共にランタイムコンポーネントを形成する。ラウドアプリケーションフレームワークは、レバレッジされて、プライベートクラウドにおける展開用にクラウドアプリケーションを用意するために、クラウドアプリケーションをビルドする。クラウドコントローラ302およびクラウドスタック324に関し、特定のコンポーネントについて、上記のように特定してきた。しかしながら、多かれ少なかれ、これらのコンポーネントはクラウドコントローラ302およびクラウドスタック324を形成し、これらはなおも本発明の範囲内にあるものと理解される。0100クラウドアプリケーションビルダ350は、本発明のプライベートクラウドの展開のためのクラウドアプリケーションおよびウェブサービスを開発するのに用いる。クラウドアプリケーションビルダ350は、サービス開発ツールキット352を含み、主に、プライベートクラウド内で展開される、クラウドアプリケーションのためのウェブサービスの開発用に用いられる。このサービス開発ツールキットは、ウェブサービス、およびクラウドアプリケーションフレームワークに従って開発されるクラウドアプリケーションについてのユーザインターフェイスの開発時に少なくとも用いられるツールを含む。0101クラウドアプリケーションビルダ350のクラウド開発ツールキットCDT354は、プライベートクラウドにおいて展開されることになるクラウドアプリケーションに関連付けられたユーザインターフェイスの開発用のものである。0102クラウドアプリケーションビルダ350は、ウェブアプリケーションで開発するためのソフトウェア356を含む。好ましくは、アプリケーション開発ソフトウェア356は、Eclipse財団によるEclipseであり、Google社によるGoogleウェブツールキットGWTに加えて、アプリケーション開発用の統合開発環境IDEを提供する。0103クラウドアプリケーションビルダ350は、試験ソフトウェア358を含み、好ましくは、JUnit.orgによるJUnitソフトウェアである。最後に、クラウドアプリケーションビルダ350は、ウェブサーバサーブレットソフトウェア360を含み、クラウドにおける展開のために開発されているクラウドアプリケーションについてのウェブサーバのための動的コンテンツを生成するために用いられる。好ましくは、ウェブサーバサーブレットソフトウェアは、ApacheSoftware財団によるApacheTomcatである。0104図4を参照する。全般的に400において、本発明のプライベートクラウドコンピューティングシステムのコンポーネントについての論理構造の代表的な図を示している。ユーザインターフェイス402は、クライアントデバイスのユーザインターフェイスである。インタフェースは、ダッシュボード406を含むことになるアプリケーションコントロールパネル404を含む。代表的なアプリケーションコントロールパネルが図15に示され、代表的なダッシュボードが図24に示される。0105アプリケーションコントロールパネル404は、開発者、クラウドアプリケーションの管理者、クラウドアプリケーションの所有者、ソフトウェア品質保証SQA、システムユーザその他の者が、クラウドにおいてクラウドアプリケーションをビュー、使用および操作することを可能にする。ダッシュボード406により、認可されたユーザがインフラストラクチャコンポーネントを管理することを可能にする。ユーザインターフェイス402は、クラウドアプリケーションおよび関連する情報、ならびにCLDB410に格納された他のデータおよび情報にアクセスするためにCLDB410に双方向に接続される。0106ユーザインターフェイス402はまた、クラウドコントローラにメッセージを送信するために、クラウドコントローラ408にも接続する。好ましくは、これらのメッセージは、特定のクラウドアプリケーションおよびウェブサービスにアクセスするための要求、およびSLOモニタリングを含むことになるがこれに限定されない。0107eSFプロキシ412は、eSFデータベース413と共にセキュリティをクラウドに提供する。eSFプロキシ412およびeSFデータベース413は、データグループ、機能グループおよびユーザ役割に基づいてクラウドアプリケーションおよびウェブサービスアクセスにパーミッションを提供する。データグループ、機能グループおよびユーザ役割は、図11~14に関してより詳細に説明する。0108パーミッションは、クラウドにおいて、ユーザがクラウドにおいて特定のクラウドアプリケーションおよびウェブサービスにアクセスすること、ユーザが特定の機能、例えば、承認の付与、クラウドアプリケーションプロファイルの変更、またはCLDB410からのクラウドアプリケーションの削除を実行できることを含むが、これに限定されない。さらには、eSF412/413は、セキュリティインフラストラクチャを提供することができる。セキュリティインフラストラクチャは、プライベートクラウドにおいて起動されるクラウドアプリケーションについてのセキュリティ要件の全てを、プライベートクラウドそれ自体のセキュリティ要件と同様に、収容して満たすことになる。セキュリティeSFの少なくとも一部は機能レベル権限を付与し、eSFはまた、このようなセキュリティ付与をサポートするデータも収容する。上記説明したパーミッションが網羅的ではなく、追加のパーミッションがある場合もあり、また、これが本発明の範囲内にあるものと理解される。0109サービスレジストリ415は、クラウドコントローラ408に接続する。サービスレジストリ415は、これより詳細に説明するが、開発者がプライベートクラウド用に登録されるウェブサービスについて検索し、そして、それらに関する詳細な情報をビューすることを可能にする。0110ユーザインターフェイス402からの特定のクラウドアプリケーションまたはウェブサービスについての要求を処理する際に、クラウドコントローラ408は、要求をプロビジョニングサービス414に送信する。プロビジョニングサービス414は、それらが制御するハイパバイザおよび仮想マシンに提供して、クラウドにおいてクラウドアプリケーションを起動するクライアントデバイスの必要性に順応する。図4に示すように、ハイパバイザ420は、ウェブサーバインスタンス422、アプリケーションインスタンス424およびアプリケーションインスタンス426を管理する。これらのソフトウェアインスタンスの各々は、ハイパバイザ420によって監督される仮想マシンインスタンスにおいて起動している。本発明のプライベートクラウドコンピューティングシステムは、仮想マシンインスタンスにおいて起動しているクラウドアプリケーションおよびウェブサーバのインスタンスを制御する1つ以上のハイパバイザを有することができ、これはなおも本発明の範囲内にあるとすることができるものである。0111図4を参照すると、416は、ビルド.xmlを示す。ビルド.xmlは、アプリケーションビルドフレームワークに関連しており、開発者がクラウドアプリケーションビルダ350図3およびそれに関連するランタイムライブラリを用いてクラウドアプケーションをビルドすることを可能にする。このようなクラウドアプリケーションがビルドされると、クラウドアプリケーションに関連したバイナリがバイナリビルダ418に提供される。バイナリは、次いで、CLDB410に記憶するために送信され、ハイパバイザに提供するためにプロビジョニングサービス414に提供される。その結果、バイナリは、クラウドアプリケーションを起動するためのクライアントデバイスを含むシステムユーザ、およびクラウドアプリケーションを操作するためのパーミッションを有する認可されたシステムユーザに利用可能となる。0112モニタリングサービス428は、健康状態検査サービス430およびログ走査サービス432を含む。健康状態検査サービス430は、プライベートクラウドの物理リソースおよび仮想リソースをモニタリングする。ログ走査サービス432は、SLO違反を探しているクラウドアプリケーションおよびクラウドインフラストラクチャのコンポーネントについてのログの自動およびオンデマンドの走査を実行する。健康状態検査サービス430およびログ走査サービス432によって測定される情報は、CLDB410に格納される。0113クラウドアプリケーションの開発を説明する前に、各クラウドアプリケーションのユーザインターフェイス管理は、図5を参照して説明される。0114図5は500において、プライベートクラウド上のクラウドアプリケーションについてのフォアグラウンドタスク、データストレージおよびバックグラウンドタスクのユーザインターフェイス管理のための代表的な図を示している。サービスコンシューマ502は、クラウドの内側または外側にいるサービスのコンシューマである。プライベートクラウド外側のサービスコンシューマの例には、504で示されるようなクライアントデバイスで起動しているサービスを含む。0115データアクセス506は、508および510で示されるようなフォアグラウンドサービスに向けられており、それらはユーザインターフェイスのために作成され、プライベートクラウドにアクセスする。例えば、開発者であれば、この目的のために、HTML、AdobeFlash、AJAXその他ツールでの軽量ユーザインターフェイスのコンポーネントを作成ことができるであろう。しかしながら、他のサービスを作成することができ、なおも本発明の範囲内にあるとすることができるものと理解される。0116データストレージ512は、オンライントランザクション処理OLTPデータに向けられ、それはウェアハウスデータとは別個のアプリケーションデータベース214に格納される。したがって、OLTPデータは、データベーストランザクションを実行することと関連している。OLTPの例は、データストレージ512が有する514および516に示される。データストレージ512において、メインフレーム顧客情報処制御システムCICS514は、本発明によるデータストレージのために、従来のCICS機能をレバレッジする。データストレージ512はまたRDBMS516を示しており、リレーショナルデータベース管理システムである。本発明の目的のために、RDBMSは、本発明によるデータストレージのために、従来のリレーショナルデータベース管理機能をレバレッジする。しかしながら、本発明のシステムが他のOLTPデータコンポーネントを含むことができ、なおも本発明の範囲内にあるとすることができるものと理解される。0117バックグラウンド518を使用して、ジョブ520および522のようなバックグラウンドプロセスを作成し、ウェアハウスデータを管理する。ジョブの作成について、これよりより詳細に説明する。0118eSF526は、先に述べたように、セキュリティをクラウドに提供する。eSF526は、図4の412および413で示されるものを含む。ユーザインターフェイスを通じて、eSF526は、権限の施行に向けられる。このように、データアクセス506およびバックグラウンド518に関して、eSF526は、ユーザ役割を割り当てることにより、クラウドアプリケーションおよびウェブサービスにアクセスして利用するための認可について制御する。ユーザ役割は、好ましくは、企業内において格納したデータを機能と関連付けることによって工夫される。0119サービスレジストリ524は、プライベートクラウドのサービスレジストリに関連する。サービスレジストリは、開発者がウェブサービスを検索し、それらに関する詳細情報をビューすることを可能にする。したがって、ユーザインターフェイスは、再利用できるウェブサービスについてサービスレジストリを閲覧するために用いることができる。さらに、サービスレジストリ524は、プライベートクラウドにアプリケーションおよびウェブサービスを持ち込み、そして、それらのSLOの遵守および利用をモニタリングするという機能を実行する。サービスレジストリは、図6でより詳細に説明する。0120図6は、全般的に600において、サービスレジストリ524を示す本発明のプライベートクラウドコンピューティングシステムのアーキテクチャの代表的な図を示している。図6において、プロビジョニングサービス312、モニタリングサービス314、SLO監視遵守サービス318、ログ走査サービス320、およびトランザクションブラウザ323図示せずは、図3に示し先に説明したクラウドコントローラ302のコンポーネントである。ユーザインターフェイス406は、図4に示しており、先に説明したものである。トランザクションブラウザ323は図6に示すことができ、なおも本発明の範囲内にあるものと理解される。0121図6の中央部には、審査監跡608、データ保全性610、セキュリティ612およびスケジューラ614を含む持続状態606がある。審査追跡608は、クラウドアプリケーションに関する変更追跡のためにある。データ保全性610は、データベース内でのデータ保全性を確実にするために制約をアプリケーションデータベースに課すためにある。スケジューラ614は、ジョブをスケジューリングするためにある。セキュリティ612は、eSFアクセスセキュリティである。0122ルールエンジン602は、プライベートクラウドクラウドコントローラの一部であり、クラウドマネージャによって作成され、そして、プライベートクラウドの範囲内で起動しているクラウドアプリケーションの動作に対するルールを含む。これらルールは、例えば、拡大または縮小ルール、アラートルール、またはゾーンルールを含む。ルールエンジンは、他のルールを含むことができ、なおも本発明の範囲内にあるものとすることができる。0123再度図6を参照すると、構成要素の各々は、メッセージング環境604内において接続されることが示されている。これにより、さまざまな構成要素間での通信を可能にする。0124図6のサービスレジストリ524を参照すると、サービスレジストリが少なくとも4つのサービスを提供することを意図している。しかしながら、4つより多いまたは少ないものを提供することができ、なおも本発明の範囲とすることができるものと理解される。0125サービスレジストリ524が好ましくは提供する第1のサービスは、認可された開発者がウェブサービスに関するメタデータを作成および操作するためのアプリケーションプログラミングインタフェースAPIをサービス提供するためのものである。このことは、認可されたユーザが、機能および機能グループに関するメタデータおよび情報を作成または更新することを可能にする。APIはこの情報を参照する。これは、好ましくはサービスインベントリファイルにおけるウェブサービス詳細である。0126第2のサービスは、検索カタログサービスである。検索カタログサービスは、認可されたシステムユーザが、サービスレジストリのカタログ検索ページ上でウェブサービスを検索および発見することを可能にする。0127サービスレジストリ524の第3のサービスは、閲覧カテゴリサービスである。このサービスは、認可されたシステムユーザが、クラウドアプリケーション機能グループからサービスレジストリのアプリケーションブラウザページ上で構成ウェブサービスのリストにドリルダウンすることを可能にする。0128サービスレジストリの第4のサービスは、ウェブサービス詳細のサービスである。このサービスは、メタデータおよび他のデータを提供し、認可されたシステムユーザが、図26に示したユーザインターフェイスにおいてウェブサービス詳細ダイアログボックスの様々なタブにアクセスすることができる0129図7を参照する。全般的に700において、代表的なサービスレジストリアーキテクチャが示されている。サービスレジストリ524図5は、クラウドコントローラ408図4に接続する。図示のように、クラウドコントローラ408およびサービスレジストリ524は、プライベートクラウド内にある。また、サービスメタデータレポジトリ704メタデータデータベースであるは、クラウドの外側からサービスレジストリ524に接続される。サービスメタデータレポジトリ704はメタデータデータベースである。さらに、eSF412/413図4はクラウドの外側からクラウドコントローラ408に接続する。図示していないが、eSFプロキシ412は、eSFデータベース413とクラウドコントローラ408の間に配置されるが、プライベートクラウド内にある。0130クラウドコントローラ408はブラウザクライアントユーザインターフェイス402に接続する。ブラウザクライアント402がユーザ706にコンテンツを提供し、それらがアクセスサービスレジストリ524にアクセスするのを許可する。0131eSFのサービスレジストリ524との統合は、クラウドアプリケーション、ウェブサービス、およびボタンおよびメニューオプションのようなユーザインターフェイスアイテムへアクセスが認可されたシステムユーザのみに制限されることを保証する。これは、開発者およびユーザによるアクセス権を決定する、注意深く定義された役割に基づいている。このアクセス制御の例をこれから詳細に説明する。0132クラウドにおいて開発されるクラウドアプリケーションのコンポーネントは、ユーザインターフェイス、潜在的な再利用を提供する登録済みのウェブサービス、再利用可能なバックグラウンドジョブについてのレジストリを含む。プライベートクラウドでの展開のためのクラウドアプリケーションを作成している開発者はまた、ウェブサービスおよびジョブに関するビジネスルールおよび/またはJava登録商標クラスを作成することができる。一旦クラウドアプリケーションのコンポーネントが作成されると、それらはCLDB410に格納することができる。これらのコンポーネントの作成は、プライベートクラウド環境内で行うことができる。0133ウェブサービス、ユーザインターフェイスコンポーネント、およびバッチジョブを開発する際、クラウドアプリケーションに関して開発者が行う要件分析があり、彼/彼女のアプリケーション、クラウドアプリケーションのタスクを実現することが必要とされるユーザインターフェイスコンポーネント、および、クラウドアプリケーションについてのデータを格納することが必要とされるバッチジョブについて実施するウェブサービスを特定する。これらタスクを実行する際には、クラウドコントローラにおいて、開発者は、サービスレジストリ内で登録済みサービスを閲覧および参照することができ、いずれが彼/彼女のクラウドアプリケーションで再利用できるかについて理解する。0134本発明のシステム及び方法によれば、ウェブサービスがクラウドアプリケーションについて作成される前に、開発者はクラウドアプリケーションコードおよびその拡張を含むアプリケーション識別子を取得しなければならない。これは、クラウドアプリケーションについてのクラウドアプリケーションプロファイルの作成を含む開発プロセスを通じてアプリケーションを追跡することになる。好ましくは、クラウドアプリケーションがプライベートクラウド環境へさらに移行することができる前に、クラウドアプリケーションのソースコードはソースコード制御システムに置かれる。一旦このタスクが実行されると、クラウドアプリケーションおよびそのコンポーネントはクラウドアプリケーションビルダ350図3を使用して開発することができる。0135特定のクラウドアプリケーションに関し、ウェブサービスコンポーネントの開発は、開発者によるサービス定義用のメタデータの作成およびクラウドアプリケーション用のサービスインベントリファイルの完了を含む。各クラウドアプリケーションは、それに関連付けられるサービスインベントリファイルを有することになり、全メンバのウェブサービスにおける機能グループを記述する。クラウドコントローラ302図3は、このデータを用いて、クラウドアプリケーションが展開される際に自動的にサービスレジストリを更新する。0136好ましくは、開発業者は、フォアグラウンドプロセスおよびバックグラウンドプロセス図5参照用に別々の.warウェブアーカイブファイルをビルドし、クラウドアプリケーションに関連付けられたバイナリをバンドルし、そして、クラウドアプリケーションプロファイルを作成する。フォアグラウンドプロセスと関連付けられるバイナリは、ウェブサービスおよびユーザインターフェイスコンポーネントに関係する。バックグラウンドプロセスと関連付けられるバイナリは、ジョブに関係する。しかしながら、開発者がクラウドにおいて使用するためのウェブサービスを展開できないうちに、適切な承認を得なければならない。この承認はサービスレジストリの更新およびeSFに格納される関連するeSF役割の調整をトリガする。開発におけるこのプロセスについて、図8に視覚的に示す。0137図8は、全般的に800において、プライベートクラウドにおいて展開されることになるクラウドアプリケーションについてのウェブサービスコンポーネントの開発のためのプロセスの代表的な図を示している。クラウドアプリケーションの開発および適用のプロセスの一部として、開発者801は、804において、クラウドアプリケーションと関連しているウェブサービスを開発することになる。ウェブサービスが開発される際、806において、開発者はサービスインベントリファイルを更新するために808で用いられることになるサービス定義のメタデータを更新することになる。これにより、クラウドアプリケーション開発と関連したウェブサービス開発の一部が完成する。0138808におけるサービスインベントリファイルの更新に続き、開発者は、810においてフォアグラウンドプロセスおよびバックグラウンドプロセスのためのアプリケーションバイナリファイルをビルドする。クラウドアプリケーションに関連付けられたバイナリはバンドルされる。そして、812において、ウェブサービスを展開するための要求は、クラウドアプリケーションのために作成されてきたクラウドアプリケーションプロファイルを用いて行われる。この要求は、クライアントデバイスのユーザインターフェイスを用いている開発者によって、クラウドコントローラ814に送信される。816において、適切に認可されたユーザによる承認が要求される。承認が拒否される場合には、通知が適切なメッセージングを通じて開発者に送り返される。しかしながら、承認が付与される場合、818においてウェブサービス用のサービスレジストリに送られる更新がある。また、820において、eSFの更新が、ウェブサービスの利用のための適切なパーミッションとともにある。これに続いて、822において、ウェブサービスがプライベートクラウド内にライブで提供される。好ましくは、プライベートクラウドは、ウェブサービスが展開される際、サービス定義中のメタデータおよびサービスインベントリファイルを用いて、サービスレジストリを自動的に更新する。0139先に述べたように、ユーザインターフェイスはまた、クラウドアプリケーションのコンポーネントでもある。クラウドアプリケーションビルダ350は、CDT354およびユーザインターフェイス上の適切なパネルを通じて、特定のクラウドアプリケーションと関係付けられることになるユーザインターフェースコンポーネントを開発する。このツールキットは、開発者がクラウドアプリケーションに関連付けられたウェブサービスをユーザインターフェイスに拡張することができる。好ましくは、ツールキットは、ユーザインターフェイス開発に基づくFlashおよびMicrosoftOfficeをサポートすることになる。0140プライベートクラウドにおいて展開されるクラウドアプリケーションは、非クラウドのウェブページに組み込むことができる。これが行われると、クラウドアプリケーションのすべての機能性は、ポップアップとしてユーザインターフェイスを有するそのウェブページからアクセスすることができるが、ウェブサービスはプライベートクラウドにおいて起動している。0141クラウドアプリケーションの最後のコンポーネントは、バックグラウンドジョブである。これらのジョブは、バックグラウンドで起動し、クラウドおよび他のデータベースに情報を格納するバッチジョブである。クラウドアプリケーションのバックグラウンドジョブは、異なるマシン上に配置することができる2つのインスタンスにおいて起動することができる。例えば、これらのジョブは、2つの別々のデータセンタにおいてアクティブ-アクティブに起動される。バックグラウンドジョブは、クラウドアプリケーションサーバがフォアグラウンドでスレッドをハングアップすることなくスケーラビリティをハンドルすることを支援する処理を含むことができる。0142図9を参照すると、全般的に900において、代表的な図が、バックグラウンドジョブ開発およびハンドリングのために示されている。図9において、外部サービス902は、バックグラウンドクラウド909に接続する。外部サービス902は、RDBMS904、メッセージング906およびファイル転送サービス908を含む。これらの各々は、他の図に関して先に述べたものであり、このように、これらの説明はここでも同等であり参照によりここに組み込むものとする。0143バックグラウンドクラウド909は、910、916および922において3つの代表的なクラウドアプリケーションインスタンスを含む。アプリケーションインスタンス910は、バッチジョブ912および914を示す。アプリケーションインスタンス916は、バッチジョブ918および920を示す。また、アプリケーションインスタンス922は、バッチジョブ924および926を示す。スケジューラ図示せずは、ジョブを管理して、図9に示すような複数のアプリケーションインスタンスをハンドルする。バックグラウンドクラウド909で示されるバッチジョブは、複数のジョブを収容できる別々の.warファイルにバンドルすることができる。これらのジョブは、次いで、CLDB410に格納することができ、適切なクラウドアプリケーションに関連付けることができる。0144先に述べたように、eSFは、クラウドアプリケーションセキュリティをハンドルする。好ましくは、クラウドアプリケーション開発者は、eSF役割をセットアップし、保護されるアイテムをセキュリティ保護するために、eSFプロキシAPIを使用することになる。eSFセキュリティの使用については、これより図10を参照してより詳細に説明する。0145図10を参照する。全般的に1000において、eSFセキュリティを実施するための代表的な図を示している。システムユーザがクラウドアプリケーションまたはウェブサービスアクセスを要求するときに、サービスコンシューマ1002として示されるシステムユーザは認可されなければならない。このように、サイトマインダSiteMinder1004は、eディレクトリeDirectory1006に問い合わせることにより、システムユーザ認可を検査する。認可が確認される場合には、クラウドアプリケーションと関連して要求されたウェブサービス1008は、eSFプロキシ1010と通信し、eSFデータベース1012内のシステムユーザのeSF権限を検査する。これらの権限は、システムユーザがサービス要求において特定の機能を実行するよう認可されているかどうかを含むことになる。システムユーザが認可される場合には、システムユーザは、1014において、ウェブサービスを通じてデータベース情報にアクセスすることになる。システムユーザが認可されない場合にはアクセスが拒否されることになる。0146クラウドアプリケーションおよびウェブサービスへのアクセスが役割に基づくことができると先に説明してきた。本発明の目的のために、機能グループは、認可されたシステムユーザが当該システムユーザのジョブディスクリプションに関係する如何なるデータに対する動作を実行するのを可能にする機能のコレクションである。好ましくは、機能グループは、クラウドアプリケーション開発者によって定義される特定データへのアクセス権を有することになる。機能グループおよび機能は、サービスインベントリファイルで定義され、サービスレジストリおよびeSFデータベースを更新することになるアプリケーションバイナリファイルの一部として展開される。機能グループの形成およびこれら機能グループがアクセス権を有するサービスの例を図11に示す。0147図11は、全般的に1100において、クラウドアプリケーションに関係した機能グループ、およびこれらのグループの各々がアクセス権を有するサービスの図を示している。クラウドアプリケーションブロック1102において、マスタフィーダと名づけられたクラウドアプリケーションを示す。マスタフィーダクラウドアプリケーション1104の開発者は、機能グループブロック1106において2つの機能グループを定義している。1108における第1の機能グループは、管理機能によって定義され、1110における第2の機能グループは、閲覧機能によって定義される。0148サービスブロック1112において、マスタフィーダクラウドアプリケーション1104について登録されたサービスが示される。1108における第1の機能グループに関して、当該機能グループが、791002、791003および791004として登録されたサービスを実行するのを許可する。これにより、第1の機能グループがマスタ作成、フィーダ追加、およびフィーダ削除のそれぞれを許可することになる。01491110における第2の機能グループに関して、この機能グループが、792001および792002として登録されたサービスを実行するのを許可する。これにより、第2の機能グループが、マスタ発見およびフィーダ取得のそれぞれを許可することになる。第2の機能グループは、第1の機能グループ用に認可されるサービスにアクセスするのは許可されないことに留意されたい。0150機能グループの定義は、クラウドアプリケーション役割に基づく。図12を参照して、これら役割が機能グループを定義する方法について説明する。0151図12を参照する。全般的に1200において、機能グループを定義するクラウドアプリケーション役割の使用について示している。クラウドアプリケーションブロック1202は、マスタフィーダと名づけられたクラウドアプリケーションを示す。クラウドアプリケーション役割テンプレートブロック1206では、アプリケーション開発者は、マスタフィーダクラウドアプリケーションと関連付けられた役割を定義する。これらの役割は、1208におけるマスタフィーダ管理者および1210におけるマスタフィーダユーザである。好ましくは、クラウドアプリケーション役割テンプレートは、システムユーザが実行しなければならない機能を評価し、機能グループ内のこれらの機能を集約し、そして、システムユーザによって操作することができる全データを収容するデータグループを識別することによって、構築される。0152図12に示すように、機能グループブロック1214において、1208で示されるマスタフィーダ管理者の役割は、2つの機能グループに分けることができる。第1の機能グループは、システムユーザが1216における管理機能を許可されるものであり、また、第2が1218における閲覧機能のみを許可されるものである。0153先に述べたように、クラウドアプリケーションの開発者によっても定義されるクラウドアプリケーション役割はまた、1210においてマスタフィーダユーザも提供する。この役割に割り当てられる機能グループは、1220における閲覧機能を許可される。これら閲覧機能は、マスタフィーダ管理者とは同一または異なるものとすることができ、なおも本発明の範囲内にあるものとすることができる。0154クラウドアプリケーション役割テンプレートは、サービスインベントリファイルの一部となり、そしてクラウドアプリケーションがプライベートクラウドにおいて展開される際にeSFを更新する。0155図13は、全般的に1300において、図12に示される管理者役割についてのeSF権限マップを示している。機能ブロック1302では、機能グループのブロック1314における1316の第1の機能グループ、および1318における第2の機能グループに利用可能な機能を示す。図示のように、1316の第1の機能グループは、1304のマスタ編集、1306のフィーダ追加、および1308のフィーダ削除の機能を許可される。同じように、1318における第2の機能グループは、1310のマスタ閲覧および1312のフィーダ閲覧を許可される。0156役割ブロック1320では、1322の役割はABC社で管理者のためにあることを示す。データグループブロック1324では、管理者が1326でABC社のファンドに関するデータを受信することを示す。例えば、このファンドはミューチュアルファンドとすることができる。データブロック1328は、ABC社のファンドに関する特定のデータのレポジトリとすることができ、1330のABC1データ、1332のABC2データ、および1334のABC3データを含み、1322の管理者が1326においてデータグループのブロック1324でアクセス権を有することになる。マスタフィーダクラウドアプリケーションに関する権限マップを精査する際、機能グループに基づく制約がマップに従って施行される。0157図14は、全般的に1400において、図12に示したユーザ役割についてのeSF権限マップを示している。機能ブロック1402では、機能グループブロック1414における1416の第1の機能グループおよび1418の第2の機能グループに利用可能となる機能を示す。図示のように、1416の第1の機能グループは、1404のマスタ編集、1406のフィーダ追加、および1408のフィーダ削除という機能を許可される。同じように、1418の第2の機能グループは、1410のマスタ閲覧および1412のフィーダ閲覧という機能が許可される。0158役割ブロック1420において、1422における役割がABC社のシステムユーザのためのものであることを示す。データグループブロック1424では、システムユーザが1426においてABC社のファンドに関するデータを受信することを示す。そのファンドは、図13のようなミューチュアルファンドとすることができる。データブロック1428は、1430のABC1データ、1432のABC2データ、および1434のABC3データを含むABC社のファンドに関する特定のデータレポジトとすることができ、1422のシステムユーザが、1426においてデータグループブロック1424を通じてアクセス権を有することになる。マスタフィーダクラウドアプリケーションに関する権限マップを精査する際には、機能グループに基づく制約がこのマップに従って施行される。このように、役割ブロック1420における役割は、システムユーザのためだけであり、このシステムユーザは、機能グループブロック1414における1418で閲覧機能を許可されるだけである。この機能グループの一部として、システムユーザは、機能ブロック1402についての1410のマスタ閲覧およびの1412のフィーダ閲覧を許可されるだけである。0159先に図8を参照して、プライベートクラウドにおけるクラウドアプリケーションを開発および展開するためのプロセスについて説明した。そのプロセスについて、これより図15~22を参照してさらに詳細に説明する。0160好ましくは、プライベートクラウドにおけるクラウドアプリケーションを展開するための5つの主要なステップがある。このプロセスは、クラウドアプリケーションプロモーションプロセスと称することができる。この5つの主要なステップは、アプリケーションバイナリをバンドルして、このバンドルしたアプリケーションバイナリをプライベートプラウドにエクスポートし、プライベートクラウドにおいてクラウドアプリケーションを展開するためにクラウドアプリケーションプロファイルを作成および編集し、プライベートクラウドにおいてクラウドアプリケーションを展開するために適切な承認を取得し、ユーザ受け入れ試験UATにプロモートされることができように、アプリケーションについて認定されるビルドを実行し、そして、プライベートクラウドへのクラウドアプリケーションプロモーションのためにクラウドアプリケーションプロファイルのシステムプロパティを設定および変更することを含む。0161クラウドアプリケーションを開発DEV環境に展開してクラウドアプリケーションプロモーションプロセスを開始する前に、好ましくは、開発者は、アプリケーション用の先に述べたアプリケーション識別子を入手することになる。更に、開発者は、適切なクラウドコントローラアクセスeSF役割権限が開発者用にeSFにおいてセットアップされることを要求したことになり、その結果、開発者は、クラウドアプリケーションを展開するための適切な役割を有する。開発者は、クラウドアプリケーションビルダ350図3においてクラウドアプリケーションについてのビルドプロジェクトを作成し、クラウドアプリケーション上での適切な試験を起動させることになる。次いで、開発業者は、クラウドアプリケーションビルダにおいてクラウドアプロケーションをビルドすることになり、開発者は、プライベートクラウドにエクスポートするためにクラウドアプリケーションに関連付けられたバイナリをバンドルする準備を整える。0162一旦、上記のステップが達成されると、クラウドアプリケーションバイナリはバンドルされ、そして、クラウドコントローラは、プライベートクラウドにクラウドアプリーションと関連付けられた、承認された安全なウェブサービスをプロモートする。本発明によれば、バイナリバンドラは、概念実証POCproofofconceptおよびシステム統合SYSSystemIntegrationの展開についてビルドした後に、開発者のクライアントデバイスから呼び出すことができる。しかしながら、バイナリバンドは、UATおよび生産PROD展開のために、より高位レベルのビルドマシン、例えば、クリアケースビルダマシンその他、認定されたビルドマシンによって、呼び出すことのみができる。0163本発明の目的のために、POCおよびDEV展開において、開発者は.warファイルを彼/彼女のクライアントデバイスからビルドすることができる。SYSにおいて、UATにクラウドアプリケーションイメージをプロモートするために、好ましくは、認定されたマシンのような指定されたマシンからそれは行われる。そこでは、開発者はクリアケースClearCaseビルドスクリプトまたはほかの変更制御メカニズムを起動させることができる。0164UATおよびPRODの展開のためのクラウドアプリケーションは、ビルドからプライベートクラウドへ直接は行かない。開発者がUATのためのクラウドアプリケーションプロファイルを作成したとき、開発者は、認定されたビルドマシン上のSYSについてビルドされたクラウドアプリケーションを選ぶ。好ましくは、ここで、クリアケースビルドディスクリプションが起動することができる。PRODについて、開発者は、UATにプロモートされたクラウドアプリケーションを選ぶ。このように、これは、クラウドアプリケーションと同様に、UATおよびPRODに展開されるクラウドアプリケーションをメイクする。クラウドアプリケーションは、クラウドプロモーションプロセスにおいて先の環境で試験されている。ただし、アプリケーションプロモーションについての好ましい方法として上記説明してきたことについて、他の方法が可能であり、なおも本発明の範囲内にあるとすることができるものと理解される。0165先に説明した4つの展開環境についてこれからプロモーションプロセスの観点から説明する。何故ならば、これはクラウドアプリケーションプロファイルの作成に関係するからである。0166DEV-開発者がクラウドアプリケーションについて開発および試験を行った後に、彼/彼女はクラウドアプリケーションの.warファイルをプライベートクラウドにエクスポートすることができる。ユーザインターフェイスを使用している開発者は、ユーザインターフェイス上のアプリケーションプロファイルタブを選択することができる。クラウドアプリケーションの初期ステータスは、下書き中である。開発者は、適切な情報を、クラウドアプリケーションプロファイルを完成させるために提供し、それとの関連付けのためにクラウドアプリケーションを選択する。開発者は、次いで、ステータスを公開済みに変更する。開発者のクラウドアプリケーションは、適正レベルのクラウドマネージャによって承認を受けたDEV環境で起動することになる。0167SYS-DEVで起動しているクラウドアプリケーションだけが、SYSにプロモートされることができる。SYSにおいて、クラウドアプリケーションは、認定されたビルドマシン上、例えば、クリアケースビルドスクリプトを起動しているビルドマシン上でビルドすることができる。0168UAT-SYSで起動しているクラウドアプリケーションだけが、UATにプロモートされることができる。0169PROD-UATで起動しているクラウドアプリケーションだけが、PRODにプロモートされることができる。ここでは、このようなクラウドアプリケーションがプライベートクラウド上においてライブで起動されることになる。0170クラウドアプリケーションプロファイルを作成し、そして、クラウドアプリケーションのステータスを下書き中から公開済みに変更するための方法について、これから図15~22を参照して説明する。0171図15を参照する。全般的に1500において、代表的なクラウドアプリケーションコントロールパネルが、1502で示される。新しいアプリケーションプロファイルを生成するために、アプリケーションプロファイルタブ1504が活性化され、アプリケーションプロファイル追加タブ1506を有する下部画面を提供することになる。ステータスライン1508で見られるように、初期ステータスは常に下書き中である。新規追加ボタン1510が活性化されると、新規アプリケーションプロファイル追加ウィンドウ1600を表示する。0172図16を参照する。新規アプリケーションプロファイル追加1600において、クラウドアリケーションの名前が、名前フィールド1602に入力される。次いで、アプリケーションコードフィールド1604において、ボタンが選択されてドロップダウンリストを設け、特定のクラウドアプリケーションに割り当てられていた適切なアプリケーション識別子が選択される。プロファイルの残りを完成させることが、これから必要となる。0173第一に、アプリケーションのバージョンが、バージョンフィールド1606に入力される。次いで、ゾーン環境フィールド1608において、ボタンが選択されて、ドロップダウンリストを設け、展開のための適切な環境が選択される。同様に、全般的に1700において、ゾーンコードフィールド1610において、ボタンが選択されて、図17に示されるドロップダウンリストのようなドロップダウンリストを設ける。適切なゾーンコードが選択されると、ゾーンコードフィールド1610にデータを読み込む。0174次に、発効日および時間が発効日フィールド1612で選択される。将来日付の選択が承認プロセスが完了するのに可能であり、また、これは、プライベートクラウドがクラウドアプリケーションを起動開始する日付となる。発効日が承認なしで経過する場合、承認プロセスが終了しているときには、プライベートクラウドはクラウドアプリケーションの実行を開始することになる。失効日フィールド1614を完成させることができるがこれは任意である。0175コンテキストフィールド1616は、クラウドアプリケーションについてのコンテキストを含むことになる。例えば、このコンテキストフィールドは、httpCloudstatestreetcomApp1defaultのような完全な条件つきパスをクラウドアプリケーションに提供する。0176要求パターンフィールド1618において、サービス要求プレフィックスまたは他の文字が付加される。例えば、このフィールドで発見されるルーティングについてのサービス要求プレフィックスは、クラウドコントローラが提供する。0177アプリケーションイメージフィールド1620にデータを読み込むために、図18のイメージブラウザダイアログウィンドウ1800をオープンするボタン1622が活性化される。ここでは、適切なクラウドアプリケーションが選択される。1802において情報アイコンを選択することによって、図19の1900で示されるダイアログウインドウが表示される。ダイアログウインドウはクラウドアプリケーションの詳細を示す。一旦クラウドアプリケーションの詳細が正しいことが確認されると、関連イメージタブ1902が活性化され、図20の2000における表示ウィンドウをオープンすることになる。図20に示される表示ウィンドウの情報が検証された後に、図19に示されるイメージブラウザウインドウと併せてこのウィンドウを閉じる。次いで、図18の1804において選択されたイメージボタンが活性化され、そして、図16の1624での保存ボタンが活性化されて新規アプリケーションプロファイルを保存する。保存が終了すると、クラウドアプリケーションのステータスを下書き中に設定する。0178ステータスを下書き中から公開済みに変更するためには、図16のステータスフィールド1626のボタン1628を活性化することが必要となる。これには、図21の2100で示されるアプリケーション変更プロファイルステータス表示ウィンドウをオープンすることになる。新規ステータスフィールド2102において、2104のボタンが選択されて、ドロップダウンリストを設け、そして、適切なステータスが選択される。この例では公開済みである。0179次に、2106のビューアラートボタンが活性化され、図22に示すアラートダイアログウィンドウ2200がオープンされることになる。アラートが受理される場合には、2202の受理ボタンが活性化され、クラウドアプリケーションのステータスが公開済みに変更され、一旦すべての承認が得られたらプライベートクラウドにおいて始動することができる。しかしながら、アラートの性質のために2204の拒否ボタンが活性化されると、アプリケーションのステータスは公開済みに変更されることはなく、プライベートクラウドにおいて始動されないことになる。0180アラートについて、クラウドアプリケーションの開発および適用における使用に関して、全般的に説明してきた。これより、アラートについてさらに詳細に説明する。0181クラウドアプリケーションプロファイルが下書き中のステータスである間、クラウドアプリケーション開発者はクラウドアプリケーションプロファイルの変更を行うことができる。自動審査サービスは、クラウドアプリケーションプロファイルに対して行われるあらゆる変更に適用されるルールセットである。0182アラートは、不合格となったあらゆる自動審査に対して発生される。先に述べたように、アラートは、情報、警告、エラー、および致命的に分類される。好ましくは、開発者は、各クラウドアプリケーションプロファイルの変更と関連付けられたアラートを精査することになる。さらに、適切な承認者、クラウドマネージャは、それらがクラウドアプリケーションプロファイルと関連付けられた非INFOアラートであるときにはアラートを精査しなければならず、その後、クラウドアプリケーションは、プライベートクラウドへのライブでの提供に進むことができる。0183先に説明したように、承認者は、精査後にアラートを受理または拒否することができる。承認者がアラートを受理する場合、クラウドアプリケーションは開発および適用プロセスに前進する。しかしながら、承認者がアラートを拒否する場合には、クラウドアプリケーションは、クラウドアプリケーションプロファイルのステータスを拒否済みアラートの理由コードと共に拒絶済みに設定することによって後退する。発生したアラートは、電子メールまたは他のメッセージング方法により承認者に自動的に送信することができ、その結果、このようなアラートの発生に対してアラートされる。0184一般的には、自動審査メカニズムは、クラウドアプリケーションプロファイルにおける問題や課題を識別するためのものである。この自動審査はルールを含む。このルールは、検査した任意のルールが不合格となるときに、自動アラートを発生することになるルールを含む。自動審査ルールは、クラウドマネージャによって作成される。0185アラートは、クラウドアプリケーションプロファイルの問題および課題と関係している、そして、一旦発生すると、クラウドマネージャの適正レベルの承認者によって受理または拒否されなければならない。クラウドマネージャがクラウドアプリケーションプロファイルと関連付けられたアラートを受理する場合、クラウドアプリケーションはプライベートクラウドにおいてライブで表示される方へプロセスにおいて前進することになる。アラートが拒否される場合、クラウドアプリケーションは拒絶され、クラウドアプリケーションプロファイルのステータスは下書き中に変更される。この場合には、開発者は題を解決しなければならず、その後にアプリケーションが公開済みに前進することができる。0186図23Aを参照する。全般的に2250において、自動審査ルールアプリケーションのアプリケーションと関連付けられたアクションに関係する代表的な図を示している。2252において、自動審査ルールは、関連付けられたクラウドアプリケーションプロファイルが下書き中のステータスである間に変更されたときに、クラウドアプリケーションに適用される。検出段階では、アラートは、不合格となるあらゆる自動審査ルールごとに発生される。先に述べたように、アラートは、情報、警告、エラー、または致命的と分類される。01872254の精査段階において、開発者は、クラウドアプリケーションプロファイルへのあらゆる変更ごとの後に、アラートを精査する。クラウドマネージャの承認者は、あらゆるアラートを精査する。制御段階において、クラウドマネージャの承認者は、精査後にそのアラートを受理または拒否しなければならない。0188自動審査ルールの代表的なセットが、全般的に図23Bの2300において示される。図23Bを参照すると、自動審査ルールの代表的なセットを2302で示す。図示されるルールが10個あるが、この10個のセットは例示にすぎない。各ルールに関しては、2304で示されるルールの厳正性がある。この厳正性は、4つのアラートステータス、すなわち、情報、警告、エラー、致命的のうちの1つによって定義される。2306において、アラートについて説明される。つまり、任意のクラウドアプリケーションプロファイルステータスへの変更がある際に、自動審査ルールの各々が検査され、いかなる違反がある限りにおいて、アラートはそのクラウドアプリケーションに対して申し出る。クラウドアプリケーションが開発および適用のプロセスにおいて前進できるのは、適切な承認者によるこれらアラート受理に応じたときのみである。0189図4において、ユーザインターフェイス402は、ダッシュボード406を示す。代表的なダッシュボードの表示が、全般的に図24の2400に示される。図示のように、クラウドアプリケーションおよびゾーンは、クラウドアプリケーションの健康状態についての調査を可能にするために、詳細にまたは視覚的にビューすることができる。図24において、2401で示されるクラウドアプリケーションについて、アプリケーションの詳細が2402で示され、仮想マシンの詳細が2406で示され、そして、仮想詳細が2408で示される。さらに、ゾーンのグラフィック表示について2410に示される。01902410において、ゾーンのグラフィック表示は、2412のTX/SLOトランザクション/SLOおよび2418のユーザに関する健康状態が非常に良好であることを示す。2416で示される物理マシンの健康状態はこれほどは良好ではない。何故ならば、インジケータの矢印がイエロー域または警告域の近くにあるからである。最後に、2414で示される仮想マシンの健康状態は良好でない。何故ならば、インジケータの矢印がレッド域にあるからである。好ましくは、インジケータの矢印がレッド域にあるために、クラウドマネージャはこれに対してアラートされ、そして、可能であれば、仮想マシンと関連付けられた負荷課題を是正する。0191ダッシュボードディスプレイ2400上に表示される様々なタブの選択があり得、これが、システムアプリケーションおよびインフラストラクチャに関する付加的な健康状態情報を提供するものと理解される。0192図6および7に関してサービスレジストリ524の説明において、サービスレジストリのコンテンツについて図示していないが説明してきた。また、サービスレジストリを通じて、認可されたシステムユーザが、サービスレジストリの入力に関係するウェブサービス詳細へのアクセス権を有することについて先に説明してきた。図25および26において、サービスレジストリウインドウおよびウェブサービス詳細ウィンドウの代表的な画面表示が示される。0193図25を参照する。全般的に2500において、代表的なサービスレジストリ表示ウィンドウが示される。2502で示すように、各レジストリ入力は、サービスに関する番号、名前、説明および追加情報を有する。この情報は、サービスを認可されたシステムユーザによって検索可能にする。認可されたシステムユーザがサービスレジストリでの特定入力に関する詳細情報を要望する場合、図26に示されるようなウェブサービス詳細ウィンドウをオープンするサービス入力を選択することによって取得することができる。0194図26を参照する。全般的に2600において、ウェブサービス詳細表示2604のウィンドウを有するサービスレジストリ表示2602が示されている。認可されたシステムユーザがサービスレジストリウインドウ2602内のサービスレジストリ番号511446を選択する場合、サービスレジストリ番号511446についての詳細表示ウィンドウ2604をオープンし、そのレジストリ番号に関する具体的な詳細情報を提供する。表示ウィンドウ2604において、サービスレジストリ番号511446に関する基本情報が示される。しかしながら、追加タブのいずれかを選択することによって、追加の詳細情報は、このレジストリ番号について提供されることになる。0195図27~32を参照する。代表的なクラウドアプリケーション展開ワークフローについて説明する。0196図27を参照する。全般的に2700において、クラウドアプリケーション展開ワークフローが、POC/DEV/SYS環境について示される。POC/DEV/SYSは、ひとまとめにしてゾーンを形成する。この図は、クラウドアプリケーションがPOC、DEVおよびSYS環境に展開されるときに、クラウドアプリケーションプロファイルが行わなければならないプロセスについて示している。01972702において、開発者はクラウドアプリケーションプロファイルへのアクセス権を有することになり、2704で示すように、下書き中のステータスである限りプロファイルファイルのフィールドを編集する。一旦開発者がクラウドアプリケーションプロファイルの変更に満足すると、クラウドアプリケーションプロファイルのステータスは2706で公開済みに変更される。0198次に、好ましくは、筆頭の開発者がアプリケーションプロファイルを精査することになり、それに満足すると、2208で示すように、彼/彼女は、クラウドアプリケーションのステータスを筆頭者承認に変更する。しかしながら、筆頭の開発者が満足しない場合には、彼/彼女は2710で拒絶済みとして示すように、アプリケーションを拒絶することができる。そして、クラウドアプリケーションプロファイルのステータスを下書き中に戻す。0199筆頭の開発者がクラウドアプリケーションを承認する場合、クラウドアプリケーションプロファイルは2711でクラウドコントローラに転送される。2712に示すように、この時点で引き継ぎを行ったクラウドコントローラは、クラウドアプリケーションプロファイルを検証し、クラウドアプリケーションプロファイルのステータスをスケジュール済みに変更する。プライベートクラウドへの展開の時間になるまで、アプリケーションプロファイルはそのステータスにとどまることになる。0200通例、クラウドアプリケーションを展開する時間は、クラウドアプリケーションプロファイルにおいて示される。展開の時間がくると、クラウドコントローラは、クラウドアプリケーションのインストールするための提供を同時に実行しながら、2713において、クラウドアプリケーションプロファイルのステータスをインストール中に変更する。クラウドコントローラは、サービスインベントリファイルを抽出し、サービスメタデータおよびアクセス制御情報、2715のeSF更新、ならびに2714のサービスレジストリ更新を読み取る。一旦インストールが完了すると、クラウドアプリケーションプロファイルのステータスは2716で起動中に変更される。好ましくは、起動中とは、プライベートクラウドにおいてクラウドアプリケーションがライブで起動していることを意味する。0201図28を参照する。全般的に2800において、クラウドアプリケーション展開ワークフローがPOC/DEV/SYS環境について示されている。UAT/PREPROD/PRODは、ひとまとめにしてゾーンを形成する。図28において、2704の下書き中、2706の公開済み、2708の筆頭者承認、2710の拒絶済み、2712のスケジュール済み、2713のインストール中、2715のeSF更新および2714のレジストリ更新に関するワークフロープロセスは、図27のそれらと同様である。したがって、図27に関するこれら項目の説明が同等に適用され、参照によりここに組み込むものとする。0202UATおよびPROD環境へのクラウドアプリケーションを展開するときに、ワークフローは2708で筆頭者承認の後にさらに3つの承認を要求する。これらの承認は、2802の管理者承認、2804のSQA承認および2810のビジネス承認を含む。これら追加承認より多いまたは少ない承認とすることができ、なおも本発明の範囲内にあるものとすることができる。0203図29を参照する。全般的に2900において、非常事態についてのクラウドアプリケーション展開ワークフローが示される。図29において、2704の下書き中、2706の公開済み、2708の筆頭者承認、2710の拒絶済み、2802の管理者承認、2804のSQA承認、2810のビジネス承認、および2712のスケジュール済みに関係するワークフロープロセスは、図28のそれらと同一である。ただし、2708の筆頭者承認および2802の管理者承認が開発者2702の一部であり、また、2804のSQA承認および2810のビジネス承認が非常時承認2904を含む代替のフロー2902でグルーピングされることを除く。したがって、図28に関するこれらの項目の説明が同様に適用され、参照により組み込むものとする。0204クラウドアプリケーションプロファイルを非常時の展開として移行することを開発者が要求する場合に、図29のワークフローが用いられる。非常時の展開ワークフローにおいて、SQA承認およびビジネス承認、2904で非常時承認へのアクセス権を有する認可された人によって、スキップすることができる。好ましくは、非常時ワークフローは、前に展開へ移動することを必要とする、予想外であるが、クリティカルな技術変更を展開するためのものである。この技術変更は、緊急に展開へと前進する必要がある。0205図30を参照する。全般的に3000において、モラトリアムクラウドアプリケーション展開ワークフローを示している。図29において、2704の下書き中、2706の公開済み、2708の筆頭者承認、2710の拒絶済み、2802の管理者承認、2804のSQA承認、2810のビジネス2712のスケジュール済み、および2904の非常時承認に関係するワークフロープロセスは、図29のそれらと同様である。したがって、図29に関するこれらの項目の説明が同等に適用され、参照により組み込むものとする。0206クラウドアプリケーションが毎月のモラトリアムまたは他の一定の期間の間に移行される必要があるときに、モラトリアム展開ワークフローが用いられる。例えば、1ヵ月の最終営業日と第1営業日とを一致させることができる。この間は、ライブでのクラウドアプリケーションの変更が制限される。0207図30によれば、代替のワークフロー2902が、3002のモラトリアム承認1および3004のモラトリアム承認2を含む。これら後者の承認は、企業内で高位レベルのエンティティから得られる。0208図31を参照する。全般的に3100において、展開プロセスからアプリケーションを後退させるためのクラウドアプリケーション展開ワークフローを示している。クラウドアプリケーションの展開がクラウドアプリケーションにおいて予想外の故障という結果となるとき、プライベートクラウドから後退されるために展開されたクラウドアプリケーションのバージョンが必要となることがある。0209展開されたクラウドアプリケーションで課題が検出されるとき、アプリケーションを取り消すかどうかの決定がなされる。これは、アプリケーションの取消ファイルの作成によって行うことができる。このファイルは、クラウドアプリケーションについてのバイナリを用いて作成することができる。このバイナリは、クラウドアプリケーションが課題を有する前に展開されたものである。取消のプロファイルは、これらのバイナリを用いている開発者によって作成される。0210再度図31を参照する。取消アプリケーション展開ワークフローを視覚的に示している。3102において、展開されたクラウドアプリケーションのバージョンで検出された課題が一旦存在すれば、取消プロファイルを作成および使用すべきかどうかについて決定しなければならない。0211取消プロファイルを作成することが決定された場合は、このプロセスは3104へ進む。3104において、取消プロファイルは、アプリケーションコントロールパネルを用いて作成することができる。取消プロファイルを作成する際、以前に展開したクラウドアプリケーションだけを使用することができる。さらに、一旦取消プロファイルが作成されると、それは変更することができない。行動ログは、取消プロファイルに関係した履歴の経過を追う。0212一旦取消ファイルが作成されると、このプロセスは3106へ進む。ここでは、適切な承認を得ることが必要となる。少なくとも図27~30および32に示したワークフローと整合するようにして、これらの承認が得られる。0213図32を参照する。全般的に3200において、だいたいのクラウドアプリケーション展開ワークフローを示しており、自動アラートが組み込まれる。図32において、2704の下書き中、2706の公開済み、2708の筆頭者承認、2710の拒絶済み、2802の管理者承認、2804のSQA承認、2810のビジネス承認および2712のスケジュール済みに関するワークフロープロセスは、図29におけるそれらと同様である。したがって、図29に関するこれらの項目の説明が同等に適用され、参照により組み込むものとする。0214図32に示されるワークフローは、各段階における自動審査ルールの使用を組み込む。2704において、下書き中のステータスを有するクラウドアプリケーションは3202において変更されるクラウドアプリケーションプロファイルを有し、次いで、自動審査ルールは、3204においてその変更を評価する。これにより、3206でアプリケーションプロファイルアラートを発生することになる。開発者は、次いで、3208においてアラートを生じさせた課題を解決する。この解決が適切なものと考えられる場合には、クラウドアプリケーションは2706の公開済みとなる。しかしながら、3205の代替のワークフローにおける各段階で、各承認レベルは、アプリケーションが次の承認ステージへ移るために、3010、3012、3014、および3016に示すように、アラートを受理しなければならない。承認された段階のいずれかでアラートが拒否された場合は、ワークフローは3218でアラートを拒否するために移り、2710でアプリケーションを拒絶する。アプリケーションがこのようにして拒絶されるとき、そのステータスは下書き中に戻され、このプロセスはクラウドアプリケーションをプライベートクラウドの展開に移すために、再度開始しなければならない。0215本発明のシステムおよび方法における本実施形態やその部分は、コンピュータハードウェア、ファームウェア、および/またはプログラム可能なコンピュータやサーバ上で起動できるコンピュータプログラムに実装することができる。プログラム可能なコンピュータかサーバは、それぞれプロセッサおよび当該プロセッサによって読み取り可能な揮発性および不揮発性メモリ、ならびに/またはストレージエレメントを含んだストレージ媒体を含む。いかなるコンピュータプログラムも、コンピュータベースシステムの内側および外側で通信するために、高位レベル手順であるかオブジェクト指向プログラミング言語で実装することができる。0216いかなるコンピュータプログラムも、例えばストレージ媒体例えば、CD―ROM、ハードディスクや磁気ディスケットまたはデバイス例えば、コンピュータ周辺機器のような製造品上に格納することができる。コンピュータプログラムは、汎用または専用目的のプログラム可能なコンピュータによって読み取り可能であり、ストレージ媒体やデバイスがコンピュータで読み取られて本実施形態の機能を実行する際に、そのコンピュータを構成し動作させる。本実施形態やその部分はまた、コンピュータプログラムを用いて構成されるマシン読み取り可能ストレージ媒体として実装することもできる。そこでは、実行時に、コンピュータプログラム内の命令によって先に述べた本実施形態の機能を実行するようにマシンに動作させる。0217本発明のシステムおよび方法における本実施形態やその部分は、様々なアプリケーションで使用することができる。本実施形態やその部分はこの点では制限されていなが、本実施形態やその部分は、他の電気コンポーネントにおいて、マイクロコントローラ、汎用マイクロプロセッサ、デジタル信号プロセッサDSP、縮小命令セットコンピューティングRISCおよび複合命令セットコンピューティングCISCのメモリデバイスを用いて実施することができる。さらには、先に説明した本実施形態やその部分はまた、メインメモリとして称される集積回路ブロック、キャッシュメモリ、マイクロプロセッサによって実行される電気命令を格納、または算術演算において使用できるデータを格納する他のタイプのメモリを用いて、実施することができる。0218本説明は、いかなるコンピューティング環境または処理環境においても適用可能である。本実施形態またはその部分は、ハードウェア、ソフトウェアまたはこれら2つの組合せにおいて実施することができる。例えば、本実施形態やその部分は、1以上のプログラム可能ロジック例えば、ASIC、論理ゲート、プロセッサおよびメモリのような回路を使用して実施することができる。0219開示した実施形態に対するさまざまな変更態様が当業者にとって明らかであり、一般原則を他の実施形態およびアプリケーションに適用することができる。このように、本発明は、本明細書に図示および説明した実施形態に限定されることを意図するものではない。