(57)【要約】【課題】  サービス契約を実現するために、資源を自動的に提供する技術を提供する。【解決手段】  例えば、サービス加入者の少なくとも１つのサービス契約申込みに基づいて自動的に１つ以上の資源を提供するためにサービス提供者が使用する技術は、以下のステップ／操作を有する。前記少なくとも１つのサービス契約申込みを取得する。少なくとも１つの実施計画テンプレートを取得する。次に、前記サービス契約申込みおよび前記実施計画テンプレートに従って、提供記述を自動的に導出し、前記提供記述は、１つ以上の資源を構成するために使用可能であり、前記サービス加入者にサービスを提供できるようになされる。【選択図】  図１
2006351019.tif 000002
【特許請求の範囲】
【請求項１】
演算処理手段と記憶手段と入出力手段とを備えるコンピュータ・システムにより少なくとも１つのサービスの申込みに基づいて１つ以上の資源を自動的に提供するための方法であって、
前記入出力手段により前記申込みを取得するステップと、
前記記憶手段に予め記憶されている少なくとも１つの実施計画テンプレートを取得するステップと、
前記申込みおよび前記実施計画テンプレートに従って、前記演算処理手段により提供記述を自動的に導出するステップとを有しており、
前記提供記述は、前記１つ以上の資源を前記サービスの提供ができるように設定するために使用可能である
方法。
【請求項２】
前記導出するステップが、さらに、前記申込みから、１つ以上の構成要素を抽出するステップを有する請求項１に記載の方法。
【請求項３】
前記導出するステップが、さらに、前記構成要素に基づいて、前記実施計画テンプレートと関連した、１つ以上の割振りパラメータを決定するステップを有する請求項２に記載の方法。
【請求項４】
前記導出するステップが、さらに、前記割振りパラメータに基づいて、前記提供記述を生成するステップを有する請求項３に記載の方法。
【請求項５】
前記導出するステップが、さらに、前記申込みされたサービスの実行可能性を検査するステップを有する請求項１に記載の方法。
【請求項６】
前記検査するステップが、さらに、前記申込みを構文的に検証するステップ、前記申込みに基づいて前記導出の成否を決定するステップ、および所望サービス時間における前記資源の１つ以上の資源の利用可能性を判断するステップのうちの少なくとも１つを有する請求項５に記載の方法。
【請求項７】
前記導出するステップが、さらに、前記検査するステップの結果を前記サービスの申込者に通知するステップを有する請求項５に記載の方法。
【請求項８】
前記導出するステップが、さらに、前記申込みの１つ以上の構成要素と前記実施計画テンプレートの１つ以上のパラメータとの間の一致を判断するステップを有する請求項１に記載の方法。
【請求項９】
前記導出するステップが、さらに、一致が判断されることに応答して、提供記述の事例を生成するステップを有する請求項８に記載の方法。
【請求項１０】
さらに、前記申込みの生成において使用するために、少なくとも１つの契約テンプレートを前記サービスの申込者に提供するステップを有することを特徴とする請求項１に記載の方法。
【請求項１１】
前記導出するステップが、さらに、１つ以上の契約パラメータを識別するために前記実施計画テンプレートの使用を含むことを特徴とする請求項１に記載の方法。
【請求項１２】
前記導出するステップが、さらに、１つ以上の契約パラメータに基づいて、異なる形態の資源の個々の数量を決定するために前記実施計画テンプレートの使用を含む請求項１に記載の方法。
【請求項１３】
前記導出するステップが、さらに、１つ以上の形態の資源を構成してかつ組み立てるために前記実施計画テンプレートを使用するステップを含む請求項１に記載の方法。
【請求項１４】
前記導出するステップが、さらに、１つ以上の形態の資源を定義するために前記実施計画テンプレートを使用するステップを含む請求項１に記載の方法。
【請求項１５】
前記導出するステップが、さらに、拡張マークアップ言語ストラクチャとしての前記実施計画テンプレートの表現を有する請求項１に記載の方法。
【請求項１６】
さらに、前記演算処理手段により前記提供記述を実行処理するステップを有する請求項１に記載の方法。
【請求項１７】
サービス加入者の少なくとも１つのサービス契約申込みに基づいて、１つ以上の資源を自動的に提供するために、サービス提供者が使用する装置であって、
メモリと、
前記メモリに接続され、（ｉ）前記少なくとも１つのサービス契約申込みを取得し、（ｉｉ）少なくとも１つの実施計画テンプレートを取得し、（ｉｉｉ）前記サービス契約申込みおよび前記実施計画テンプレートに従って、提供記述を自動的に導出するように作動する少なくとも１つのプロセッサとを有し、前記提供記述は、１つ以上の資源を構成するために使用可能であり、前記サービス加入者にサービスを提供できるようになされる装置。
【請求項１８】
演算処理手段と記憶手段と入出力手段とを備えるコンピュータ・システムに実行されることにより、前記コンピュータ・システムに少なくとも１つのサービスの申込みに基づいて１つ以上の資源を自動的に提供させるプログラムであって、
前記コンピュータ・システムに、
前記入出力手段により前記申込みを取得させるステップと、
前記記憶手段に予め記憶されている少なくとも１つの実施計画テンプレートを取得させるステップと、
前記申込みおよび前記実施計画テンプレートに従って、前記演算処理手段により提供記述を自動的に導出させるステップとを実行させ、
前記提供記述は、前記１つ以上の資源を前記サービスの提供ができるように設定するために使用可能である
プログラム。
【請求項１９】
コンピュータ・システムにより１つ以上の資源の提供を自動的に管理させる方法であって、
契約テンプレートを生成するステップと、
関連する契約実施計画テンプレートを生成するステップとを有する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この本発明は、一般にサービス環境に関し、より詳しくは、サービス契約を実現するために資源を自動的に提供する技術に関する。
【背景技術】
【０００２】
情報技術（ＩＴ）サービス分野では、主体間のサービスは、サービス契約により取得される。将来のサービス加入者が契約申込みを提出すると、サービス提供者は、契約申込みに応じることができるか否かを判断し、できるときには、提供されるサービスに対する所要のＩＴ資源を提供しなければならない。ＩＴ資源は、例えば、記憶、計算、およびネットワーク装置などを含む。
【特許文献１】米国特許第６，１４８，２９０号
【非特許文献１】Ａ．Ａｎｄｒｉｅｕｘら、「ウェブサービス契約仕様書」、バーション１．１、素案１８、２００４年５月発行
【非特許文献２】Ｅ．クリステンセンら、「ウェブサービス記述言語（ＷＳＤＬ）１．１」、ワールドワイドウェブコンソーシアム技術報告書
【非特許文献３】トシックら、「ＷＳＯＬ−ウェブサービスのサービスの分類の形式的仕様のための言語」、２００３年ウェブサービスに関する国際会議会報、ＣＳＲＥＡプレス、２００３年６月発行、３７５〜３８１ページ
【非特許文献４】Ａ．ダンら、「加入者目標と資源可能性の関連づけ：グリッドサービス管理インフラストラクチャの必須要素」、２００４年サービス志向コンピューティングに関する国際会議（ＩＣＳＯＣ）、５７〜６４ページ
【非特許文献５】クラーク・ジェームス、デローズ・スティーブ著、１９９９年版「ＸＭＬパス言語（ＸＰａｔｈ）」バーション１．０、Ｗ３Ｃ勧告、１９９９年１１月発行
【発明の開示】
【発明が解決しようとする課題】
【０００３】
参照によって本明細書に組み込まれているダン他の米国特許第６，１４８，２９０号の開示は、自律的主体間のサービスの提供を自動化するための、サービス契約の使用について述べている。サービス契約は、サービスに関連するサービスレベル目標の違反または達成に関係した違約金および報酬を定義することができる。この場合、契約の提供のために用意された提供者のＩＴ資源配置は、受領した報酬と被った違約金を、ＩＴ資源使用経費で相殺するように、サービスを実行しなければならない。
【０００４】
契約の形式的表現は、サービス契約の自動解釈を可能とする。ＷＳ契約（例えば、参照によって本明細書に組み込まれている、２００４年５月付、Ａ．Ａｎｄｒｉｅｕｘら著の「ウェブサービス契約仕様書」バーション１．１、素案１８の開示などを参照のこと）は、サービス契約の標準的表現の素案であり、例えば、ウェブサービス記述言語（例えば、参照によって本明細書に組み込まれている、ワールドワイドウェブコンソーシアム技術報告書に掲載されたＥ．クリステンセンら著の「ウェブサービス記述言語（ＷＳＤＬ）１．１」の開示などを参照のこと）などの、サービス形態固有表現と組み合わせて用いることができる。ウェブサービスオファ言語は、同目的の他の表現である（例えば、参照によって本明細書に組み込まれている、２００３年６月にＣＳＲＥＡプレスから発行された、２００３年ウェブサービスに関する国際会議会報の３７５〜３８１ページに掲載されたトシックら著「ＷＳＯＬ−ウェブサービスのサービスの分類の形式的仕様のための言語」の開示などを参照のこと）。
【０００５】
資源の組、またはサービス契約を実行するために所望の他の資源の組を導出すること、および、その後、この組を提供することは、自動的にサービス契約を実現するプロセスの自動化のためには不可欠である。参照によって本明細書に組み込まれている、２００４年サービス志向コンピューティングに関する国際会議（ＩＣＳＯＣ）の５７〜６４ページに掲載されたＡ．ダンら著「加入者目標と資源可能性の関連づけ：グリッドサービス管理インフラストラクチャの必須要素」の開示では、複数ステップのパフォーマンス目標を資源要求に直す方法について述べている。しかしながら、提案されたアプローチそれ自体は、導出を自動化しない。それぞれの特定領域、例えば、ジョブのスケジューリング計算に対して、プログラマにより、特別な資源導出モデルが定義されて、実行されなければならない。アプローチは、これを行う方法の指針を与えるが、それ自体では資源要求導出を自動化しない。さらに、アプローチは、提供問題を解決しない。
【０００６】
最後に、アドべントネット（カリフォルニア州プレザントン）、シスコ（カリフォルニア州サンノゼ）、およびべリタス（カリフォルニア州マウンテンビュー）のような企業で利用可能なテンプレートベースの提供アプローチがあるが、これらのアプローチは、サービス契約を考慮に入れない。
【課題を解決するための手段】
【０００７】
本発明は、サービス契約を実現するために、資源を自動的に提供する技術を提供する。
【０００８】
例えば、本発明の一態様では、サービス加入者の少なくとも１つのサービス契約申込みに基づき、自動的に１つ以上の資源を提供するためにサービス提供者により使用される技術は、以下のステップ／操作を有する。少なくとも１つのサービス契約申込みを取得する。少なくとも１つの実施計画テンプレートを取得する。その後、サービス契約申込みおよび実施計画テンプレートに従って、提供記述を自動的に導出し、その提供記述は、１つ以上の資源を構成するために使用可能であり、サービス加入者にサービスを提供できるようになされる。
【０００９】
サービス加入者により提出されたサービス契約申込みの解釈および分析に有利で、かつサービス契約申込みに従って、１つ以上のサービスを提供するために有利な技術を提供する。
【００１０】
本発明の、これらのならびに他の目的、特徴、および利点は、添付図面とともに、本発明の具体的な実施例についての以下の詳細な説明を読むことにより明らかとなるであろう。
【発明を実施するための最良の形態】
【００１１】
本発明は、以下で、具体的な情報技術（ＩＴ）サービス環境の文脈において説明される。しかしながら、本発明は、このようなサービス環境に限定されない。むしろ、本発明は、より一般的に、サービス契約を実現するために、資源の自動提供を提供することが所望される任意のサービス環境に適用可能である。
【００１２】
したがって、本明細書に説明されるように、本発明の具体的な原理は、サービス契約を実現するための、ＩＴ資源の自動提供をもたらす。「自動化された」という用語、および「自動的に」という用語は、一般的に、手動で実行される（例えば、人間のオペレータによる）のではなく、むしろ、１つ以上の処理システムまたは装置（例えば、コンピュータシステムによる）を介して実行されるステップまたは操作を示す。
【００１３】
さらに、本発明の具体的な原理は、サービス保証の形式化された品質、およびサービス保証を実現するためのＩＴ資源要求の自動導出を含むサービス契約に関連する。より詳しくは、本発明の具体的な原理は、契約テンプレートの形式的表現に関連し、配置計画テンプレートの形式的表現に基づく、ＩＴ計算処理および他の資源に対する自動的に実行可能な配置計画の生成、ならびに、最終的に、提供システムを用いて配置計画を実行処理することに関連する。
【００１４】
このようにして、本発明の具体的な原理は、サービス提供者とサービス加入者の間のサービス契約に対する、実行可能な「提供記述」を自動的に導出する技術を提供する。提供記述は、計画を実行するために構成される資源の組の、形式的で機械解釈可能な記述と、構成情報と、構成情報に基づき資源を構成するための、工程段階およびそれらの順序を有する。提供記述は、記述に基づき資源および構成を取得する提供エンジンにより実行処理される。
【００１５】
本発明の具体的な原理は、提出された各契約申込みを、提供記述が、既知の構成に従う契約申込みの内容から、どのように導出されるかについて記述している契約実施計画テンプレートと関連づける。契約実施計画テンプレートは、提供記述の各作成事例に対して記入される空欄を有する提供記述のテンプレートを含んでいる。記入プロセスの観点から、提供記述は、テキスト、または多くのテキストが挿入される拡張マークアップ言語（ＸＭＬ）ドキュメントである。
【００１６】
潜在的サービス加入者に公開された契約テンプレートの使用は、サービス加入者の、契約実施計画テンプレートにより処理できる契約申込みを作成する能力を大幅に高める。したがって、契約テンプレート、およびそれらの関連した契約実施計画テンプレートのライフサイクル管理は、発明技術の有効性を増加させる。
【００１７】
本発明の技術を用いると、提供されたシステム領域の意味を解する提供記述メカニズムのない契約に基づいて、サービスを提供することができ、したがって、形式的な入力言語を受容する提供システムが利用可能な、任意の環境に適用できる。これまでは、契約申込みを作成する際、サービス加入者が柔軟に対応できるのであれば、提供記述を導出するこのプロセスは、主に手で行われる。
【００１８】
図１は、本発明の実施例に基づいてシステムの構成要素および相互作用を示し、このシステムでは、加入者がサービスのサービス提者と契約を確立し、提供者はサービスを提供し、その後、加入者は契約に基づいてサービスを消費する。
【００１９】
図示されるように、例えば、大きな組織の企業またはデータセンタなどのサービス提供者領域１５０は、サービス加入者領域１６０の中の１人以上のサービス加入者１００にサービス１３０を提供し、このサービス加入者領域１６０は、外部企業または同一企業内の他の組織単位であってもよい。サービス１３０は、シンプルオブジェクトアクセスプロトコル（ＳＯＡＰ）、またはハイパーテキスト転送プロトコル（ＨＴＴＰ）より上位のレプレセンテーショナル・ステイト・トランスファー（Ｒｅｐｒｅｓｅｎｔａｔｉｏｎａｌ  Ｓｔａｔｅ  Ｔｒａｎｓｆｅｒ（ＲＥＳＴ））を用いてアクセスされるウェブサービスと、例えば、計算用グリッドなどにおけるジョブ実行サービスと、ウェブホスティングサービスと、ネットワークサービスとを含む。資源のプール１４０から資源１４０ａ〜ｃを用いてサービスを提供する。資源は、コンピュータ、ネットワーク構成要素、および通信接続を具備することができる。
【００２０】
サービス加入者１００がサービス１３０にアクセスできる前に、サービス提供者領域１５０とサービス加入者領域１６０の間で契約が確立される。契約を確立するために、サービス加入者１００は、サービス提供者領域のサービス管理１２０に契約申込み１１０を提出する。例えば、契約申込みのＷＳ契約形式を用いるなど、様々な形式で契約申込みを表現することができる。
【００２１】
契約申込み１１０を受諾した時点で、サービス管理１２０は、サービスの特性が受諾された契約申込みに定義された契約条件に従うように、またはサービス提供者領域１５０に許容できる偏りの余裕内にあるように、資源プール１４０から資源を提供する。サービス管理１２０は、サービスおよび資源の構成に供される資源の個数について判断しなければならない。資源は、１人のサービス加入者の１つのサービスに対して、複数のサービス加入者により共用使用されるサービスに対して、または同一資源を共用使用する複数のサービスにより、排他的に用いることができる。また、サービス申込みを提出したサービス加入者は、サービス管理からの契約返答１１２を介して、契約が作成されたことの通知を受ける。サービス１３０が提供されると、サービス加入者１００は、サービスにアクセスできる。
【００２２】
図２は、本発明の実施例に基づいて、提供者のサービス管理により実行処理されるアルゴリズムの概略を示す。より詳しくは、図２は、高水準のアルゴリズムの概略を示し、この高水準のアルゴリズムに基づいて、サービス管理１２０構成要素が動作する。
【００２３】
最初に、ステップ２１０で、サービス管理アルゴリズムは、契約申込みを受信する。この目的を達するために、例えば、ＷＳ契約仕様書で定義される契約工場インターフェイスなどの契約提出インターフェイスが現れる。次に、ステップ２２０で、契約の実行性が検査される。実行性は、構文形式検証、資源構成の導出の成功、および所望サービス時間における資源の利用性を示す。契約申込みが、実行可能とみなされない場合（ステップ２３０）、ステップ２６０で、契約確立の失敗が、メッセージを介してサービス加入者へ返信される。契約が実行可能である場合（ステップ２３０）、ステップ２４０で、サービス管理は、サービスを実行するために資源を提供する。ステップ２４２で、サービス申込みを提出したサービス加入者は、サービス管理からの契約返答を介して、契約が作成されたことの通知を受ける。そして、ステップ２５０で、サービス管理は、サービス加入者にサービスを利用可能とすることにより、サービスを開始する。
【００２４】
サービス管理構成要素（図１の１２０）は、図３で概説されるように、２つの下位構成要素を有する。より詳しくは、図３は、本発明の実施例に基づいて、サービス提供者のサービス管理機能を分解し、契約実施計画テンプレートの使用の概略を示す。
【００２５】
図示されるように、第１の下位構成要素は、契約提供計画器３１０であり、この契約提供計画器３１０は契約申込み１１０を分析し、契約申込みの構文実行性について検査し、提供記述３２０を案出する。この目的を達するために、サービス管理構成要素は、その契約実施計画テンプレート貯蔵庫３５０から、１つ以上の契約実施計画（ＩＰ）テンプレート、３５０ａ、３５０ｂ、…を用いる。ＩＰテンプレートは、所与の契約申込みから提供記述３２０を作成する方法についての記述を含んでいる。
【００２６】
第２の下位構成要素は、提供エンジン３３０である。提供エンジンは、所要の資源を取得して、それらを構成することにより、提供記述３２０を実行処理する。提供エンジン３３０は、提供処理結果３４０、すなわち、資源構成の成否を、契約提供計画器３１０に報告する。失敗の場合には、契約提供計画器３１０は、他の提供記述を案出できる。また、契約提供計画器３１０は、「作成済み契約」メッセージ（図１の１１２）をサービス加入者に連絡する。
【００２７】
契約実施計画（ＩＰ）テンプレート（図３の３５０ａ、３５０ｂ）の例が、図４に図示されている。ＩＰテンプレート、およびそれを用いる処理過程は、契約申込み１１０および提供記述３２０の意味に対して寛容である。テンプレートは、事例完了記述４３０に従って、契約パラメータ認識装置４１０セクションにおいて識別される契約申込み部分に基づいて記入されるべき欄を含む、部分的提供記述４２０と呼ばれる、テンプレート提供記述からの提供記述３２０の導出について記述する。
【００２８】
このように、ＩＰテンプレート３５０は、提供記述の各作成事例に対して記入される空欄を有する提供記述（部分的提供記述４２０）のテンプレートを含む。最終結果（記入済み結果）は、１つ以上の提供仕様書例である。１つ以上の提供仕様書例は、提供エンジン３３０に送られる提供記述３２０（図３）となる。
【００２９】
また、提供エンジン呼出し詳細４１５が、ＩＰテンプレートの一部に示されている。本発明の原理は、複数の提供エンジンを有する環境を考慮に入れる。これは、提供仕様書例（提供記述３２０）が送られる宛先または終端点を定義することにより、実行される。具体的な一実施例では、システムは、ＷＳ−アドレス指定仕様書によるエンドポイントレファレンスを用いることができる。最も単純な場合における例は、以下の通りである。
<ProvisioningEngineInvocationDetails>
<wsa:EndpointReference>
<wsa:Address>
http://management.ibm.com:8080/provisioning/
</wsa:Address>
</wsa:EndpointReference>
</ProvisioningEngineInvocationDetails>
【００３０】
さらに、ＩＰテンプレートを、例えば、ＸＭＬストラクチャなどの便利な形式で表すことができる。
<ImplementationPlanTemplate>
<AgreementParameterIdentifiers> 
... 
</AgreementParameterIdentifiers>
<ProvisioningEngineInvocationDetails>
... 
</ProvisioningEngineInvocationDetails>
<ProvisioningProcessDescription>
... 
</ProvisioningProcessDescription>
<InstanceCompletionDescription> 
... 
</InstanceCompletionDescription>
</ImplementationPlanTemplate>
【００３１】
契約パラメータ認識装置セクションの目的は、ＩＰテンプレートを、ＩＰテンプレートが適用されうる図５に図示された契約に関係づけることである。ＩＰテンプレートを設計するとき、例えば、ＷＳ契約素案仕様書が提案するような契約テンプレートに従って潜在的に作成される、類似構造に従う潜在的契約の分類に、ＩＰテンプレートを関係づけなければならない。このセクションの各パラメータ認識装置５２０ａ、５２０ｂ…は、固有の名称５３０ａ、５３０ｂ…、および位置ポインタ５４０ａ、５４０ｂ…を有する。位置ポインタは、契約部分５１０ａ、５１０ｂ…と呼ばれる、契約の中の１つの位置を的確に示す。契約部分は、任意の明確に識別された、契約の部分構造でよい。ＷＳ契約素案のようなＸＭＬ表現では、部分構造は、構成要素、または構成要素の属性でありうる。
【００３２】
契約が、ＸＭＬデータストラクチャで表現されるとき、Ｘパス形式（例えば、参照によって本明細書に組み込まれている、１９９９年１１月発行、Ｗ３Ｃ勧告、クラーク・ジェームス、デローズ・スティーブ著、１９９９年版「ＸＭＬパス言語（ＸＰａｔｈ）」バーション１．０の開示などを参照のこと）を、この位置ポインタ情報を表すために使うことができる。しかしながら、Ｘパス表現は、一度に１組の位置を示すことができるが、ここでＸパスを使用するに際しては、Ｘパス表現の作者は、契約ドキュメントの中の確実にただ唯一の位置を決定する必要がある。
【００３３】
以下の例が示すように、Ｘパスを用いて、パラメータ認識装置をＸＭＬで表すことができる。
...
<AgreementParameterIdentifiers>
<ParameterIdentifierName="AverageResponseTime">
<LocationPointer>
//wsag:GuaranteeTerm[@wsag:Name='responseTimeGuarantee']/*Value
</LocationPointer>
</Parameter>
...
</AgreementParameterIdentifiers>
...
【００３４】
パラメータの名称は、ＡｖｅｒａｇｅＲｅｓｐｏｎｓｅＴｉｍｅであり、ＩＰテンプレートが適用される契約におけるそのパラメータの位置は、ＬｏｃａｔｉｏｎＰｏｉｎｔｅｒ構成要素において、Ｘパス表現のように定義されている。例では、パラメータは、ｒｅｓｐｏｎｓｅＴｉｍｅＧｕａｒａｎｔｅｅという名称の、ＷＳ契約形式において特定される保証契約条件の要素値の内容を示す。
【００３５】
ＸＭＬ以外の契約表現に対して、当業者は、対応するポインタ形式を用いることができ、または容易に対応するポインタ形式を考案できる。
【００３６】
契約の事例完了記述４３０セクションは、どの部分に記入して、かつどの部分に部分的提供記述４２０で置換処理するか、ならびに記入されるべき値をどのように決定するかを定義する。
【００３７】
図６は、実例を示して、事例完了記述の構成、および事例完了記述がどのような方法で提供記述に関係するかを説明する。提供記述部分６１０ａ、６１０ｂ…は、部分的提供記述４２０の明確に識別できる部分であり、部分的提供記述４２０の値は、契約実施計画が適用される具体的な契約申込み毎に、契約実施計画の各事例に対して作成される。事例完了記述は、１組の欄記述６３０ａ、６３０ｂ…を有し、欄記述６３０ａ、６３０ｂ…の各々は、提供記述部分６１０ａ、６１０ｂ…に対する値を作成する方法を説明する。欄記述は、位置ポインタ６４０ａ、６４０ｂ…、および欄値アルゴリズム記述６５０ａ、６５０ｂ…を有する。
【００３８】
事例完了記述４３０の位置ポインタは、パラメータ認識装置の位置ポインタ５４０ａ、５４０ｂ…と同一原理に従って設計されている。提供記述がＸＭＬストラクチャである場合、特定のＸＭＬ要素または属性を示すために、Ｘパスを用いることができる。
【００３９】
欄値アルゴリズム記述６５０ａ、６５０ｂ…は、契約提供計画器が解釈できる形式のアルゴリズムの表現を含んでいる。このアルゴリズムでは、契約部分５１０ａ、５１０ｂ…は、選択された形式に好適な一定値または変量として示されうる。以下の例が示すように、ＰＭＡＣ表現言語（例えば、ＩＢＭ社のｗｗｗ．ａｌｐｈａｗｏｒｋｓ．ｉｂｍ．ｃｏｍにある２００５年付のアルファワークスＰＭＡＣ頒布「ＰＭＡＣ表現言語ユーザーガイド」などを参照のこと）は、１つの好適な表現である。
...
<InstanceCompletionDescription>
<FieldDescription>
<LocationPointer>
//ProvisioningProcessDescription/*NumberOfServers
</LocationPointer>
<FieldValueAlgorithmDescription>
<exp:Plus>
<exp:FloatConstant>
<Value>02.000</Value>
</exp:FloatConstant>
<exp:Divide>
<exp:FloatConstant>
<Value>01.000</Value>
</exp:FloatConstant>
<exp:Variable name="AverageResponseTime"/>
</exp:Divide>
</exp:Plus>
</FieldValueAlgorithmDescription>
</FieldDescription>
...
</InstanceCompletionDescription>
...
【００４０】
位置ポインタは、提供記述のＸＭＬ要素ＮｕｍｂｅｒＯｆＳｅｒｖｅｒｓを参照する。それは、ＰＭＡＣ表現言語で２＋１／ＡｖｅｒａｇｅＲｅｓｐｏｎｓｅＴｉｍｅと表された、欄値アルゴリズム記述の値を対応付ける。この例では、提供されるべきサーバの個数は、選択される平均応答時間が短い増加する。ＡｖｅｒａｇｅＲｅｓｐｏｎｓｅＴｉｍｅは、上述の例ほどで示されるように、パラメータ認識装置５２０ａ、５２０ｂ…により識別される契約部分５１０ａ、５１０ｂ…を参照する。
【００４１】
提供記述３２０は、提供エンジン３３０により解釈される形式を有する。ここで図８を参照すると、提供記述３２０の主な構成要素が概説されている。
【００４２】
提供記述は、資源形態の定義８１０、ならびに、資源利用性および経費検討に基づいて、いずれか１つを選択できる１つ以上の資源アセンブリの定義８２０ａ、８２０ｂ…を有する。
【００４３】
資源形態の定義は、例えば、データセンタ（図１の１４０）のクラスター管理システムなどの資源プールに対して、資源利用性について問合せるために、資源の形態を一意的に識別する情報を含んでいる。以下の例が示すように、ＸＭＬストラクチャで資源形態の定義を表すことができる。
<ResourceTypeDefinitions>
<ResourceTypename=”P-Series>
<HostTypedescription="pSeries550">  
<HostArchitecture>
<CPUCount>4</CPUCount>
</HostArchitecture>
...
</HostType>
</ResourceType>
...
</ResourceTypeDefinitions>
【００４４】
資源アセンブリの定義８２０ａ、８２０ｂ…は、このアセンブリに対して、どの形態の何個の資源が必要とされるかを示す資源数量定義８３０ａ、８３０ｂ…を有する。アセンブリ提供定義８４０ａ、８４０ｂ…は、ワークフロー記述、または、資源がどのように提供されるか、および資源がどの順序で提供されるかを定義するスクリプトを含んでいる。この定義は、通常、ユニックスシェルスクリプトまたはパールのようなスクリプト言語で、もしくはウェブサービス用ビジネスプロセス実行処理言語（ＢＰＥＬ４ＷＳ）のようなワークフロー言語で記述されている。
【００４５】
図７は、本発明の実施例に基づいて、サービス管理機能により実行処理される完全なアルゴリズムを示す。より詳しくは、図７は、契約提供計画器３１０および提供エンジン３３０が実行処理するアルゴリズムを説明する。契約提供計画器３１０は、提供記述３２０の完全な事例を作成するために、ステップ７４０を含むステップまで実行処理し、かつそれを行うために、ＩＰテンプレート３５０ａ、３５０ｂ…を使用する。後続のステップは、生成された提供記述３２０に基づき、提供エンジン３３０により実行処理され、かつ資源の取得およびそれらの構成を含む。
【００４６】
契約受信ステップ２１０で契約申込み１１０が受信されると、アルゴリズムが開始する。ステップ７１５で、契約提供計画器は、貯蔵庫からＩＰテンプレートの組を検索する。契約提供計画器は、第１のテンプレートを選択する。第１のＩＰテンプレートに対して、各パラメータ認識装置の位置ポインタが、受信された契約申込みにおいて、ただ唯一の位置を示すとき、計画器は、ステップ７２０で、各パラメータ認識装置の位置ポインタを検証する。
【００４７】
すべての位置ポインタが、１つの一致を有するとき（ステップ７２５）、アルゴリズムは、ステップ７３０に進む。すべての位置ポインタが、１つの一致を有する場合以外のとき、ステップ７８０で、さらに残されたＩＰテンプレートがあるか検査される。さらに残されたＩＰテンプレートがないとき、ステップ２６０で、失敗が返信される。さらに残されたＩＰテンプレートがあるとき、アルゴリズムは、ステップ７１５に戻り、次のＩＰテンプレートを試す。すべての位置ポインタが一致を有するとき、ステップ７３０で、ＩＰテンプレートのパラメータ認識装置で与えられた、それらの名称で索引をつけられ、すべての契約部分の値が保存される。
【００４８】
次に、ステップ７３５で、提供記述の事例が、メモリに書き込まれる。その後、ステップ７４０で、すべての欄記述に対して、アルゴリズムは、欄値アルゴリズム記述（６５０）を実行処理し、欄記述（６３０）の位置ポインタ（６４０）により示された位置の提供記述事例において、アルゴリズムにより返された値を挿入する。このステップを完了すると、アルゴリズムは、提供記述３２０の意味を解する必要性なしに、提供記述３２０の完全で実行可能な事例をもたらす利点がある。この提供記述３２０事例は、ＩＰテンプレート３５０ａにおいて与えられた提供エンジン呼出し詳細４１５で割振られた提供エンジン３３０に送られる。すなわち、特定の提供エンジンを決定するために、処理過程は、ＩＰテンプレートから提供エンジンの終端点を検索する。
【００４９】
次のステップは、提供記述３２０を実行処理する提供エンジン３３０により実行処理される。アルゴリズムは、以下のように進む。最初に、ステップ７４５で、アルゴリズムは、第１の資源アセンブリの定義を選択し、各々の資源アセンブリの定義の資源数量定義により示された数量で、資源プールから資源を取得できるかどうか検査する。資源を取得できないとき（ステップ７５０）、アルゴリズムは、さらに他の資源アセンブリの定義が、提供記述にあるかどうかを検査する（ステップ７６５）。さらに他の資源アセンブリの定義が提供記述にあるとき、アルゴリズムはステップ７４５を続行し、さらに他の資源アセンブリの定義が提供記述にないとき、アルゴリズムは、失敗（ブロック２６０）を知らせる信号を契約提供計画器３１０に送る。
【００５０】
アセンブリのすべての資源が利用可能であるとき（ステップ７５０）、ステップ７５５で、アルゴリズムは、それらの資源を定義された数量で取得する。その後、ステップ７６０で、アセンブリ提供記述が、アセンブリを構成するために実行処理される。このステップが終了すると、提供が完了し、サービスを利用することができる（ブロック２５０）。
【００５１】
本発明のメカニズムを使用するサービス提供者は、どの形態の契約に対して、どの契約実施計画テンプレートを用いるかを、慎重に管理するべきである。例えば、より現代的で強力なホストコンピュータを取得することにより、サービス提供者の資源プールは長い間に変化するため、契約実施計画テンプレートは変化しなければならない。さらに、サービス提供者が契約申込みを受容するサービス形態は、長い間に変化し、相応して管理されなければならない。加えて、サービス加入者が受け入れ可能な契約申込みの作成を促進するために、サービス提供者は、契約テンプレートを加入者に提供すべきである。
【００５２】
したがって、図９で概説されているように、サービス提供者は、契約テンプレート９１０ａ、９１０ｂ…、および１つ以上の関連ＩＰテンプレート３５０ａ、３５０ｂ…を作成するために、ライフサイクルマネージャおよびテンプレートエディタ９２０を用いる。サービス提供者は、期待する契約申込みの構成を知っているため、契約テンプレートを使用することで、サービス提供者は、より効率的にＩＰテンプレートを作ることが可能となり、したがって、効果的に、契約パラメータ認識装置を作ることができる。
【００５３】
すなわち、サービス申込みの作成、関連契約テンプレートの作成、関連ＩＰテンプレートの作成、ならびにこのように作成された申込みおよびテンプレートの除去および変更が可能な自動契約提供システムとして、ライフサイクルマネージャ／エディタを用いることができる。
【００５４】
図１０は、本発明の実施例に基づいて、契約に基づく自動サービス提供システムの１つ以上の構成要素／ステップ（例えば、図１から図９の流れの中で説明された構成要素および方法）を実行できるコンピュータシステムを示す。個々の構成要素／ステップは、１つのそのようなコンピュータシステム上で、または２つ以上のそのようなコンピュータシステム上で実行されうると理解される。分散コンピューティングシステム上で実行する場合、例えば、インターネットまたはワールドワイドウェブなどの好適なネットワークを介して、単一のコンピュータシステム、または装置、あるいはその両方を接続できる。しかしながら、個人的、または小域的ネットワークを介してシステムを実現できる。いずれの場合においても、本発明は、いかなる特定のネットワークにも限定されない。
【００５５】
このようにして、図１０に示すコンピュータシステムは、サービス提供者により保守されうる、特に、例えば、実施計画テンプレート、契約テンプレート、提供計画器、提供エンジン、ライフサイクルマネージャ／エディタなどの、契約に基づく自動サービス提供システムの１つ以上の機能的構成要素／ステップを実現する、具体的なコンピュータシステムアーキテクチャを表す。さらに、また、コンピュータシステムアーキテクチャは、サービス提供者により提供される１つ以上の現実的資源の実行を表すことができる。さらにまた、コンピュータシステムアーキテクチャは、１人以上のサービス加入者の実行を表すことができる。
【００５６】
図示されるように、コンピュータシステムアーキテクチャは、コンピュータバス１０５０または他の接続装置を介して接続された、プロセッサ（演算処理手段）１０１０、メモリ（記憶手段）１０２０、Ｉ／Ｏデバイス（入出力手段）１０３０、およびネットワークインタフェース（入出力手段）１０４０を具備できる。
【００５７】
本明細書で用いられる用語「プロセッサ」は、例えば中央演算処理装置（ＣＰＵ）、または他の処理回路、あるいはその両方を含むもののような、任意の制御演算装置を含む。用語「プロセッサ」は、２つ以上の制御演算装置を示してもよく、制御演算装置と関連した各種構成要素を、他の制御演算装置により共用使用できる。
【００５８】
本明細書で用いられる用語「メモリ」は、例えば、ＲＡＭ、ＲＯＭ、固定メモリデバイス（例えば、ハードディスク）、取外し可能メモリデバイス（例えば、ディスケット）、フラッシュメモリなどのような、プロセッサまたはＣＰＵと関連したメモリを含む。
【００５９】
加えて、本明細書で用いられる語句「入出力装置」または「Ｉ／Ｏデバイス」は、例えば、処理装置にデータを入力する１つ以上の入力装置（例えば、キーボード、マウスなど）、または処理装置と関連した結果を提示する１つ以上の出力装置（例えば、表示装置など）、あるいはその両方を含む。
【００６０】
さらに、本明細書で用いられる語句「ネットワークインタフェース」は、例えば、コンピュータシステムが、適当な通信プロトコルを介して他のコンピュータシステムと通信することを可能とする１つ以上の送受信器を含み、前記「入出力装置」の一態様である。
【００６１】
したがって、本明細書で説明された方法を実行するコマンドまたはプログラムコードを含むソフトウェア部品が、１つ以上の関連メモリデバイス（例えば、ＲＯＭ、固定、または取外し可能メモリなど）に保存され、利用準備ができているとき、部分的に、または全体が（例えば、ＲＡＭに）ロードされて、ＣＰＵにより実行処理されうる。
【００６２】
いずれの場合においても、本明細書で説明され、添付図面で示された、本発明の技術は、例えば、関連メモリ、実行専用集積回路、ファンクショナル回路を有する、１つ以上の効果的にプログラムされた多目的デジタルコンピュータなどの、各種形式のハードウェア、ソフトウェア、またはそれらの組合せで実行されうる。本明細書で提供された本発明の技術を考慮することにより、当業者は、本発明の技術の他の実現化を想定できるであろう。
【００６３】
したがって、例示しながら本明細書で説明されたように、本発明の原理は、契約から情報を抽出する方法、新たなパラメータを導出する方法、資源アセンブリ選択肢を作成する方法、および選択肢を比較する方法を含む、形式的な資源提供仕様書を提供する。
【００６４】
また、仕様書を実行処理するメカニズムを提供する。一例として、メカニズムは、契約テンプレートに基づいて、自動的に申込みのための契約申込み構成要素を抽出し；潜在的に外部の機能に基づいて、自動的に契約申込み構成要素から実施計画割振りパラメータを導出し；導出された値を用いて、自動的に実施計画テンプレートをパラメータ化し；事業計画における割振り選択肢のビジネス価値に基づいて、自動的に割振り選択肢を選択するように作動することができる。
【００６５】
このメカニズムを用いて、詳細な資源要求（サーバの個数および構成など）が、サービス保証（応答時間目標など）から導出され；選択肢が選択され；所要資源が取得され；代替の割振りのビジネス価値に基づいて、サービス要求を受容するべきか否かについての総合的な決定が行われ；割振り結果に基づいて、サービス提供を起動させることができる。
【００６６】
本明細書で詳述されたように、本発明の原理は、実施計画テンプレート、およびこのようなテンプレートを自動的に処理するエンジンを提供する利点を有する。このようなテンプレートは、４つの主要な態様についての情報を有する。この４つの主要な態様とは、契約パラメータの識別、契約パラメータに基づいて、異なる形態の資源の個々の数量を決定する方法、資源形態の構成およびアセンブリ、ならびに資源形態の定義である。
【００６７】
添付図面を参照しながら、本発明の具体的な実施例が本明細書で説明されたが、本発明は、これらの厳密な実施例に限定されず、当業者は、本発明の範囲または要旨を逸脱することなく、他の各種の変更および修正を加えることができると理解される。
【図面の簡単な説明】
【００６８】
【図１】本発明の実施例に基づいて、加入者がサービスのサービス提供者と契約を確立し、提供者はサービスを提供し、その後、加入者は契約に基づいてサービスを消費するシステムについて、その構成要素および相互作用を示す図である。
【図２】本発明の実施例に基づいて、提供者のサービス管理により実行処理されるアルゴリズムの概略を示す図である。
【図３】本発明の実施例に基づいて、サービス提供者のサービス管理機能を分解し、契約実施計画テンプレートの使用の概略を示す図である。
【図４】本発明の実施例に基づいて、契約実施計画テンプレートの構成を示す図である。
【図５】本発明の実施例に基づいて、契約実施計画テンプレートが、加入者により提出された契約申込みの部分にどうのように関連するかを解説する図である。
【図６】本発明の実施例に基づいて、提供記述の変数フィールドの記入メカニズムが、契約実施計画テンプレートにおいてどのように記述されるかを示す図である。
【図７】本発明の実施例に基づいて、サービス管理機能により実行処理される完全なアルゴリズムを示す図である。
【図８】本発明の実施例に基づいて、提供記述の例を示す。
【図９】本発明の実施例に基づいて、契約実施計画テンプレートが、契約テンプレートとどのように関連づけられるか、およびそれらのライフサイクルが、ライフサイクルマネージャおよびエディタにより、どのように一貫して管理されるかを解説する図である。
【図１０】本発明の実施例に基づいて、契約に基づく自動サービス提供システムの１つ以上の構成要素／ステップを実行できるコンピュータシステムを説明する図である。
【図１】
2006351019.tif 000003
【図２】
2006351019.tif 000004
【図３】
2006351019.tif 000005
【図４】
2006351019.tif 000006
【図５】
2006351019.tif 000007
【図６】
2006351019.tif 000008
【図７】
2006351019.tif 000009
【図８】
2006351019.tif 000010
【図９】
2006351019.tif 000011
【図１０】
2006351019.tif 000012