"サービスプロバイダを使用してエンドユーザにサービスを提供するサービスコンシューマから当該サービスプロバイダにメソッドを送信する方法であって、サービスプロバイダが提供するサービスおよび/または当該サービスプロバイダの品質または状態を表す情報であって前記サービスコンシューマがサービスプロバイダを選択する際の基準となる資源情報を複数のサービスプロバイダについて共通の形式で表した評価テーブルを取得するステップと、取得された前記評価テーブルを参照することにより、前記サービスコンシューマが呼び出すメソッドごとに、当該メソッドに関して当該サービスコンシューマが要求するサービスレベルを満たすサービスプロバイダを前記複数のサービスプロバイダの中から抽出するステップと、前記サービスコンシューマがメソッドを呼び出すときに、当該メソッドを当該メソッドについて抽出されたサービスプロバイダに対する命令に変換して、当該命令を当該サービスプロバイダに送信するステップとを含む、方法。前記複数のサービスプロバイダのいずれかの前記資源情報に変更があるたびに前記評価テーブルを更新するステップをさらに含み、前記取得するステップでは、更新された前記評価テーブルを取得する、請求項1の方法。前記抽出するステップでは、前記複数のサービスプロバイダのうちの一のサービスプロバイダに障害が発生した場合に、当該一のサービスプロバイダが利用不能であることを示す資源情報が反映された前記評価テーブルを参照することにより、前記サービスコンシューマが呼び出すメソッドごとに、当該一のサービスプロバイダを除いて当該複数のサービスプロバイダの中から前記サービスレベルを満たすサービスプロバイダを抽出する、請求項2の方法。前記抽出するステップでは、取得された前記評価テーブルを参照することにより、前記サービスコンシューマが呼び出すメソッドごとに、当該メソッドに関連するものとして予め定義されている前記資源情報の項目である関連項目に関して当該サービスコンシューマが要求するサービスレベルを満たすサービスプロバイダを、前記複数のサービスプロバイダの中から抽出する、請求項1ないし請求項3のいずれかの方法。前記抽出するステップでは、取得された前記評価テーブルを参照することにより、前記サービスコンシューマが呼び出すメソッドごとに、サービスプロバイダが提供するサービスの品質に影響を与え得る当該サービスプロバイダの状態を表す情報の項目を含む当該メソッドの前記関連項目に関して当該サービスコンシューマが要求するサービスレベルを満たすサービスプロバイダを、前記複数のサービスプロバイダの中から抽出する、請求項4の方法。サービスプロバイダを使用してエンドユーザにサービスを提供するサービスコンシューマから当該サービスプロバイダにメソッドを送信する方法であって、サービスプロバイダが提供するサービスおよび/または当該サービスプロバイダの品質または状態を表す情報であって前記サービスコンシューマがサービスプロバイダを選択する際の基準となる資源情報を、予め定めた期間ごとに複数のサービスプロバイダのそれぞれから取得するステップと、前記資源情報を前記複数のサービスプロバイダについて共通の形式で表した評価テーブルを、取得された最新の前記資源情報に基づいて作成または更新するステップと、前記評価テーブルが更新されるたびに、更新された当該評価テーブルを取得するステップと、更新された前記評価テーブルを取得したことに応じて、当該評価テーブルを参照することにより、前記サービスコンシューマが呼び出すメソッドごとに、当該メソッドに関連するものとして予め定義されている前記資源情報の項目であってサービスプロバイダが提供するサービスの品質に影響を与え得る当該サービスプロバイダの状態を表す情報の項目を含む当該メソッドの関連項目に関して当該サービスコンシューマが要求するサービスレベルを満たすサービスプロバイダを、前記複数のサービスプロバイダの中から抽出するステップと、前記サービスコンシューマがメソッドを呼び出すときに、当該メソッドを当該メソッドについて抽出されたサービスプロバイダに対する命令に変換して、当該命令を当該サービスプロバイダに送信するステップとを含み、前記抽出するステップでは、前記複数のサービスプロバイダのうちの一のサービスプロバイダに障害が発生した場合に、当該一のサービスプロバイダが利用不能であることを示す資源情報が反映された前記評価テーブルを参照することにより、前記サービスコンシューマが呼び出すメソッドごとに、当該一のサービスプロバイダを除いて当該複数のサービスプロバイダの中から前記サービスレベルを満たすサービスプロバイダを抽出する、方法。サービスプロバイダを使用してエンドユーザにサービスを提供するサービスコンシューマと、サービスプロバイダが提供するサービスおよび/または当該サービスプロバイダの品質または状態を表す情報であって前記サービスコンシューマがサービスプロバイダを選択する際の基準となる資源情報を複数のサービスプロバイダについて共通の形式で表した評価テーブルを提供するサービスディレクトリとを備え、前記サービスコンシューマが、前記サービスディレクトリから前記評価テーブルを取得するテーブル取得部と、前記テーブル取得部が取得した前記評価テーブルを参照することにより、自装置が呼び出すメソッドごとに、当該メソッドに関して自装置が要求するサービスレベルを満たすサービスプロバイダを前記複数のサービスプロバイダの中から抽出する処理を行う抽出部と、自装置がメソッドを呼び出すときに、当該メソッドを当該メソッドについて抽出されたサービスプロバイダに対する命令に変換して、当該命令を当該サービスプロバイダに送信する変換部とを備える、コンピュータシステム。予め定めた期間ごとに前記複数のサービスプロバイダのそれぞれから前記資源情報を取得する資源情報取得部と、前記資源情報取得部が取得した最新の前記資源情報に基づいて前記評価テーブルを作成または更新する作成部と、前記作成部が作成または更新した前記評価テーブルを前記サービスコンシューマに通知する通知部とを前記サービスディレクトリが備える、請求項7のコンピュータシステム。前記テーブル取得部が新たな前記評価テーブルを取得したことに応じて前記抽出部が前記抽出する処理を行う、請求項8のコンピュータシステム。サービスプロバイダを使用してエンドユーザにサービスを提供するコンピュータであって、サービスプロバイダが提供するサービスおよび/または当該サービスプロバイダの品質または状態を表す情報であって自装置がサービスプロバイダを選択する際の基準となる資源情報を複数のサービスプロバイダについて共通の形式で表した評価テーブルを取得するテーブル取得部と、前記テーブル取得部が取得した前記評価テーブルを参照することにより、自装置が呼び出すメソッドごとに、当該メソッドに関して自装置が要求するサービスレベルを満たすサービスプロバイダを前記複数のサービスプロバイダの中から抽出する処理を行う抽出部と、自装置がメソッドを呼び出すときに、当該メソッドを当該メソッドについて抽出されたサービスプロバイダに対する命令に変換して、当該命令を当該サービスプロバイダに送信する変換部とを備える、コンピュータ。予め定めた期間ごとに前記複数のサービスプロバイダのそれぞれから取得された最新の前記資源情報に基づいて作成または更新された前記評価テーブルを前記テーブル取得部が取得し、前記テーブル取得部が新たな前記評価テーブルを取得したことに応じて前記抽出部が前記抽出する処理を行う、請求項10のコンピュータ。サービスプロバイダを使用してエンドユーザにサービスを提供するサービスコンシューマに複数のサービスプロバイダについての評価テーブルを提供するコンピュータであって、サービスプロバイダが提供するサービスおよび/または当該サービスプロバイダの品質または状態を表す情報であって前記サービスコンシューマがサービスプロバイダを選択する際の基準となる資源情報を、予め定めた期間ごとに前記複数のサービスプロバイダのそれぞれから取得する資源情報取得部と、前記資源情報を前記複数のサービスプロバイダについて共通の形式で表した前記評価テーブルを、前記資源情報取得部が取得した最新の前記資源情報に基づいて作成または更新する作成部と、前記作成部が作成または更新した前記評価テーブルを前記サービスコンシューマに通知する通知部とを備える、コンピュータ。サービスプロバイダを使用してエンドユーザにサービスを提供するコンピュータが当該サービスプロバイダにメソッドを送信するように機能させるプログラムであって、前記コンピュータを、サービスプロバイダが提供するサービスおよび/または当該サービスプロバイダの品質または状態を表す情報であって前記コンピュータがサービスプロバイダを選択する際の基準となる資源情報を複数のサービスプロバイダについて共通の形式で表した評価テーブルを取得するテーブル取得部と、前記テーブル取得部が取得した前記評価テーブルを参照することにより、前記コンピュータが呼び出すメソッドごとに、当該メソッドに関して当該コンピュータが要求するサービスレベルを満たすサービスプロバイダを前記複数のサービスプロバイダの中から抽出する抽出部と、前記コンピュータがメソッドを呼び出すときに、当該メソッドを当該メソッドについて抽出されたサービスプロバイダに対する命令に変換して、当該命令を当該サービスプロバイダに送信する変換部として機能させる、プログラム。様々なサービスプロバイダが、インターネットなどのネットワークを介して、ソフトウェアやデータなどをサービスの形で提供している。サービスコンシューマは、サービスプロバイダが提供するインフラストラクチャを使って、自己が提供するサービス用のアプリケーションを構築する。1つのサービスプロバイダのみに依存してアプリケーションを構築することはサービスコンシューマにとってリスクが大きいため、複数のサービスプロバイダを使用してリスクを分散する形態が注目を浴びている。そうした形態では、アプリケーションを構築して稼働した後でも、サービスコンシューマは随時最適なサービスプロバイダを選択して使用していくことが望ましい。本発明の目的は、複数のサービスプロバイダを使用可能なサービスコンシューマが、アプリケーションの実行時に呼び出すそれぞれのメソッドについて、要求するサービスレベルを満たすサービスプロバイダを動的に選択できるようにすることにある。かかる目的のもと、本発明の第1の態様は、サービスプロバイダを使用してエンドユーザにサービスを提供するサービスコンシューマからサービスプロバイダにメソッドを送信する方法であって、サービスプロバイダが提供するサービスおよび/またはサービスプロバイダの品質または状態を表す情報であってサービスコンシューマがサービスプロバイダを選択する際の基準となる資源情報を複数のサービスプロバイダについて共通の形式で表した評価テーブルを取得するステップと、取得された評価テーブルを参照することにより、サービスコンシューマが呼び出すメソッドごとに、メソッドに関してサービスコンシューマが要求するサービスレベルを満たすサービスプロバイダを複数のサービスプロバイダの中から抽出するステップと、サービスコンシューマがメソッドを呼び出すときに、メソッドをメソッドについて抽出されたサービスプロバイダに対する命令に変換して、命令をサービスプロバイダに送信するステップとを含む、方法を提供する。本発明の第2の態様は、複数のサービスプロバイダのいずれかの資源情報に変更があるたびに評価テーブルを更新するステップをさらに含み、取得するステップでは、更新された評価テーブルを取得する、第1の態様の方法を提供する。本発明の第3の態様は、抽出するステップでは、複数のサービスプロバイダのうちの一のサービスプロバイダに障害が発生した場合に、一のサービスプロバイダが利用不能であることを示す資源情報が反映された評価テーブルを参照することにより、サービスコンシューマが呼び出すメソッドごとに、一のサービスプロバイダを除いて複数のサービスプロバイダの中からサービスレベルを満たすサービスプロバイダを抽出する、第2の態様の方法を提供する。本発明の第4の態様は、抽出するステップでは、取得された評価テーブルを参照することにより、サービスコンシューマが呼び出すメソッドごとに、メソッドに関連するものとして予め定義されている資源情報の項目である関連項目に関してサービスコンシューマが要求するサービスレベルを満たすサービスプロバイダを、複数のサービスプロバイダの中から抽出する、第1の態様ないし第3の態様のいずれかの方法を提供する。本発明の第5の態様は、抽出するステップでは、取得された評価テーブルを参照することにより、サービスコンシューマが呼び出すメソッドごとに、サービスプロバイダが提供するサービスの品質に影響を与え得るサービスプロバイダの状態を表す情報の項目を含むメソッドの関連項目に関してサービスコンシューマが要求するサービスレベルを満たすサービスプロバイダを、複数のサービスプロバイダの中から抽出する、第4の態様の方法を提供する。本発明の第6の態様は、サービスプロバイダを使用してエンドユーザにサービスを提供するサービスコンシューマからサービスプロバイダにメソッドを送信する方法であって、サービスプロバイダが提供するサービスおよび/またはサービスプロバイダの品質または状態を表す情報であってサービスコンシューマがサービスプロバイダを選択する際の基準となる資源情報を、予め定めた期間ごとに複数のサービスプロバイダのそれぞれから取得するステップと、資源情報を複数のサービスプロバイダについて共通の形式で表した評価テーブルを、取得された最新の資源情報に基づいて作成または更新するステップと、評価テーブルが更新されるたびに、更新された評価テーブルを取得するステップと、更新された評価テーブルを取得したことに応じて、評価テーブルを参照することにより、サービスコンシューマが呼び出すメソッドごとに、メソッドに関連するものとして予め定義されている資源情報の項目であってサービスプロバイダが提供するサービスの品質に影響を与え得るサービスプロバイダの状態を表す情報の項目を含むメソッドの関連項目に関してサービスコンシューマが要求するサービスレベルを満たすサービスプロバイダを、複数のサービスプロバイダの中から抽出するステップと、サービスコンシューマがメソッドを呼び出すときに、メソッドをメソッドについて抽出されたサービスプロバイダに対する命令に変換して、命令をサービスプロバイダに送信するステップとを含み、抽出するステップでは、複数のサービスプロバイダのうちの一のサービスプロバイダに障害が発生した場合に、一のサービスプロバイダが利用不能であることを示す資源情報が反映された評価テーブルを参照することにより、サービスコンシューマが呼び出すメソッドごとに、一のサービスプロバイダを除いて複数のサービスプロバイダの中からサービスレベルを満たすサービスプロバイダを抽出する、方法を提供する。本発明の第7の態様は、サービスプロバイダを使用してエンドユーザにサービスを提供するサービスコンシューマと、サービスプロバイダが提供するサービスおよび/またはサービスプロバイダの品質または状態を表す情報であってサービスコンシューマがサービスプロバイダを選択する際の基準となる資源情報を複数のサービスプロバイダについて共通の形式で表した評価テーブルを提供するサービスディレクトリとを備え、サービスコンシューマが、サービスディレクトリから評価テーブルを取得するテーブル取得部と、テーブル取得部が取得した評価テーブルを参照することにより、自装置が呼び出すメソッドごとに、メソッドに関して自装置が要求するサービスレベルを満たすサービスプロバイダを複数のサービスプロバイダの中から抽出する処理を行う抽出部と、自装置がメソッドを呼び出すときに、メソッドをメソッドについて抽出されたサービスプロバイダに対する命令に変換して、命令をサービスプロバイダに送信する変換部とを備える、コンピュータシステムを提供する。本発明の第8の態様は、予め定めた期間ごとに複数のサービスプロバイダのそれぞれから資源情報を取得する資源情報取得部と、資源情報取得部が取得した最新の資源情報に基づいて評価テーブルを作成または更新する作成部と、作成部が作成または更新した評価テーブルをサービスコンシューマに通知する通知部とをサービスディレクトリが備える、第7の態様のコンピュータシステムを提供する。本発明の第9の態様は、テーブル取得部が新たな評価テーブルを取得したことに応じて抽出部が抽出する処理を行う、第8の態様のコンピュータシステムである。本発明の第10の態様は、サービスプロバイダを使用してエンドユーザにサービスを提供するコンピュータであって、サービスプロバイダが提供するサービスおよび/またはサービスプロバイダの品質または状態を表す情報であって自装置がサービスプロバイダを選択する際の基準となる資源情報を複数のサービスプロバイダについて共通の形式で表した評価テーブルを取得するテーブル取得部と、テーブル取得部が取得した評価テーブルを参照することにより、自装置が呼び出すメソッドごとに、メソッドに関して自装置が要求するサービスレベルを満たすサービスプロバイダを複数のサービスプロバイダの中から抽出する処理を行う抽出部と、自装置がメソッドを呼び出すときに、メソッドをメソッドについて抽出されたサービスプロバイダに対する命令に変換して、命令をサービスプロバイダに送信する変換部とを備える、コンピュータを提供する。本発明の第11の態様は、予め定めた期間ごとに複数のサービスプロバイダのそれぞれから取得された最新の資源情報に基づいて作成または更新された評価テーブルをテーブル取得部が取得し、テーブル取得部が新たな評価テーブルを取得したことに応じて抽出部が抽出する処理を行う、第10の態様のコンピュータを提供する。本発明の第12の態様は、サービスプロバイダを使用してエンドユーザにサービスを提供するサービスコンシューマに複数のサービスプロバイダについての評価テーブルを提供するコンピュータであって、サービスプロバイダが提供するサービスおよび/またはサービスプロバイダの品質または状態を表す情報であってサービスコンシューマがサービスプロバイダを選択する際の基準となる資源情報を、予め定めた期間ごとに複数のサービスプロバイダのそれぞれから取得する資源情報取得部と、資源情報を複数のサービスプロバイダについて共通の形式で表した評価テーブルを、資源情報取得部が取得した最新の資源情報に基づいて作成または更新する作成部と、作成部が作成または更新した評価テーブルをサービスコンシューマに通知する通知部とを備える、コンピュータを提供する。本発明の第13の態様は、サービスプロバイダを使用してエンドユーザにサービスを提供するコンピュータがサービスプロバイダにメソッドを送信するように機能させるプログラムであって、コンピュータを、サービスプロバイダが提供するサービスおよび/またはサービスプロバイダの品質または状態を表す情報であってコンピュータがサービスプロバイダを選択する際の基準となる資源情報を複数のサービスプロバイダについて共通の形式で表した評価テーブルを取得するテーブル取得部と、テーブル取得部が取得した評価テーブルを参照することにより、コンピュータが呼び出すメソッドごとに、メソッドに関してコンピュータが要求するサービスレベルを満たすサービスプロバイダを複数のサービスプロバイダの中から抽出する抽出部と、コンピュータがメソッドを呼び出すときに、メソッドをメソッドについて抽出されたサービスプロバイダに対する命令に変換して、命令をサービスプロバイダに送信する変換部として機能させる、プログラムを提供する。本発明によれば、複数のサービスプロバイダを使用可能なサービスコンシューマが、アプリケーションの実行時に呼び出すそれぞれのメソッドについて、要求するサービスレベルを満たすサービスプロバイダを動的に選択できるようになる。以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。図1は、本発明の実施の形態におけるコンピュータシステムの構成例を示した図である。図示するように、このコンピュータシステムは、エンドユーザクライアント10と、クラウドサービスコンシューマ以下、CSCという20と、クラウドサービスプロバイダ以下、CSPという30と、クラウドサービスディレクトリ以下、CSDという40とを含む。各エンドユーザ10、各CSC20、各CSP30およびCSD40は、インターネットなどのネットワークを介して接続されている。CSC20は1つでも複数でもよいが、CSP30は複数一般には多数ある場合を考える。図1では2つのCSC20と4つのCSP30を示しているが、この数は一例である。以下では、これらのCSC20とCSP30をそれぞれ区別して、CSC1,CSC2,CSP1,CSP2,CSP3,CSP4と書くこともある。エンドユーザ10クライアントは、例えばPCなどの端末である。エンドユーザ10は、各CSC20のアプリケーションにアクセスして、そのCSC20が提供するサービスを利用する。CSC20は、各CSP30が提供するインフラストラクチャを使って構築したアプリケーションにより、自己のサービスをエンドユーザ10に提供するサーバ装置である。CSC20の例としては、金融機関や、市役所、小売業者などがある。CSP30は、ネットワークを介してソフトウェアやデータなどをサービスの形で各CSC20に提供するサーバ装置である。CSP30の例としては、Amazon.Com,Inc.や、GoogleInc.、MicrosoftCorporationなどがある。本実施の形態では、複数のCSP30により実現される図1のコンピュータシステムのような形態のことを、マルチクラウドと呼ぶ。CSD40は、各CSP30の資源情報をまとめてネットワーク上で公開するサーバ装置である。この資源情報は、CSP30が提供するサービスおよび/またはCSP30の品質または状態を表す情報であって、CSC20がCSP30を選択する際の基準となる情報である。資源情報には、例えば、各CSP30が提供するサービスの情報サービスの種類や、パフォーマンス、セキュリティの程度など、各CSP30の稼働状況の情報稼働/停止や、故障の有無、電力効率など、各CSP30の経営状態サービスの継続性の情報などがある。CSD40は、言わば第三者の立場から各CSP30を評価する役割を果たす。ところで、CSC20が複数のCSP30を共通のAPIApplicationProgramInterfaceで利用できるようにした、メタクラウドAPIというライブラリがいくつか発表されている。これにより、CSC20の開発者は、どのCSP30でも動作するアプリケーションを、標準化されたAPIで記述できるようになる。しかし、メタクラウドAPIでは、CSP30に対してメソッドを使用する際にどのCSP30を対象とするかをパラメータとして与える必要がある。現状では、マルチクラウドに対応したCSC20のアプリケーションを開発し、その稼動後にもCSC20が常に最適なCSP30を使用するようにするには、以下のようなステップが考えられる。まず、CSD40が提供する各CSP30の資源情報を参考にしつつ、メソッドごとにどのCSP30が最適かを開発者が考慮し、CSP30指定のパラメータを与えてメタクラウドAPIを使用することにより、アプリケーションを開発する。そして、アプリケーションの稼動後に開発者がCSD40の情報を参照してより最適なCSP30を見つけた場合には、メタクラウドAPIに渡すCSP30指定のパラメータを変更するためにアプリケーションを書き換え、そのアプリケーションに置き換えることで、新たな組み合わせでCSP30を使用する。このように、現状ではメソッドとCSP30の対応がアプリケーション開発時に静的に決定されてしまうので、CSP30を動的に選択するためには以下のような課題がある。まず、アプリケーション稼動後は、定期的にCSC20の担当者がCSD40をチェックし、現在使用しているCSP30と逐一比較し、メソッドとCSP30の組み合わせが現時点で最適かどうかを判断しなければならない。また、使用するCSP30を変更する必要がある場合は、その度にコードを書き換え、稼動中のアプリケーションを止めて置き換えるため、大きな工数とリスクが発生する。このため、最適なCSP30を担当者が判断するのではなく、CSC20が随時最適なCSP30を選択して使用してくことが望ましい。このような目的で従来一般に行われている動的最適化の技術には、ワークロードバランシングなどがある。これは、タスクのディスパッチャまたはそれに準じるものが適宜各リソースのパフォーマンスなどをチェックし、タスクの割り当てなどを動的に行うものである。しかし、こうした技術をCSP30の選択に適用するには、以下のような課題がある。まず、ディスパッチャによりCSP30のパフォーマンスをチェックするには、そのCSP30と契約して評価用のアカウントをとらなければならない。このため、パフォーマンスなどを動的にチェックするには、現在使用していないCSP30も含め、対象となる可能性のあるすべてのCSP30についてそのユーザアカウントを取得しなければならず、取得コストや管理コストが余分に発生する。また、CSP30の評価にはCSP30の経営状態なども影響し得るが、ディスパッチャなどの従来の手段ではこうしたパラメータを取得することができない。そこで本実施の形態では、提供されるサービスの品質についての情報だけでなく、サービスの品質に影響を与え得る経営状態などの情報も含めたCSP30の評価を、複数のCSP30について共通の形式でCSD40がネットワーク上に提供する。そして、CSC20の使用するAPIレベルで各CSC20が動的に適切なCSP30を判断し、そのCSP30を使用することができるフレームワークを提供する。すなわち、本実施の形態では、マルチクラウド環境におけるCSC20のアプリケーションが、各CSP30を意識することなく、各メソッドについて現時点で適切なCSP30を自らリアルタイムに選択して、そのCSP30にリクエストを発行することができるライブラリを提供する。図2は、本発明の実施の形態におけるCSC20の機能構成例を示したブロック図である。図示するように、CSC20は、アプリケーション50と、CSP選択ライブラリ60を含む。CSP選択ライブラリ60は、エンドユーザ10からのリクエストに対して適切なCSP30を動的に判断して割り振るための、メタクラウドAPIのライブラリである。アプリケーション50は、CSC20が自己のサービスをエンドユーザ10に提供するために実行される。アプリケーション50は、例えばJSPJavaServerPages51とサーブレット52により実現され、要求テーブル53を含む。要求テーブル53は、CSC20が要求するサービスレベルを、CSP選択ライブラリ60用にXML等の形式で記載したテーブルである。各CSC20は、自己のアプリケーション50にはどの程度のパフォーマンスやセキュリティレベルなどが必要かということを資源情報の項目ごとに予め定義し、その情報を要求テーブル53として保持しておく。要求テーブル53は、アプリケーション50の起動時などに、CSP選択ライブラリ60の要求テーブルロード用メソッドによりロードされる。CSP選択ライブラリ60は、CSC20が要求するサービスレベルの情報と、CSD40が提供する資源情報を動的に取得解析し、各メソッドリクエストに対して適切なCSP30の情報をライブラリ内部で作成し、メソッドの実行をその適切なCSP30に対して行う。CSP選択ライブラリ60は、評価テーブル取得部61と、関連テーブル62と、照合部63と、分配テーブル64と、CSP選択部65とを含む。評価テーブル取得部61は、各CSP30のサービスレベル項目の評価をCSP選択ライブラリ60用にXML等の形で表したテーブルである評価テーブル42後述する図3を参照を、ネットワークを介してCSD40から取得する。本実施の形態では、評価テーブルを取得するテーブル取得部の一例として評価テーブル取得部61を設けている。関連テーブル62は、アプリケーション50の実行時に呼び出されるそれぞれのメソッドについて、関連するサービスレベルの項目をXML等の形式で記載したテーブルである。すなわち、関連テーブル62は、要求テーブル53に載っている資源情報の項目のうち、あるメソッドを呼び出す際にCSC20が要求するサービスレベルが確保されるべき項目を、それぞれのメソッドについて予め定義したものである。照合部63は、要求テーブル53と、関連テーブル62と、評価テーブル取得部61が取得した評価テーブル42とを照合して、後述する分配テーブル64を作成する。その際、照合部63は、それぞれのテーブルを照合することにより、あるメソッドに関連するものとして関連テーブル62で定義されている資源情報の項目のすべてに関して要求テーブル53で要求されているサービスレベルを満たすCSP30を、それぞれのメソッドについて抽出する。本実施の形態では、サービスプロバイダを抽出する抽出部の一例として、照合部63を設けている。分配テーブル64は、各メソッドについて適切なCSP30をXML等の形式で記載したテーブルである。ここでの適切とは、あるメソッドに関連するものとして関連テーブル62で定義されている資源情報の項目のすべてが、要求テーブル53にて要求されているサービスレベルを満たしている状態のことをいう。分配テーブル64は、アプリケーション50の起動時などの特定のタイミングでCSC20がCSP選択ライブラリ60の分配テーブル作成メソッドを呼び出すことにより、CSP選択ライブラリ60が内部的に作成する。CSP選択部65は、アプリケーション50の実行によりあるメソッドが呼び出されるときに、分配テーブル64を参照することにより、そのメソッドについて適切なCSP30を選択する。そしてCSP選択部65は、CSP選択ライブラリ60のAPIを使い、そのメソッドをその適切なCSP30に対する命令に変換してそのCSP30に送る。本実施の形態では、抽出されたサービスプロバイダに対する命令にメソッドを変換して送信する変換部の一例として、CSP選択部65を設けている。図3は、本発明の実施の形態におけるCSD40の機能構成例を示したブロック図である。図示するように、CSD40は、CSP情報取得部41と、評価テーブル42と、評価テーブル通知部43とを含む。CSP情報取得部41は、各CSP30図1の例では、CSP1~CSP4から、ネットワークを介して、上述したような資源情報を取得する。この取得のためには、予め定めた期間ごとに各CSP30がCSD40に資源情報を送信してもよいし、または、いずれかのCSP30の資源情報に変更があるたびに、そのCSP30がCSD40に資源情報を送信してもよい。本実施の形態では、資源情報を取得する資源情報取得部および評価テーブルを作成または更新する作成部の一例として、CSP情報取得部41を設けている。評価テーブル42は、各CSP30の各資源情報の項目に関する評価をCSP選択ライブラリ60用にXML等の形で表したテーブルである。CSP情報取得部41が資源情報の更新内容を取得することにより、評価テーブル42には各CSP30の最新の評価が記載されるようにする。評価テーブル通知部43は、ネットワークを介して評価テーブル42を各CSC20に通知する。評価テーブル通知部43は、例えば各CSC20内の評価テーブル取得部61からの要求に基づいて受動的に評価テーブル42を送信してもよいPull型。または、評価テーブル通知部43は、予め定めた期間ごとや評価テーブル42が更新されるたびに、CSD40から各CSC20に能動的に評価テーブル42を送信してもよいPush型。本実施の形態では、評価テーブルをサービスコンシューマに通知する通知部の一例として、評価テーブル通知部43を設けている。次に、要求テーブル53、関連テーブル62、評価テーブル42および分配テーブル64の具体例について説明する。図4および図5は、本発明の実施の形態におけるCSC20が使用する各テーブルの例を示した図である。このうち、図4は要求テーブル53、関連テーブル62、評価テーブル42の例を、図5は分配テーブル64の例を示している。要求テーブル53、関連テーブル62、評価テーブル42および分配テーブル64は、実際にはXML等の書式で記述されるが、ここでは便宜上、それらの内容を表で示している。図4Aは、要求テーブル53の例である。例えば、図1のCSC1は、自己が使用するサービスの、ネットワークパフォーマンス、仮想システムのパフォーマンス、稼働率、セキュリティおよびCSP経営状態を重要視するものとする。そこでCSC1は、これらの項目について要求するサービスレベルを、例えば10段階の数値で図4Aのように定義している。また、図1のCSC2は、自己が重要視する項目について要求するサービスレベルを、図4Aと同様に定義している。図4では、レベルは1が最も高く、数字が大きくなるにつれて低くなるものとする。なお、10段階の数値は一例であり、例えば、稼働率であれば何以上が1、それ未満の何までが2、のように、セキュリティであればどの機能に対応していれば1、一部の機能に対応していなければ2、などのように、より具体的にレベルを定義することができる。図4Bは、関連テーブル62の例である。例えば、Method1については、図4Bに示すように、ネットワークパフォーマンスとCSP経営状態が関連項目として定義されている。一般に、メソッドごとに関連する項目は異なると考えられるが、この例ではCSP経営状態はすべてのメソッドに関連するものとする。図4BがCSC1の関連テーブル62であるとすると、CSC1は、Method1が呼び出されるときには、ネットワークパフォーマンスとCSP経営状態の項目について、図4Aの要求テーブル53で定義したレベルが確保されることを要求することになる。なお、CSC2も図4Bと同様の関連テーブル62をもっている。なお、関連テーブル62には、関連項目とともに各項目の重要度の情報を含めてもよい。そして、照合部63が関連テーブル62を参照して分配テーブル64を作成する際は、例えばこの重要度が高い関連項目について評価が高いCSP30を優先的に選択するなど、項目の重要度によって重み付けを行ってもよい。CSP選択ライブラリ60は、アプリケーション50の実行時に呼び出されるすべてのメソッドについて、図4Bのように、関連する資源情報の項目を関連テーブル62で予め定義しておく。ただし、メソッドによっては適切なCSP30を選択することなくデフォルトのCSP30を使えばよい場合もある。その場合、そのメソッドについては関連テーブル62に載っていなくてもよい。図4Cは、評価テーブル42の例である。ここでは、図4Aに示したネットワークパフォーマンス、仮想システムのパフォーマンス、稼働率、セキュリティおよびCSP経営状態の各項目について、CSP1~CSP4の評価を示している。図4Cに示すように、評価テーブル42には、各CSP30に関する様々な資源情報の評価が、要求テーブル53のものと同じレベルの定義に従ってまとめられている。以上、図4A~図4Cに示したように、本実施の形態では、各CSC20およびCSD40がもつ要求テーブル53、関連テーブル62および評価テーブル42のフォーマットや資源情報の項目ごとのサービスレベルの定義は、オープンな業界標準仕様などとして、コンピュータシステム全体で共通のものを予め定義しておく。また、図5Aおよび図5Bは、分配テーブル64の例である。例えば図5Aは、Method1について適切なCSP30がCSP1~CSP4のうちのCSP2であることを示している。要求テーブル53、関連テーブル62および評価テーブル42から分配テーブル64を作成する方法については、この後具体的に説明する。以下では、本実施の形態における各CSC20とCSD40の動作について説明する。図6は、本発明の実施の形態におけるCSC20がCSP30を選択する際に使用する分配テーブル64を作成する動作分配テーブル作成メソッドの例を示したフローチャートである。まず、CSD40のCSP情報取得部41が、ネットワークを介して各CSP30CSP1~CSP4から資源情報を取得するステップ11。上述したように、CSP情報取得部41は、予め定めた期間ごとか、またはいずれかのCSP30の資源情報に変更があるたびに、その資源情報を取得する。次いで、CSD40は、CSP情報取得部41が取得した資源情報から、評価テーブル42を作成または更新するステップ12。そしてこの評価テーブル42を、例えば予め定めた期間ごとか評価テーブル42が更新されるたびに、評価テーブル通知部43がネットワークを介して各CSC20に通知するステップ13。一方、各CSC20では、CSP選択ライブラリ60の評価テーブル取得部61がCSD40から評価テーブル42を取得するステップ21。次いで、照合部63が、この評価テーブル42と、CSP選択ライブラリ60が予め保持している関連テーブル62と、アプリケーション50がもつ要求テーブル53とを取得するステップ22。そして照合部63は、関連テーブル62に載っている1つのメソッドについて、要求テーブル53と評価テーブル42を照合するステップ23。照合部63は、そのメソッドに関連するものとして関連テーブル62で定義されている資源情報の項目のすべてに関して要求テーブル53で要求されているサービスレベルを満たすCSP30を、そのメソッドについて使用すべきCSP30であるとして、分配テーブル64に記載するステップ24。他にもメソッドがあればステップ23に戻り、もうすべてのメソッドについて分配テーブル64に記載していれば動作を終了するステップ25。照合部63が行うステップ23とステップ24について、図4A~図4Cに示した例を用いて詳しく説明する。まずMethod1については、関連テーブル62で関連項目として定義されている項目がネットワークパフォーマンスとCSP経営状態であるから、これらについて要求テーブル53で定義されている、ネットワークパフォーマンスが最高の1かつCSP経営状態が5以上という要求レベルを満たすCSP30を、評価テーブル42の中から探す。この要求レベルを満たすものは、CSP1~CSP4のうちでCSP2だけであるから、Method1について使用するCSPはCSP2と記載する。また、Method2については、関連テーブル62によると関連項目がセキュリティおよびCSP経営状態であるから、要求テーブル53で定義されている、セキュリティが3以上かつCSP経営状態が5以上という要求レベルを満たすCSP30を、評価テーブル42の中から探す。この要求レベルを満たすものはCSP1とCSP3の2つがあるが、この例ではCSP3を選ぶものとして、Method2について使用するCSPはCSP3と記載する。これは、CSP経営状態よりもセキュリティの方が高いレベルが要求されていることから、セキュリティについてCSP1とCSP3の評価を比べると、CSP1の3よりもCSP3の2の方が高いためである。このように、条件を満たすCSP30が複数存在するときは、そのメソッドについての関連項目の中で要求されるサービスレベルが高い項目に着目し、その項目の評価が高いものを優先して選ぶようにしてもよい。また、Method3については、関連テーブル62によると関連項目が仮想システムのパフォーマンス、稼働率およびCSP経営状態であるから、要求テーブル53で定義されている、仮想システムのパフォーマンスが3以上、稼働率が2以上かつCSP経営状態が5以上という要求レベルを満たすCSP30を、評価テーブル42の中から探す。この要求レベルを満たすものは、CSP1だけであるから、Method3について使用するCSPはCSP1と記載する。以上のようにして作成される分配テーブル64が、図5Aに示したものである。なお、すべての関連項目について要求レベルを満たすCSP30が存在しないときは、そのメソッドについては例えばデフォルトのCSP30を、使用するCSPとしてもよい。または、要求レベルを満たす関連項目の個数が最も多いCSP30を、使用するCSPとしてもよい。次に、各CSC20が分配テーブル64を用いて適切なCSP30にメソッドを送信する際の動作について説明する。図7は、本発明の実施の形態におけるCSC20がCSP30にメソッドを送信する際の動作例を示したフローチャートである。まず、CSC20は、アプリケーション50を起動するステップ31。アプリケーション50は、起動時にCSP選択ライブラリ60をロードするステップ32。アプリケーション50内では、例えばサーブレット52が起動するときにCSP選択ライブラリ60のライブラリをロードする。そしてCSP選択ライブラリ60は、この起動時や、予め定めた期間ごと、または評価テーブル取得部61がCSD40から評価テーブル42を取得したときなどの適当なタイミングで図6の分配テーブル作成メソッドを実行し、分配テーブル64を作成している。ここで、CSC20のアプリケーション50は、エンドユーザ10からのリクエストトランザクションを受け付けるステップ33。一般に、リクエストは複数のメソッドに分解されて1つずつ呼び出されるが、本実施の形態では、このときどのCSP30を使用してメソッドを呼び出すかということをアプリケーション50自体が指定する必要はない。その代わり、そのメソッドが実行されるのに適切なCSP30を、CSP選択ライブラリ60が分配テーブル64を用いて選択するステップ34。そしてCSP選択ライブラリ60のCSP選択部65が、そのメソッドを選択されたCSP30に対する命令に変換して、CSP30にリクエストを行うステップ35。すなわち、アプリケーション50は、CSP選択ライブラリ60のAPIを使って、そのメソッドを選択されたCSP30に送信する。他にも実行すべきメソッドがあればステップ34に戻り、もう実行すべきメソッドがなければ動作を終了するステップ36。本実施の形態では、CSC20がCSD40から評価テーブル42の更新を受け取る手法について、特にCSD40からのPush通知を利用することが可能である。このようなPush通知を利用した構成について、次に説明する。本実施の形態では、例えば、いずれかのCSP30が災害、その他の障害によりダウンした状態となった場合には、そのCSP30の資源情報に変更があったダウンが起こったタイミングで、CSD40のCSP情報取得部41がその変更の情報を取得するようにする。そして、CSD40は評価テーブル42を更新し、評価テーブル通知部43がその更新した評価テーブル42をすべてのCSC20に対してPush通知するようにする。これにより、評価テーブル42が更新された場合に各CSC20が最新の評価テーブル42をタイムリーに受け取るように実装することができる。さらに、Push通知された最新の評価テーブル42を取得したことに応じて各CSC20のCSP選択ライブラリ60が図6の分配テーブル作成メソッドを行えば、各CSC20は各メソッドについて現時点で適切なCSP30が記載された分配テーブル64をもつことができる。これにより、各CSC20は、各メソッドを呼び出すときに現時点で適切なCSP30を動的に選択することが可能となる。図4A~図4Cに示した例において、例えばCSP3がダウンした場合を考える。上述したように、Method2については適切なCSP30の候補として、CSP1とCSP3があった。しかし、この場合、各CSC20のCSP選択ライブラリ60はCSP3がダウンしたという情報を含んだ評価テーブル42を取得して図6の分配テーブル作成メソッドを行うため、Method2について使用すべきCSP30としてはCSP1が選ばれることになる。したがって、この場合に作成される分配テーブル64は、図5Bに示したものとなる。このように、各CSC20がCSD40からPush通知で最新の評価テーブル42を取得することにより、災害等があった場合でも、エンドユーザ10および各CSC20が受ける影響が最小限になるように、CSP30の選択を行うことが可能になる。以上説明したように、本実施の形態では、各CSP30の資源情報の評価を評価テーブル42としてCSD40が提供し、自己が要求するサービスレベルおよび各メソッドについて関連する資源情報の項目を、それぞれ要求テーブル53および関連テーブル62として各CSC20が定義する。そして、これらのテーブルのフォーマットや資源情報の項目ごとのサービスレベルの定義を、コンピュータシステム全体で共通のものにする。これにより、各CSC20は、分配テーブル64を用いて各メソッドについて適切なCSP30を選択して使用することが可能になる。さらに本実施の形態では、各CSP30の資源情報に変更があるたびにCSD40が評価テーブル42を更新して各CSC20にPush通知し、各CSC20は最新の評価テーブル42を取得したことに応じて分配テーブル64を更新する。これにより、各CSC20は各メソッドについて現時点で適切なCSP30を選択して使用することが可能になる。最後に、本実施の形態を適用するのに好適なコンピュータのハードウェア構成について説明する。図8は、CSC20やCSD40を実現するコンピュータのハードウェア構成の一例を示した図である。図示するように、コンピュータは、演算手段であるCPUCentralProcessingUnit90aと、M/Bマザーボードチップセット90bを介してCPU90aに接続されたメインメモリ90cと、同じくM/Bチップセット90bを介してCPU90aに接続された表示機構90dとを備える。また、M/Bチップセット90bには、ブリッジ回路90eを介して、ネットワークインターフェイス90fと、磁気ディスク装置HDD90gと、音声機構90hと、キーボード/マウス90iと、フレキシブルディスクドライブ90jとが接続されている。なお、図8において、各構成要素は、バスを介して接続される。例えば、CPU90aとM/Bチップセット90bの間や、M/Bチップセット90bとメインメモリ90cの間は、CPUバスを介して接続される。また、M/Bチップセット90bと表示機構90dとの間は、AGPAcceleratedGraphicsPortを介して接続してもよいが、表示機構90dがPCIExpress対応のビデオカードを含む場合、M/Bチップセット90bとこのビデオカードの間は、PCIExpressPCIeバスを介して接続される。また、ブリッジ回路90eと接続する場合、ネットワークインターフェイス90fについては、例えば、PCIExpressを用いることができる。また、磁気ディスク装置90gについては、例えば、シリアルATAATAttachment、パラレル転送のATA、PCIPeripheralComponentsInterconnectを用いることができる。更に、キーボード/マウス90i、およびフレキシブルディスクドライブ90jについては、USBUniversalSerialBusを用いることができる。ここで、本発明のサービスコンシューマおよびサービスディレクトリの機能は、すべてハードウェアで実現してもよいし、すべてソフトウェアで実現してもよい。また、ハードウェアおよびソフトウェアの両方により実現することも可能である。また、本発明は、コンピュータ、データ処理システム、コンピュータプログラムとして実現することができる。このコンピュータプログラムは、コンピュータにより読み取り可能な媒体に記憶され、提供され得る。ここで、媒体としては、電子的、磁気的、光学的、電磁的、赤外線または半導体システム装置または機器、あるいは、伝搬媒体が考えられる。また、コンピュータにより読み取り可能な媒体としては、半導体、ソリッドステート記憶装置、磁気テープ、取り外し可能なコンピュータディスケット、ランダムアクセスメモリRAM、リードオンリーメモリROM、リジッド磁気ディスク、および光ディスクが例示される。現時点における光ディスクの例には、コンパクトディスク-リードオンリーメモリCD-ROM、コンパクトディスク-リード/ライトCD-R/WおよびDVDが含まれる。以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態には限定されない。本発明の精神および範囲から逸脱することなく様々に変更したり代替態様を採用したりすることが可能なことは、当業者に明らかである。"