"サービス指向環境内でサービスを提供するための、前記環境におけるサービスレジストリによって動作可能な方法であって、前記環境においてサービス要求側からサービスの要求を受信するステップと、前記サービスレジストリに登録されている前記要求されたサービスの詳細を調べるステップと、を含み、前記要求されたサービスが登録されていないことに応答して、1つ以上のサービスプロバイダに新しいサービスを提供するよう要求を送信することと、、サービスプロバイダが前記新しいサービスを提供することに応答して、前記サービスレジストリを前記新しいサービスによって更新して、前記サービスが利用可能であることを前記サービス要求側に応答することと、によって特徴付けられる、方法。前記サービス要求側が必要なサービス標準を含み、前記サービスが登録されているが前記必要な標準を有しないことに応答して、1つ以上のサービスプロバイダに前記必要な標準を有するサービスを提供するよう要求を送信することと、サービスプロバイダが、前記必要な標準を有するサービスを提供することに応答して、前記サービスレジストリを前記新しいサービスおよびサービス標準によって更新することと、を含む、請求項1に記載の方法。前記サービス標準は、サービス特性が必要な閾値を満足させることである、請求項2に記載の方法。前記サービス特性が、前記サービスを実行する速度、前記サービスのコスト、または提供するサービスインスタンスの数、の1つ以上である、請求項3に記載の方法。前記要求されたサービスが登録されていないことに応答して、1つ以上の以降のサービスレジストリに前記サービスのためのサービスプロバイダを提供するよう前記サービス要求を送信することを更に含む、請求項1、2、または3に記載の方法。前記1つ以上の以降のサービスレジストリに、位置特定されたサービス情報を送信して、前記1つ以上の以降のサービスレジストリが、以前に位置特定されたサービス情報およびそれ以降に位置特定されたサービス情報を用いてサービスプロバイダを選択することを可能とする、請求項5に記載の方法。前記サービス要求側と前記サービスプロバイダとの間に介在するサービス管理層を更に含み、前記サービス要求側が前記サービスプロバイダの実際のサービスエンドポイントを受信せずに前記サービス管理層を介して前記サービスを用いる、請求項1から6のいずれか1項に記載の方法。前記サービス要求側が前記サービスエンドポイントを受信し、直接前記サービスプロバイダからの前記サービスを要求する、請求項1から6のいずれか1項に記載の方法。前記サービスプロバイダが仮想サーバとして提供される、請求項1から8のいずれか1項に記載の方法。前記サービスが仮想アプリケーションとして提供される、請求項1から9のいずれか1項に記載の方法。サービス指向アーキテクチャシステム内でサービスを提供するための、前記システムにおけるサービスレジストリであって、前記システムにおいてサービス要求側からサービス要求を受信するための手段と、前記サービスレジストリに登録されている前記サービスのステータスを調べるための手段と、を含み、前記ステータスが既定の標準未満であることに応答して、1つ以上のサービスプロバイダに前記既定の標準に従って新しいサービスを提供するよう要求を送信するための手段と、サービスプロバイダが前記既定の標準に従って前記新しいサービスを提供することに応答して、前記サービスレジストリを前記新しいサービスによって更新して、前記サービスが利用可能であることを前記サービス要求側に応答するための手段と、によって特徴付けられる、サービスレジストリ。前記既定の標準は、前記サービスが登録されたサービスエンドポイントを有することである、請求項11に記載のサービスレジストリ。前記既定の標準は、サービス特性が閾値を満足させることである、請求項11に記載のサービスレジストリ。前記サービス特性が、前記サービスを実行する速度、前記サービスのコスト、提供するサービスインスタンスの数、または前記サービスの他のいずれかの可変特性、の1つ以上である、請求項13に記載のサービスレジストリ。前記ステータスが既定の標準を満足させていないことに応答して、1つ以上の以降のサービスレジストリに前記サービスのためのサービスプロバイダを提供するよう要求を送信することを更に含む、請求項11、12、または13に記載のサービスレジストリ。前記1つ以上の以降のサービスレジストリに、位置特定されたサービス情報を送信して、前記1つ以上の以降のサービスレジストリが、一つにまとめたサービス情報を用いてサービスプロバイダを選択することを可能とする、請求項15に記載のサービスレジストリ。前記サービス要求側と前記サービスプロバイダとの間に介在するサービス管理層を更に含み、前記サービス要求側が前記サービスプロバイダの実際のサービスエンドポイントを受信せずに前記サービス管理層を介して前記サービスを用いる、請求項11から16のいずれか1項に記載のサービスレジストリ。前記サービス要求側が前記サービスエンドポイントを受信し、直接前記サービスプロバイダからの前記サービスを要求する、請求項11から16のいずれか1項に記載のサービスレジストリ。前記サービスプロバイダが仮想サーバとして提供される、請求項11から18のいずれか1項に記載のサービスレジストリ。前記サービスが仮想アプリケーションとして提供される、請求項11から19のいずれか1項に記載のサービスレジストリ。サービス指向アーキテクチャシステム内でサービスレジストリを動作させ、前記システムにおいてサービスを管理するための、コンピュータ読み取り可能コードを含むコンピュータプログラムであって、前記コンピュータ読み取り可能コードが、コンピュータシステム上にロードされて実行された場合に、前記システムにおいてサービス要求側からサービス要求を受信するステップと、前記サービスレジストリに登録されている前記サービスのステータスを調べるステップと、を実行し、前記ステータスが既定の標準未満であることに応答して、1つ以上のサービスプロバイダに前記既定の標準に従って新しいサービスを提供するよう要求を送信することと、サービスプロバイダが前記既定の標準に従って前記新しいサービスを提供することに応答して、前記サービスレジストリを前記新しいサービスによって更新して、前記サービスが利用可能であることを前記サービス要求側に応答することと、によって特徴付けられる、コンピュータプログラム。前記既定の標準は、前記サービスが登録されたサービスエンドポイントを有することである、請求項21に記載のコンピュータプログラム。前記既定の標準は、サービス特性が閾値を満足させることである、請求項21に記載のコンピュータプログラム。前記サービス特性が、前記サービスを実行する速度、前記サービスのコスト、提供するサービスインスタンスの数、または前記サービスの他のいずれかの可変特性、の1つ以上である、請求項23に記載のコンピュータプログラム。前記ステータスが既定の標準を満足させていないことに応答して、1つ以上の以降のサービスレジストリに前記サービスのためのサービスプロバイダを提供するよう要求を送信することを更に含む、請求項21、22、または23に記載のコンピュータプログラム。前記1つ以上の以降のサービスレジストリに、位置特定されたサービス情報を送信して、前記1つ以上の以降のサービスレジストリが、一つにまとめたサービス情報を用いてサービスプロバイダを選択することを可能とする、請求項25に記載のコンピュータプログラム。前記サービス要求側と前記サービスプロバイダとの間に介在するサービス管理層を更に含み、前記サービス要求側が前記サービスプロバイダの実際のサービスエンドポイントを受信せずに前記サービス管理層を介して前記サービスを用いる、請求項21から26のいずれか1項に記載のコンピュータプログラム。前記サービス要求側が前記サービスエンドポイントを受信し、直接前記サービスプロバイダからの前記サービスを要求する、請求項21から26のいずれか1項に記載のコンピュータプログラム。前記サービスプロバイダが仮想サーバとして提供される、請求項21から28のいずれか1項に記載のコンピュータプログラム。前記サービスが仮想アプリケーションとして提供される、請求項21から29のいずれか1項に記載のコンピュータプログラム。コンピュータ読み取り可能媒体上に記憶され、デジタルコンピュータの内部メモリにロード可能なコンピュータプログラムであって、前記プログラムがコンピュータ上で実行されると請求項1から10のいずれかの方法を実行するためのソフトウェアコード部分を含む、コンピュータプログラム。登録されたサービスエンドポイントを有するインストール済みのサービスは呼び出すことができるが、登録されたエンドポイントを有しないサービスを呼び出すことはできない。サービスは、サービスプロバイダにおいてインストールされる際に、固定のまたは容易に利用可能なサービスエンドポイントがサービス文書に規定されサービスレジストリによってインデックスされている。しかしながら、多くのサービスプロバイダは、固定のリソースを有し、低需要サービスよりも高需要サービスを優先させなければならない。従って、全てのサービスが同時に利用可能であるわけではない。低需要サービスは、サービスプロバイダからアンインストールし、サービスプロバイダのアクティブなサービスから除去することができる。このサービスに関連付けられたいかなるサービスエンドポイントもレジストリによって除去され、サービスはアーカイブされて、新しいサービスエンドポイントを用いた再インストールおよびセットアップが必要であるようになっている。カスタマが、アンインストールされたサービスを要求し、サービスにおいて遅延または差異を経験しないことが有用であろう。低需要のまたはアンインストールされたサービスは、時として、レガシーまたは利用不足のサービスと称される場合がある。サービスプロバイダは、アンインストールの代わりに、低需要サービスの処理優先度を下げるか、または他の何らかの方法で低需要サービスに与える処理帯域幅を狭くする場合がある。これによって、サービス要求側が経験するサービス品質が低下し、サービス要求側の求めたサービスでないものになってしまう恐れがある。場合によっては、この品質低下はサービス契約の条項に反するものである。要求されたサービスの処理優先度が低下し、再度コンフィギュレーションを行う必要があった場合であっても、サービス要求側が所望の品質のサービスを受け、サービス品質の遅延または差異を経験しないことが有用であろう。2007年1月30日の米国特許第7,171,470B2号Doyle,R.P.等のGridServiceSchedulingofRelatedServicesusingHeuristicsは、要求されたトランザクションの少なくとも一部を処理するためにコンピューティンググリッドにおいてサービスインスタンスをスケジューリングする方法およびシステムを開示する。従って、当技術分野において、前述の問題に対処することが必要とされている。本発明の第1の態様によれば、請求項1から10に記載されるようなサービスレジストリ方法が提供される。本発明の第2の態様によれば、請求項11から20に記載されるようなサービスレジストリシステムが提供される。本発明の第3の態様によれば、請求項21から30に記載されるようなコンピュータプログラムが提供される。好適な実施形態によるサービスレジストリは、サービスまたはサービスの追加のインスタンスがサービスプロバイダにより利用可能となることを要求し、例えばサービスを含む仮想機械画像を利用可能なハードウェア上に配置することによって、クラウドコンピューティングによって提供することができる。レジストリに新しいサービスエンドポイントを追加し、エンタープライズサービスバスESBはいずれかの既存のエンドポイントに加えて新しいエンドポイントをルーティングすることができる。サービスを除去し、他のサービス向けにハードウェアを利用可能とする何らかのタイムアウトまたは使用値に達するまで、サービスは展開されたままである。サービスプロバイダからサービスエンドポイントが除去されたことをレジストリが発見した場合、サービスエンドポイントはレジストリから除去される。レジストリは、直接サービスを提供している管理者によって、またはSOA管理アプリケーションの使用によって用いられる。管理者によりサービスが開始されると、管理者またはSOA管理アプリケーションが使用するため、エンドポイント情報がレジストリに自動的に配置される。エンドポイント情報は、他のタイプのエンドポイントおよびサービスエンドポイントを含み、本発明では、サービスエンドポイントが失われた場合に、他のタイプのエンドポイント情報を用いて新しいサービスエンドポイントを入手または提供可能であることが認められる。他のタイプのエンドポイントは、一般にインターネットプロトコルアドレスであるサービスエンドポイントよりも抽象的である。実施形態によって、他のタイプのエンドポイント情報が管理者または管理アプリケーションあるいはその両方に利用可能となる。好適な実施形態および他の実施形態は、サービスレジストリにおいて実現される。レジストリは間接レイヤalayerofindirectionを提供し、これによって呼び出しアプリケーションは必ずしもサービスエンドポイントの位置を知っている必要がなくなる。間接レイヤは、エンタープライズサービスバスESB上のサービスアプリケーションによって用いられて、サービスの品質または負荷バランス等のサービス特徴に応じた異なるエンドポイントへのサービス要求の方向付けの管理を可能とする。適切なサービスエンドポイントが存在しない場合、または性能特徴が低すぎる場合、サービスの新しいインスタンスを提供するために要求が行われる。サービスエンドポイントでない既存のエンドポイントの例は、必要に応じて仮想機械画像を提供するクラウドツールである。サービスエンドポイントが存在しない場合、新しいサービスエンドポイントインスタンスが提供されるまでレジストリは待機することができる。サービスレジストリは、この新しいサービスエンドポイントを要求側のアプリケーションに戻し、要求は新しいサービスエンドポイントにルーティングされる。すでに利用可能なサービスエンドポイントが存在する場合、要求は既存のサービスエンドポイントにルーティングすることができるが、新しいサービスエンドポイントが利用可能となった場合、今後の要求は、既存のサービスエンドポイントに加えて新しいサービスエンドポイントを利用することができる。この解決策の利点として、サービスを効率的にアンインストールし、その後インストールすることができるので、サービスプロバイダの利用可能なサービスからの低需要サービスをいっそう効率的に管理することができる。サービス使用が設定レベル未満に低下した場合またはタイムアウトに達した場合にはクラウドサーバからサービス仮想機械画像を除去するように、展開されたサービスインスタンスを監視することができる。この解決策は、限られた数のサーバを有するがクラウドリソースを用いてカスタマに多くのサービスを提供してサービスを拡大したいサービスプロバイダにとって、特に有利である。かかるサービスプロバイダは、多数のサービスのいずれか1つのホストとなり得る仮想エンドポイントを利用可能とすることができる。サービスプロバイダは、サービス要求が受信された場合に単に新しいサービスを提供し、その後、使用レベルが低下した場合にサービスを除去する。これが意味するのは、サービスプロバイダが、サービスのホストとなるために用いているクラウドの使用についてのみ支払いをすれば良いといことであり、従ってそれらのサーバのコストは固定されないことが確実となる。これより添付図面を参照して一例としてのみ本発明の実施形態を説明する。図1を参照すると、従来技術に従ったコンピュータシステムノード10のコンポーネントの図が示されている。コンピュータシステムノード10は、コンピュータシステム/サーバ12を含み、これは多数の他の汎用または特殊用途コンピューティングシステム環境またはコンフィギュレーションと共に動作する。コンピュータシステム/サーバ12で用いるのに適切であり得る周知のコンピューティングシステム、環境、またはコンフィギュレーションあるいはそれら全ての例は、限定ではないが、パーソナルコンピュータシステム、サーバコンピュータシステム、シンクライアントthinclient、シッククライアントthickclient、ハンドヘルドデバイス、またはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラマブル民生用電子機器、ネットワークPC、ミニコンピュータシステム、メインフレームコンピュータシステム、および上述のシステムまたはデバイスのいずれかを含む分散型クラウドコンピューティング環境等を含む。コンピュータシステム/サーバ12は、コンピュータシステムにより実行されるプログラムモジュール等のコンピュータシステム実行可能命令の一般的なコンテキストにおいて記述することができる。一般に、プログラムモジュールは、特定のタスクを実行するかまたは特定の抽象データタイプを実施するルーチン、プログラム、オブジェクト、コンポーネント、論理、データ構造等を含むことができる。コンピュータシステム/サーバ12は、通信ネットワークを介してリンクされた遠隔処理デバイスによってタスクが実行される分散型クラウドコンピューティング環境において具現化することができる。分散型クラウドコンピューティング環境では、プログラムモジュールは、メモリ記憶デバイスを含むローカルおよび遠隔の双方のコンピュータシステム記憶媒体に位置することができる。図1に示すように、コンピュータシステムノード10におけるコンピュータシステム/サーバ12は、汎用コンピューティングデバイスの形態で示されている。コンピュータシステム/サーバ12のコンポーネントは、限定ではないが、1つ以上のプロセッサまたは処理ユニット16と、システムメモリ28と、システムメモリ28を含む様々なシステムコンポーネントをプロセッサ16に結合するバス18と、を含む。バス18は、多種多様なバスアーキテクチャのいずれかを用いた、メモリバスまたはメモリコントローラ、周辺バス、アクセラレーテッドグラフィックポート、およびプロセッサまたはローカルバスを含むいくつかのタイプのバス構造のいずれかの1つ以上を表す。限定ではなく一例として、かかるアーキテクチャは、業界標準アーキテクチャISA:IndustryStandardArchitectureバス、マイクロチャネルアーキテクチャMCA:MicroChannelArchitectureバス、拡張ISAEISA:EnhancedISAバス、VESAVideoElectronicsStandardsAssociationローカルバス、およびPCIPeripheralComponentInterconnectsバスを含む。コンピュータシステム/サーバ12は典型的に、多種多様なコンピュータシステム読み取り可能媒体を含む。かかる媒体は、コンピュータシステム/サーバ12によってアクセス可能であるいずれかの利用可能媒体とすることができ、揮発性および不揮発性媒体、着脱可能および着脱不可能媒体の双方を含む。システムメモリ28は、ランダムアクセスメモリRAM30およびキャッシュメモリ32あるいはその両方等、揮発性メモリの形態のコンピュータシステム読み取り可能媒体を含むことができる。コンピュータシステム/サーバ12は更に、他の着脱可能/着脱不可能、揮発性/不揮発性コンピュータシステム記憶媒体を含むことも可能である。一例に過ぎないが、着脱不可能、不揮発性磁気媒体図示せず。典型的にハードドライブと呼ばれるからの読み取りおよびそれに対する書き込みのために、記憶システム34を設けることができる。図示しないが、着脱可能、不揮発性磁気ディスク例えばフレキシブルディスクからの読み取りおよびそれに対する書き込みのための磁気ディスクドライブ、ならびにCD-ROM、DVD-ROM、または他の光媒体等の着脱可能、不揮発性光ディスクに対する読み取りまたはそれに対する書き込みのための光ディスクドライブを設けることができる。かかる例では、各々は1つ以上のデータ媒体インタフェースによってバス18に接続することができる。以下で更に図示し記載するように、メモリ28は、本発明の実施形態の機能を実行するように構成されたプログラムモジュールのセット例えば少なくとも1つを有する少なくとも1つのプログラムを含むことができる。限定ではないが一例として、メモリ28に、プログラムモジュール42のセット少なくとも1つを有するプログラム/ユーティリティ40を記憶することができ、更に、オペレーティングシステム、1つ以上のアプリケーションプログラム、他のプログラムモジュール、およびプログラムデータも記憶することができる。オペレーティングシステム、1つ以上のアプリケーションプログラム、他のプログラムモジュール、およびプログラムデータまたはそれらの何らかの組み合わせの各々は、ネットワーキング環境の実装を含むことができる。プログラムモジュール42は一般的に、本明細書に説明するような本発明の実施形態の機能および方法論あるいはその両方を実行する。また、コンピュータシステム/サーバ12は、キーボード、ポインティングデバイス、ディスプレイ24等の1つ以上の外部デバイス14、ユーザがコンピュータシステム/サーバ12とインタラクトすることを可能とする1つ以上のデバイス、コンピュータシステム/サーバ12が1つ以上の他のコンピューティングデバイスと通信を行うことを可能とするいずれかのデバイス例えばネットワークカード、モデム等あるいはそれら全てと通信を行うことができる。かかる通信はI/Oインタフェース22を介して行うことができる。更にコンピュータシステム/サーバ12は、ネットワークアダプタ20を介して、ローカルエリアネットワークLAN、一般的なワイドエリアネットワークWAN、または公衆回線例えばインターネットあるいはそれら全て等の1つ以上のネットワークと通信を行うことができる。図示するように、ネットワークアダプタ20は、バス18を介してコンピュータシステム/サーバ12の他のコンポーネントと通信を行う。図示しないが、コンピュータシステム/サーバ12と関連付けて他のハードウェアまたはソフトウェアのコンポーネントあるいはその両方を使用可能であることは理解されよう。限定ではないが、その例は、マイクロコード、デバイスドライバ、冗長処理ユニット、外部のディスクドライブアレイ、RAIDシステム、テープドライブ、およびデータアーカイバル記憶システムを含む。ここで図2を参照すると、従来技術の例示的なクラウドコンピューティング環境50が示されている。図示のように、クラウドコンピューティング環境50は1つ以上のクラウドコンピューティングノード10を含み、これらは、例えばパーソナルデジタルアシスタントPDAまたは携帯電話54A、デスクトップコンピュータ54B、ラップトップコンピュータ54C、または自動車コンピュータシステム54Nあるいはそれら全て等のクラウド消費者によって用いられるローカルコンピューティングデバイスと通信を行うことができる。ノード10は相互に通信可能である。それらは、プライベート、コミュニティ、パブリック、またはハイブリッドクラウド、またはそれらの組み合わせ等の1つ以上のネットワークにおいて物理的にまたは仮想的にグループ化することができる図示せず。これによってクラウドコンピューティング環境50は、インフラストラクチャ、プラットフォーム、またはソフトウェアあるいはそれら全てをサービスとして提供することができ、クラウド消費者はそのためにローカルコンピューティングデバイス上でリソースを維持する必要はない。図2に示すコンピューティングデバイス54A~54Nのタイプは例示を意図するだけであり、コンピューティングノード10およびクラウドコンピューティング環境50は、いずれかのタイプのネットワークまたはネットワークアドレス指定可能接続を介して例えばウェブブラウザを用いていかなるタイプのコンピュータ化デバイスとも通信可能であることは理解されよう。図3を参照すると、本発明の好適な実施形態によるSOAシステム300のコンポーネント図が示されている。SOAシステム300は、ユーザデバイス54Aならびに少なくとも2つのネットワーク301および306を含む。第1のネットワーク301は、少なくとも1つのサービスプロバイダ302およびレジストリ304を含む。典型的に、第1のネットワーク301はエンタープライズネットワークである。サービスプロバイダ302は、例示的なマッピングおよびナビゲーションサービス310を含む。第2のネットワーク306はサービスプロバイダ308A~308Nを含む。レジストリ304はサービスエンドポイントエンジン532を含む。クライアントデバイス54Aとサービスプロバイダ302または308A~308Nとの間の既知のインタラクションは次のように進む。クライアントデバイス54Aはレジストリ304からサービスの使用を要求する。例えば、クライアントデバイスはその位置のマップを要求することができる。レジストリ304は、例えばマッピングおよびナビゲーションサービス310のような要求されたサービスを検索して位置を特定する。次いでレジストリは、位置を特定したサービスに関連付けられた1つ以上のサービスエンドポイントを選択する。各サービスエンドポイントは、少なくともインターネットプロトコルIPアドレスならびに任意にポート番号およびサービスプロバイダ名を含み、サービスプロバイダに対するIPサービス要求を可能とする。次いでレジストリ304は、サービスエンドポイントを要求側のクライアントデバイス54Aに返信し、クライアントデバイス54Aは、提供されたサービスエンドポイントの1つ以上を用いてサービスプロバイダ302または308A~308Nからマッピングサービスを要求する。レジストリ304は、レジストリ304と同一のドメインもしくはエンタープライズすなわち第1のネットワーク301内にあるサービスエンドポイントを供給することができ、または別のドメインもしくはエンタープライズ内にあるものを供給することができる。供給されたサービスエンドポイントによって、クライアントはサービスプロバイダからのサービスを独立して要求することができる。レジストリ304がサービス要求のための適切なサービスエンドポイントを見つけられない場合、問題が発生する。全ての実施形態は、レジストリの一部としてサービスエンドポイントエンジン532を提供して、レジストリにおいて見つからない場合にレジストリの外部で適切なサービスエンドポイントを探し出す。全ての実施形態は、サービスプロバイダおよび他のサービスレジストリ図3および図4には他のサービスレジストリは示していないから、サービスエンドポイントを探し出す。また、レジストリ304にサービスエンドポイントが存在しない場合は、他のサービスエンティティとの通信によって、レジストリ304は、サービスが一時的にオフラインであるか、またはいかなるサービスプロバイダによっても提供されていないかを確かめることができる。一時的にオフラインのサービスは、サービスエンドポイントが失われたかまたはインストールされていないサービスである。サービスが一時的にオフラインである場合、レジストリ304はサービスプロバイダにおいてサービスを利用可能に再確立しようとする。いったんサービスプロバイダ302または308A~308Nが特定のサービスのためのサービスエンドポイントを利用可能とすると、新たに利用可能となったサービスエンドポイントは、初めてサービスレジスタに登録され、またはレジストリ304によって再び登録され、次いでサービス要求側54Aに戻される。好適な実施形態において、サービス要求側54Aは、提供されたエンドポイントを用いてサービスプロバイダと直接通信を行う。図4を参照すると、本発明のサービス管理実施形態に従った完全なサービス管理を提供するSOAシステム400が示されている。SOAシステム400は、ユーザデバイス54Aならびに少なくとも2つのネットワーク401および406を含む。第1のネットワーク401は、少なくとも1つのサービスプロバイダ402と、レジストリ404と、リソースプロバイダ405と、を含む。典型的に、第1のネットワーク401はエンタープライズネットワークである。第2のネットワーク406はサービスプロバイダ408A~408Nを含む。レジストリ404はサービスエンドポイントエンジン532を含む。サービスプロバイダ402は例示的なマッピングおよびナビゲーションサービス410を含む。この実施形態においては、完全なサービス管理は、レジストリ404がリソースプロバイダ405とインタラクトして、例えばマッピングサービスのようなサービスを提供することを含み、クライアントがサービスプロバイダに関与する必要はない。クライアントはサービスレジストリからサービスを要求し、次いでリソースプロバイダがサービスプロバイダからサービスを提供する。新たに発見されたサービスエンドポイントがいったん登録されると、リソースプロバイダ405がサービスプロバイダ402または408A~408Nとインタラクトしてサービスを制御するために用いられる。リソースプロバイダ405は、サービスプロバイダ402または408A~408Nとサービス要求側54Aとの間の通信を行うためのプロキシとして機能する。リソースプロバイダ405は、サービスの課金およびサービス品質の管理を含むサービスの完全サービス管理を可能とする。この実施形態では、サービス要求側54Aはサービスプロバイダ402と直接に通信せず、サービスプロバイダ402または408A~408Nの実際のエンドポイントアドレスはサービス要求側54Aに知られていない。図5を参照すると、本発明の実施形態に従ったサービスレジストリ304または404のコンポーネント図が示されている。サービスレジストリ304または404は、複数のサービス文書を記憶しており、これらの文書および対応するサービスに対するアクセスを可能とする。サービス文書はインデックスされ、インデックスはサービスレジストリに記憶されて特定の特徴を有する具体的なサービスの位置特定を可能とする。サービスレジストリは、サービスに関する情報のサブセットのインデックスであり例えばサービス文書の位置および名前、リポジトリ514における対応するサービス文書の位置特定およびアクセスまたはサービスプロバイダにおける対応するサービスの位置特定を可能とする。堅固に結合されたサービスレジストリおよびリポジトリによって、サービス動作は、レジストリ内のインデックスされたサービス情報およびリポジトリ内の詳細なサービス情報の双方を用いることができる。一体型サービスレジストリおよびリポジトリの一例は、IBMWebSphereRegistryandRepositoryWSRRである。かかる一体型のサービスレジストリおよびリポジトリは、分離型のシステムに比べ、再使用によるビジネスの機敏さおよび回復力という利点を有する。一体化から、結合のゆるさ、高い柔軟性、良好なインターオペラビリティ、および良好な統制governanceという更に別の利点も得られる。これらの利点は、サービス記述をそれらの実施から分離させ、サービスのライフサイクル全体を通してサービス記述を使用することによって与えられる。WSDLウェブサービス定義言語、拡張可能XMLextensiblemarkuplanguageスキーマ、ポリシまたはサービスコンポーネントアーキテクチャSCA文書等の規格に基づいたサービスメタデータアーチファクトによって、サービスによって何が実行可能なのか、サービスをどのように呼び出すことができるか、または他のサービスによる実行が予想されることの技術的な詳細を捕捉する。これらのアーチファクトに意味論的なSemantic注釈および他のメタデータを関連付けて、どのように、いつ使用可能か、および何の目的に供するかに基づいてサービスの潜在的なユーザに見通しを与えることができる。好適な実施形態は、IBMWebSphereServiceRegistryandRepositoryに基づいたサービス文書のためのサービスレジストリおよびリポジトリである。かかるサービス文書は、ある範囲のプロトコルを用いて多種多様なプログラミングモデルに従って実装される従来のインターネットサービスを含む。好適な実施形態はスタンドアロンのサービスレジストリであるが、実施形態は、一体型サービスレジストリを有する他のSOAコンポーネントを含む場合もある。例えば、サービスプロバイダは、レジストリ機能およびサービスプロバイダ機能を可能とする一体型サービスレジストリを有することができる。好適な実施形態のサービスレジストリ304または404は、JavaPlatform、EnterpriseEditionJavaEE6アプリケーションであり、IBMWebSphereApplicationServer7上で動作し、バッキングストアbackingstoreとしてオブジェクトデータベースを用いてサービスメタデータを維持する。サービスレジストリは、ロールベースアクセス制御を利用して、サービスレジストリおよびリポジトリが企業全体のアプリケーションとして展開された場合にロールベースのビューおよびアクセス制御をオンすることを可能とする。図5を参照すると、サービスレジストリ304/404は、レジストリエンジン512、リポジトリ514、統制部520、分類部522、アクセスコントローラ524、管理インタフェース526、ユーザインタフェース528、プログラミングインタフェース530、サービスエンドポイントエンジン532を含む。レジストリエンジン512は、サービスメタデータのためのレジストリ機能およびリポジトリ機能の双方を提供する。リポジトリ機能によって、ユーザは、サービス記述を保持するサービスメタデータアーチファクトをリポジトリ514に記憶し、管理し、照会することができる。レジストリエンジン512は、信頼性の高いデータ維持によってサービスメタデータを含む文書を慎重に扱うだけでなく、例えばいくつかのサービス文書におけるポートおよびポートタイプのようなそれらの文書の内容の詳細な表現を提供する。レジストリエンジン512は、得られた内容モデルの登録サービス宣言および要素を、ユーザが規定した特性、関係、および分類によって装飾するための対応をする。レジストリは、サービスエンドポイントまたはサービスインタフェース等のエンティティを見つけるために検索を行う場合にそれらの装飾を利用するユーザインタフェース528を提供する。リポジトリ514に記憶された文書は、レジストリエンジン512によって変更の有無を監視される。サービス文書に対する変更がレジストリエンジン512によって検出された場合はいつでも、検証および通知機能を呼び出す。これら双方の種類の機能は拡張機構と考えられ、レジストリエンジン512が変更に対してどのように反応するかをカスタマイズするために用いることができる。検証機能は、内容に変更があった場合にレジストリエンジン512が実行するように記述することができる。例えば、検証機能はサービス規定の完全性についてチェックを行う。レジストリエンジン512は、通知プラグイン図示せずを含み、これはサービスレジストリおよびリポジトリの内容の変更を伝達する通知の購読機能を有する。統制部520によって、レジストリエンジン512は多数の拡張可能な統制機能をサポートする。これらの機能は、統制されたエンティティについてのサービスライフサイクルをモデル化し、サービス状態間の有効な遷移を規定し、状態間の遷移を守るためにバリデータを記述およびプラグインし、遷移の結果行われるアクション通知アクションを指定する能力を含む。統制部520は、内容に対する変更の影響を分析するためのインタフェースを提供し、かかる変更の監査を行う。分類部522によって、サービス記述およびサービス規定の一部に、企業の語彙で注釈を付け、統制状態を捕捉することができる。サービス分類システムは、管理インタフェース526を用いてサービスレジストリ内にロードされたウェブオントロジー言語OWL文書において捕捉される。サービスレジストリエンティティは、これらの分類システムからの値によって分類して、分類に基づいた照会を実行し、分類に基づいたアクセス制限を実行することができる。アクセスコントローラ524は、詳細なアクセス制御モデルをサポートし、これによって、どのユーザロールが対応したアーチファクトに対する特定のタイプのアクションを実行可能であるかを規定することができる。サービスの可視性はビジネス領域によって制限することができ、ユーザロールは一定のライフサイクル状態にサービスが遷移するのを制限することができる。これは、サービスレジストリおよびリポジトリが提供するロールベースアクセス制御に追加される。管理インタフェース526は、他のリポジトリとの交換のためにリポジトリ内容のインポートおよびエクスポートをサポートし、コンフィギュレーションおよび基本的な管理のためのアプリケーションプログラミングインタフェースAPIを提供する。これらは、アクセスコントローラ524および分類部522とのインタラクションをサポートする。ユーザインタフェース528は、サービスレジストリおよびリポジトリとのユーザのインタラクションを可能とし、全てのユーザロールすなわち参照提供、閲覧、検索、公開、および注釈付け機能、ならびにインポート/エクスポートおよび影響分析等の統制アクティビティをサポートする。ユーザインタフェースは、様々なサードパーティツールのためのプラグインとして提供してインターオペラビリティをサポートすることができる。プログラミングインタフェース530は、標準的なAPIを用いてレジストリエンジン512例えばJavaおよび標準的なSOAプロトコルとインタラクトする。プログラミングインタフェース530は、生成、検索、更新、および削除CRUD等の基本的な動作、統制動作、および柔軟な照会機能のためのインタフェースを提供する。プログラミングインタフェース530は、XMLデータ構造を用いてまたはサービスデータオブジェクトSDOを用いることによって内容を伝達することができる。文書は、ユーザインタフェース528またはプログラミングインタフェース530のいずれかを用いて、生成、検索、更新、および削除することができる。サービスエンドポイントエンジン532は、サービスエンドポイントについての要求を処理するための処理論理を含む。この処理論理は、サービスエンドポイントが存在しない場合、または要求されたサービスの品質がサービスエンドポイントにより提供されるサービスの品質と一致しない場合に、要求を処理する。サービスエンドポイントエンジン532が実行するプロセスステップについては、図7、図8、および図9の実施形態を参照して説明する。図6を参照して、本発明の好適な実施形態のクラウドコンピューティング環境が提供する仮想化抽象モデルレイヤについて説明する。図6に示すコンポーネント、レイヤ、および機能は、例示のみを意図しており、本発明の実施形態はこれに限定されない。図示のように、以下のレイヤおよび対応する機能が提供される。すなわち、ハードウェアおよびソフトウェアレイヤ60、仮想化レイヤ62、管理レイヤ64、および作業負荷レイヤ66である。ハードウェアおよびソフトウェアレイヤ60は、ハードウェアおよびソフトウェアコンポーネントを含む。ハードウェアコンポーネントの例は、一例としてIBMzSeriesシステムがあげられるメインフレーム、一例としてIBMpSeriesシステムがあげられる縮小命令セットコンピュータRISCアーキテクチャベースのサーバ、IBMxSeriesシステム、IBMBladeCenterシステム、記憶デバイス、ネットワークおよびネットワーキングコンポーネントを含む。ソフトウェアコンポーネントの例は、一例としてIBMWebSphereアプリケーションサーバソフトウェアがあげられるネットワークアプリケーションサーバソフトウェア、および一例としてIBMDB2データベースソフトウェアがあげられるデータベースソフトウェアを含む。仮想化レイヤ62は抽象化レイヤを提供し、ここから以下のような仮想エンティティの例を提供することができる。すなわち、仮想サーバ、仮想記憶、仮想プライベートネットワークを含む仮想ネットワーク、仮想アプリケーションおよびオペレーティングシステム、および仮想クライアントである。好適な実施形態においては、サービスレジストリ304およびリソースの提供は、クラウドシステムの管理レイヤ64の一部である。管理レイヤ64は更に、計測および価格付け、ユーザポータル、およびサービスレベル管理等の他の機能を含む。リソースの提供は、クラウドコンピューティング環境内でタスクを実行するために利用されるコンピューティングリソースおよび他のリソースの動的な調達を提供する。サービスレジストリは、クラウドシステムにおいて用いられるコンピューティングおよび他のリソースのためのディレクトリを提供する。計測および価格付けは、クラウドコンピューティング環境内でリソースが利用される際のコスト追跡を提供し、これらのリソースの消費について課金またはインボイス作成を提供する。一例では、これらのリソースはアプリケーションソフトウェアライセンスを含むことができる。ユーザポータルは、消費者およびシステム管理者のためにクラウドコンピューティング環境に対するアクセスを提供する。サービスレベル管理は、要求されたサービスレベルを満足させるようにクラウドコンピューティングリソースの割り当ておよび管理を提供する。作業負荷レイヤ66は、クラウドコンピューティング環境を利用することができる機能性の例を提供する。このレイヤから提供可能である作業負荷および機能の例は、マッピングおよびナビゲーション、ソフトウェア開発およびライフサイクル管理、仮想クラスルーム教育配信、データ分析処理、トランザクション処理、およびモバイルデスクトップを含む。SOAシステムでは、作業負荷レイヤにおける作業負荷はサービスとして実装される。図7を参照すると、SOAシステム300または400においてサービスエンドポイントエンジン532および関連するコンポーネントの処理論理によって実行される好適な実施形態のプロセスが示されている。このプロセスは、適切な変更を行って少なくとも完全なサービスリソースを提供する実施形態のために適合させることができる。このプロセスは、SOAシステムの主要コンポーネントに関して、特にサービスレジストリに関して実行されるプロセスステップとして説明する。ステップ702において、サービス要求側54Aはサービスプロバイダにサービスを要求し、この要求をサービスレジストリ304に送出する。例えば、作業負荷66のいずれかのサービスである図6を参照のこと。ステップ704において、サービスレジストリ304は、リポジトリ514内でサービス要求に関連付けられたサービスエンドポイントを検索するが、この実施形態により対処される問題に従い、ここでサービスレジストリは関連付けられたサービスエンドポイントを発見しない。ステップ706において、レジストリ内で正確なサービスエンドポイントの位置は特定されないが、要求されたサービスに関連付けられたサービス情報を用いてサービスプロバイダの位置を特定する。関連付けたサービス情報が存在しない場合、デフォルトのサービスプロバイダの位置を特定する。例えば、サービスプロバイダの名前または汎用的な管理エンドポイント情報をリポジトリに記憶してサービス要求に関連付けることができる。いずれの場合であっても、ステップ706においてサービスプロバイダの位置を特定するかまたは提供する。ステップ708において、位置特定したかまたはデフォルトのサービスプロバイダから、要求されたサービスのためのサービスエンドポイントを要求する。位置特定したかまたはデフォルトのサービスプロバイダ308Nは、ステップ710においてサービス要求を受信し、ステップ712においてサービスをセットアップする。いったんセットアップしたら、サービスプロバイダはセットアップしたサービスをサービスエンドポイントに関連付ける。サービスは、すでにセットアップされており、サービスレジストリが認識していなかった既存のサービスエンドポイントを有する場合がある。サービスは、サービスエンドポイントなしでセットアップされている可能性もあり、この場合サービスプロバイダはサービスエンドポイントをセットアップし関連付けるだけである。サービスがセットアップされていない場合、サービスプロバイダは既知の位置でまたは未知の位置で仮想的にそれをセットアップする。仮想セットアップでは、管理レイヤ64におけるリソース提供は、サーバ、記憶装置、ネットワーク、アプリケーション、およびクライアント、および作業負荷66の必要な仮想化レイヤコンフィギュレーションをセットアップする。サービスエンドポイントが既存であった場合もそうでない場合も、これはステップ714においてレジストリ304に返信される。ステップ716において、レジストリは、受信したサービスエンドポイントに、サービスレジストリに登録されたサービスを関連付ける。ステップ718において、レジストリは、受信したサービスエンドポイントをサービス要求側54Aに送信する。この好適な実施形態においては、サービス要求側54Aは、受信したサービスエンドポイントにおいてサービスプロバイダ302Nからのサービスを要求する。ステップ722において、サービスプロバイダはサービスエンドポイントにおいてサービス要求を受信し、サービス要求側54Aに対するサービス提供を開始する。例えば、移動電話サービス要求側54Aは、サービス要求側が移動する際に、GPSGlobalPositioningSystemデータをログ記録することをマッピングサービスに要求する。かかるGPSデータログ記録サービスの要求702がサービスレジストリに対して行われるが、レジストリはこのサービスに関連付けられた特定のサービスエンドポイントを発見しない。しかしながら、レジストリは、サービスに関連付けられたサービス名GPSマッピングサービスおよびサービスプロバイダTelemapsLoggerを発見する。ステップ708において、サービスレジストリはTelemapsLoggerからサービスエンドポイントを要求する。TelemapsLoggerは、サービスエンドポイント要求を受信し、ステップ712において、例えばIPアドレス192.168.2.3およびポート1200192.168.2.3:1200のようなサービスエンドポイントにおけるGPSマッピングサービスをセットアップまたは発見する。次いでステップ714において、TelemapsLoggerサービスプロバイダは、サービスエンドポイントをサービスレジストリに返信する。サービスレジストリ304は、192.168.2.3:1200をGPSマッピングサービスに関連付け、同一のサービスエンドポイントを移動電話に返信する。次いでステップ720において、移動電話は、受信したサービスエンドポイントを用いてTelemapsLoggerからのサービスを自由に要求する。TelemapsLoggerは、サービスエンドポイント192.168.2.3:1200に要求された場合、GPSマッピングサービスを提供する。例えば、サービスは、移動電話の地理的位置を示すマップデータを送信し、マップデータは移動電話によって移動電話の画面上に描画される。図8を参照すると、本発明の好適な実施形態の実行方法800の図が示されている。方法700と同様に、方法800も、適切な変更を行って完全なサービスリソース提供実施のために適合させることができる。このプロセスは、SOAシステムの主要コンポーネントに関して、特にサービスレジストリに関して実行されるプロセスステップとして説明する。ステップ802において、サービス要求側54Aは、規定の性能レベルを有するサービスをサービスプロバイダに要求し、この要求をサービスレジストリ304に送出する。ステップ804において、サービスレジストリ304は、リポジトリ514内で規定の性能レベルを有しサービス要求に関連付けられたサービスエンドポイントを検索するが、この実施形態により対処される問題に従い、ここではサービスレジストリはかかる関連付けられたサービスエンドポイントを発見しない。サービスを提供するが必要な性能レベルでない1つ以上のサービスエンドポイントが位置特定されると、これらのサービスプロバイダは潜在的なサービスプロバイダリストにリスト化される。サービスエンドポイントを有しない、要求されたサービスに関連付けられたサービスプロバイダが位置特定されると、これらのサービスプロバイダも潜在的なサービスプロバイダリストにリスト化される。ステップ806において、潜在的なサービスプロバイダリスト内のものから第1のサービスプロバイダを選択する。この選択は、必要な性能レベルに対するサービス性能の近さに基づいている。任意に、サービスエンドポイントを有するサービスプロバイダは、有しないものよりも選択の優先度が高い。関連付けられたサービス情報が存在しない場合、デフォルトのサービスプロバイダを選択する。ステップ808において、選択したサービスプロバイダから、要求されたサービスのためのサービスエンドポイントを要求する。ステップ810において、選択したかまたはデフォルトのサービスプロバイダ308Nはサービス要求を受信し、必要なサービス性能を提供することができる場合は、ステップ812において、規定のサービス性能を有するサービスのためのサービスエンドポイントをセットアップする。サービスプロバイダがサービス性能を提供することができない場合、要求は断られ、サービスレジストリはステップ806において別のサービスプロバイダを選択する必要がある。サービスプロバイダがサービスを提供可能である場合、サービスはサービスエンドポイントを用いてすでにセットアップされている場合があるが、適正な性能レベルを得るために追加のコンフィギュレーションが必要である。サービスは、正しいサービス性能レベルですでにセットアップされているが、サービスエンドポイントを有しない場合がある。この場合、サービスプロバイダは、ステップ814において関連するサービスエンドポイントをセットアップし、これを返信するだけで良い。サービスがまだセットアップされていない場合、サービスプロバイダは既知の位置でまたは未知の位置で仮想的にこれをセットアップする。サービスエンドポイントが既存であった場合でもそうでない場合でも、ステップ814においてこれはレジストリ304に返信される。次いでステップ816において、レジストリは、受信したサービスエンドポイントに、規定の性能レベルを有する登録済みのサービスを関連付ける。次いでステップ818において、レジストリは受信したサービスエンドポイントをサービス要求側54Aに送信する。この実施形態では、ステップ820において、サービス要求側54Aは、受信したサービスエンドポイントにおいてサービスプロバイダ308Nからのサービスを要求する。この実施形態では、サービスエンドポイントを規定の性能レベルに関連付けているので、第2の要求で規定の性能レベルを要求する必要がない。他の実施形態では、所与のサービスエンドポイントにおけるサービスは、サービス要求側からの要求に基づいて様々な性能レベルを有することが考えられる。サービスプロバイダは、サービスエンドポイントにおいてサービス要求を受信し、ステップ822において、サービス要求側に対するサービス提供を開始する。例えば、移動電話サービス要求側54Aは、サービス要求側が移動して、GPSデータをログ記録することをマッピングサービスに要求し、1秒またはもっと短い更新を要求する。この例では、1秒の更新では我々の要求側デフォルトGPSサービスは除外される。かかるGPSデータログ記録サービスの要求802がサービスレジストリにされるが、レジストリはこのサービスに関連付けられた特定のサービスエンドポイントを発見しない。しかしながら、レジストリは、その精度が0.8秒更新である特性を有するユーロGPSマッピングサービスという名前のサービスを発見し、レジストリは0.8秒が1秒よりも短いことを理解する。従って、サービスプロバイダEuroMapLoggerがサービスに関連付けられる。ステップ808において、サービスレジストリはEuroMapLoggerからサービスエンドポイントを要求する。EuroMapLoggerは、サービスエンドポイント要求を受信し、ステップ812において、セットアップを行い、または、例えばIPアドレス214.168.2.3およびポート2400214.168.2.3:2400のようなサービスエンドポイントにおけるユーロGPSマッピングサービスを発見する。次いでステップ814において、EuroMapLoggerサービスプロバイダは、サービスエンドポイントをサービスレジストリに返信する。サービスレジストリ304は、214.168.2.3:2400をユーロGPSマッピングサービスに関連付け、同一のサービスエンドポイントを移動電話に返信する。次いでステップ820において、移動電話は、受信したサービスエンドポイントを用いてEuroMapsLoggerからのサービスを自由に要求する。EuroMapsLoggerは、サービスエンドポイント214.168.2.3:2400に要求された場合、ユーロGPSマッピングサービスを提供する。例えば、サービスは、移動電話の地理的位置を示すマップデータを送信し、マップデータは移動電話によって移動電話の画面に描画される。図9を参照すると、本発明のサービスレジストリプロキシ実施形態の検索方法900の図が示されている。方法700および800と同様に、方法900も、適切な変更を行って完全なサービスリソース提供実施形態のために適合させることができる。このプロセスは、SOAシステムの主要コンポーネントに関して、特にサービスレジストリに関して実行されるプロセスステップとして説明する。サービス要求側54Aは、第1のサービスレジストリ304Aからのサービスをサービスプロバイダに要求する。ステップ904において、サービスレジストリ304Aは、リポジトリ514内でサービス要求に関連付けられたサービスエンドポイントを検索するが、この実施形態により対処される問題に従い、ここで第1のサービスレジストリ304Aは関連付けられたサービスエンドポイントを発見しない。関連付けられたサービス情報が存在しない場合、以前の実施形態に従ってデフォルトのサービスプロバイダを位置特定することができる。この実施形態では、サービスレジストリ304Aは、デフォルトのサービスプロバイダを用いるか、または要求を以降のサービスレジストリに転送するかを決定する。サービスレジストリは、位置特定したサービスプロバイダの各々について適合度relevanceの値を発生する検索アルゴリズムを用い、この適合度が閾値未満であると共に問い合わせる第2のまたはそれ以降のサービスレジストリがある場合には、ステップ908においてサービスレジストリ304Aは第2のまたはそれ以降のサービスレジストリ304Bからサービスプロバイダを要求する。また、第1のサービスレジストリが位置特定したサービス情報も第2のまたはそれ以降のレジストリに送信して、第2のまたはそれ以降のレジストリがサービスプロバイダを選択した際に一つにまとめたサービス情報を用いることを可能とする。ステップ910において、第2のまたはそれ以降のサービスレジストリ304Bは、レジストリ内でサービス要求に関連付けられたサービスエンドポイントを検索する。正確な一致が発見された場合には、サービスエンドポイントを第1のサービスレジストリ304Aに返信し、プロセスはステップ920に継続する。正確な一致が発見されない場合、ステップ912において、第2のサービスレジストリは位置特定したサービスプロバイダまたはデフォルトのサービスプロバイダを選択する。第2のサービスレジストリ304Bは、検索の適合度に基づいて以降のサービスレジストリを選択することができるが、これは図示しない。ステップ914において、選択したサービスプロバイダから、要求されたサービスのためのサービスエンドポイントを要求する。選択したサービスプロバイダ308Nは、サービス要求を受信してサービスをセットアップする。いったんセットアップされると、サービスプロバイダはサービスをサービスエンドポイントに関連付ける。サービスエンドポイントは第2のサービスレジストリ304Bに返信される。次いでステップ916において、第2のサービスレジストリ304Bは、受信したサービスエンドポイントに登録済みのサービスを関連付ける。次いでステップ918において、第2のサービスレジストリ304Bは、受信したサービスエンドポイントを第1のサービスレジストリ304Aに送信する。ステップ920において、第1のサービスレジストリ304Aは、受信したサービスエンドポイントに登録済みのサービスを関連付ける。ステップ922において、第1のサービスレジストリ304Aは、受信したサービスエンドポイントをサービス要求側54Aに送信する。サービス要求側54Aは、受信したサービスエンドポイント図示せずにおいてサービスプロバイダ302Nからのサービスを要求する。サービスプロバイダは、サービスエンドポイントにおいてサービス要求を受信し、サービス要求側に対するサービス提供を開始する図示せず。要約すると、サービス指向アーキテクチャSOAに合致するシステム内でのサービスベースの展開のための方法、システム、およびコンピュータプログラムについて説明した。この方法、システム、およびコンピュータプログラムは、サービス指向アーキテクチャシステム内でサービスを提供するためのシステム内のサービスレジストリにより動作可能であり、このシステムにおいてサービス要求側からサービスの要求を受信するステップと、サービスレジストリに登録されているサービスのステータスを調べるステップと、を含み、サービスが登録されたサービスエンドポイントを有しないか、またはサービスの特性が既定の閾値未満であることに応答して、1つ以上のサービスプロバイダまたは以降のサービスレジストリに新しいサービスを提供する要求を送信し、サービスプロバイダが新しいサービスを提供することに応答して、サービスレジストリを新しいサービスによって更新して、サービスが利用可能であることをサービス要求側に応答することと、によって特徴付けられる。これらの実施形態によって、要求側とプロバイダとのインタラクション間の直接インタラクションおよびサービス管理レイヤを介した間接インタラクションの双方が可能となる。また、これらの実施形態によって、サービスプロバイダを仮想サーバとして提供可能となり、サービスを仮想アプリケーションとして提供可能となる。更に別の実施形態本発明の好適な実施形態の方法の全てまたは一部は、この方法のステップを実行するように構成された論理要素を含む1つの論理装置または複数の論理装置において適切かつ有用に具現化することができること、ならびに、かかる論理要素はハードウェアコンポーネント、ファームウェアコンポーネント、またはそれらの組み合わせを含むことができることは、当業者には明らかであろう。本発明の好適な実施形態に従った論理構成の全てまたは一部は、この方法のステップを実行する論理要素を含む論理装置において適切に具現化することができること、ならびに、かかる論理要素は、例えばプログラマブル論理アレイまたは特定用途向け集積回路における論理ゲート等のコンポーネントを含むことができることは、当業者には明らかであろう。かかる論理構成は更に、固定または送信可能キャリア媒体を用いて記憶および送信可能な、例えば仮想ハードウェア記述子言語を用いて、かかるアレイまたは回路において一時的または永久的に論理構造を確立するための可能化要素enablingelementにおいて具現化することも可能である。また、上述の方法および構成は、1つ以上のプロセッサ図には示していない上で動作するソフトウェアにおいて完全にまたは部分的に適切に実行可能であること、ならびに、このソフトウェアは、磁気ディスクまたは光ディスク等のいずれかの適切なデータキャリアこれも図には示していない上で搬送される1つ以上のコンピュータプログラム要素の形態で提供可能であることは認められよう。データ送信のためのチャネルは同様に、全ての記述の記憶媒体、および有線または無線の信号搬送媒体等の信号搬送媒体を含むことができる。本発明は更に、コンピュータシステムと共に用いるためのコンピュータプログラムとして適切に具現化することができる。かかる実施は、一連のコンピュータ読み取り可能命令を含むことができ、この命令は、例えばディスケット、CD-ROM、ROM、もしくはハードディスクのようなコンピュータ読み取り可能媒体等のタンジブルな媒体上に固定されているか、またはモデムもしくは他のインタフェースデバイスを用いて、限定ではないが光もしくはアナログ通信ラインを含むタンジブルな媒体上で、または限定ではないがマイクロ波、赤外線、もしくは他の伝送技法を含む無線技法を用いてインタンジブルにintagiblyコンピュータシステムに送信可能である。一連のコンピュータ読み取り可能命令は、本明細書に前述した機能性の全てまたは一部を具現化する。かかるコンピュータ読み取り可能命令は、多くのコンピュータアーキテクチャまたはオペレーティングシステムと共に用いるための多数のプログラミング言語で記述することができることは、当業者には認められよう。更に、かかる命令は、限定ではないが、半導体、磁気、もしくは光を含む現在もしくは今後のいずれかのメモリ技術を用いて記憶するか、または限定ではないが光、赤外線、もしくはマイクロ波を含む現在もしくは今後のいずれかの通信技術を用いて送信することができる。かかるコンピュータプログラムは、例えばシュリンクラップソフトウェアのような、印刷文書または電子文書が添付された着脱可能媒体として分配可能であるか、または、例えばシステムROMもしくは固定ディスク上のように、コンピュータシステムにプリロードされるか、インターネットもしくはワールドワイドウェブのようなネットワーク上でサーバもしくは電子掲示板から配布可能であることが考えられる。代替案においては、本発明の好適な実施形態は、サービスを展開するコンピュータ実装方法の形態で実現可能である。この方法は、コンピュータプログラムコードを展開させ、コンピュータインフラストラクチャにおいて展開されてそこで実行された場合にコンピュータシステムにこの方法の全てのステップを実行させるように動作する方法を含む。更に別の代替案においては、本発明の好適な実施形態は、機能データを有するデータキャリアの形態で実現可能である。前記機能データは、コンピュータシステムにおいてロードされてそれによって動作されると前記コンピュータシステムがこの方法の全てのステップを実行することを可能とする機能コンピュータデータ構造を含む。本発明の範囲から逸脱することなく、前述の例示的な実施形態に多くの改良および変更を実施可能であることは、当業者には明らかであろう。注記BladeCenter、DB2、IBM、Lotus、Tivoli、pSeries、WebSphere、xSeriesおよびzSeriesは、米国または他の国々あるいはその両方におけるインターナショナルビジネスマシーンズコーポレーションの登録商標または商標である。Javaおよび全てのJavaベースの商標およびロゴは、オラクルまたはその関連会社あるいはその両方の商標または登録商標である。"