(57)【要約】  自動ユニバーサルコネクタを使用してクラウドアプリケーションをクラウドサービスブローカ（ＣＳＢ）プラットフォームに統合するための方法は、独立したソフトウェアベンダーデバイスからソフトウェア用のコネクタパッケージをコネクタハブで受信することと、ＣＳＢプラットフォームとの統合のためのコネクタパッケージのコネクタインスタンスを作成することと、ＣＳＢプラットフォームは、ソフトウェアに対するライセンスを提供するようにさらに構成され、ソフトウェアに対するサブスクリプション要求を、ＣＳＢプラットフォームインタフェースを介してクラウドサービスブローカコンピューティングデバイスで受信することと、サブスクリプション要求は、作成、変更および削除からなるグループから選択されたアクティビティを含み、サブスクリプション要求を、ＣＳＢプラットフォームコントローラによってユニバーサルコネクタデバイスに送信することと、サブスクリプション要求をユニバーサルコネクタデバイスで処理することと、顧客関係管理（ＣＲＭ）デバイスにサブスクリプション要求を、ユニバーサルコネクタデバイスによって通知することと、サブスクリプション要求をＣＲＭデータベースに記憶することと、サブスクリプション要求に対する、ユニバーサルコネクタデバイスによる承認を獲得することと、要求の承認を受信したら、サブスクリプション要求をユニバーサルコネクタデバイスで処理することと、サブスクリプション承認結果をＣＳＢプラットフォームに送信することとを含み、ＣＳＢプラットフォームは、サブスクリプション承認結果を登録者に対して表示する。
2021503118.tif 000002
【特許請求の範囲】
【請求項１】
自動ユニバーサルコネクタを使用してクラウドアプリケーションをクラウドサービスブローカ（ＣＳＢ）プラットフォームに統合するための方法であって、
独立したソフトウェアベンダーデバイスからソフトウェア用のコネクタパッケージをコネクタハブで受信するステップと、
前記ＣＳＢプラットフォームとの統合のための前記コネクタパッケージのコネクタインスタンスを作成するステップであって、前記ＣＳＢプラットフォームは、前記ソフトウェアに対するライセンスを提供するようにさらに構成されるステップと、
前記ソフトウェアに対するサブスクリプション要求を、ＣＳＢプラットフォームインタフェースを介して前記クラウドサービスブローカコンピューティングデバイスで受信するステップであって、前記サブスクリプション要求は、作成、変更および削除からなるグループから選択されたアクティビティを含むステップと、
前記サブスクリプション要求を、ＣＳＢプラットフォームコントローラによってユニバーサルコネクタデバイスに送信するステップと、
前記サブスクリプション要求を前記ユニバーサルコネクタデバイスで処理するステップと、
顧客関係管理（ＣＲＭ）デバイスに前記サブスクリプション要求を、前記ユニバーサルコネクタデバイスによって通知するステップと、
前記サブスクリプション要求をＣＲＭデータベースに記憶するステップと、
前記サブスクリプション要求に対する、前記ユニバーサルコネクタデバイスによる承認を獲得するステップと、
要求の承認を受信したら、前記サブスクリプション要求を前記ユニバーサルコネクタデバイスで処理するステップと、
サブスクリプション承認結果を前記ＣＳＢプラットフォームに送信するステップであって、前記ＣＳＢプラットフォームは、サブスクリプション承認結果を登録者に対して表示するステップとを含む、前記方法。
【請求項２】
前記コネクタパッケージはデベロッパポータル上で開発され、前記デベロッパポータルは、前記独立したソフトウェアベンダーデバイスによってアクセス可能である、請求項１に記載の方法。
【請求項３】
前記サブスクリプション要求は、前記コネクタパッケージ内に定義された対応するリソースモデルをさらに含む、請求項１に記載の方法。
【請求項４】
前記サブスクリプション要求は、コネクタアプリケーションコントローラによって受信される、請求項３に記載の方法。
【請求項５】
リソースモデルインタープリタで前記サブスクリプション要求を処理するステップをさらに含む、請求項４に記載の方法。
【請求項６】
処理は、アプリケーションプログラミングインタフェース（ＡＰＩ）変換エンジンによって要求データを処理するステップをさらに含む、請求項１に記載の方法。
【請求項７】
処理は、前記ユニバーサルコネクタデバイスで、前記対応するコネクタパッケージの前記リソースモデルのカウンタおよび制限を解析するステップをさらに含む、請求項１に記載の方法。
【請求項８】
処理は、前記ユニバーサルコネクタデバイスで、前記対応するコネクタパッケージの前記リソースモデルのカウンタおよび制限を解析するステップをさらに含む、請求項３に記載の方法。
【請求項９】
処理は、カウンタおよび制限をアプリケーションプログラミングインタフェース（ＡＰＩ）変換エンジンによって処理するステップをさらに含む、請求項６に記載の方法。
【請求項１０】
変換が、ＣＳＢプラットフォーム要求を前記ＣＲＭデバイスによって動作可能である形式に変形し、さらに前記要求をＣＲＭユーザインタフェース（ＵＩ）内に表示するステップを含む、請求項６に記載に方法。
【請求項１１】
前記ユニバーサルコネクタが、保留中の要求を前記ＣＲＭデバイスに送信し、前記ＣＲＭ  ＡＰＩデバイスからのオペレータ応答をポーリングするステップをさらに含む、請求項１に記載の方法。
【請求項１２】
承認データを処理することが、前記ＣＲＭ  ＡＰＩサーバから受信したサブスクリプションの起動／変更のためのインストレーション命令を受信して、ＣＳＢプラットフォームＵＩによって表示可能な形式に変形するステップを含む、請求項１に記載の方法。
【請求項１３】
ＣＲＭ応答を処理することが、ＣＲＭ  ＡＰＩサーバから受信したアカウント修正をＣＳＢプラットフォームＵＩによって表示可能な形式に変形するステップをさらに含む、請求項１に記載の方法。
【請求項１４】
アカウント修正が、前記ユニバーサルコネクタデバイスに動作可能に接続されたサブスクリプションデータベースに記憶される、請求項１に記載の方法。
【請求項１５】
ＣＲＭ応答を処理することが、ＩＳＶサブスクリプション管理システムと関連付けられたサブスクリプション固有識別子を解析して整合させるステップをさらに含み、前記サブスクリプション固有識別子は、ＣＳＢプラットフォームサブスクリプション管理システムと関連付けられる、請求項１に記載の方法。
【請求項１６】
前記ユニバーサルコネクタが応答を提供するステップをさらに含み、前記応答は作成、修正および削除からなるグループから選択される、請求項１に記載の方法。
【請求項１７】
前記サブスクリプション要求および応答と関連付けられたデータを、前記ＣＳＢプラットフォームが動作している国の要求を満たす領域のデータベースに記憶することとをさらに含む、請求項１に記載の方法。
【請求項１８】
オペレータのアクションを前記ＣＲＭデータベースに記録する前記ＣＲＭデバイスと動作可能に接続された監査モジュールをさらに備える、請求項１に記載の方法。
【請求項１９】
監査データが、統合構成要素に関する技術的問題を解析するために使用される、請求項１８に記載の方法。
【請求項２０】
前記ＣＲＭデバイスは、ユニバーサルコネクタの認証のためのセキュリティモジュールをさらに備える、請求項１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本願は、２０１７年１０月３０日に出願された米国特許出願第６２／５７８，９９２号の優先権の利益を主張する国際出願であり、その本文および図面はその全体が参照として本願明細書に組み込まれる。
【０００２】
開示の実施形態の技術分野
本開示の実施形態は、概してクラウドサービス仲介、より詳細には、自動ユニバーサルコネクタを使用してクラウドアプリケーションをクラウドサービスブローカプラットフォームに統合するためのシステムおよび方法に関する。
【背景技術】
【０００３】
開示する実施形態の背景
独立したソフトウェアベンダー（ＩＳＶ）は、一般的に１つ以上のコンピュータハードウェアまたはオペレーティングシステムプラットフォームを実行するように設計されたソフトウェアアプリケーションを開発して販売する。このようなソフトウェアアプリケーションは、基本的ユーティリティまたは生産性強化アプリケーションから企業用のビジネスプロセスアプリケーション（例えば、顧客関係管理（ＣＲＭ）、企業資産計画（ＥＲＰ）、自動化ツールなど）にまで及ぶ。クラウドコンピューティングが普及するに連れて、ソフトウェアを配信する方法の一つとして、クラウドを介してソフトウェアを使用するサービスモデル、通称、サース（ＳａａＳ）も普及した。この配信方法を使用して、ＩＳＶは、パブリックなクラウドもしくはマーケットプレイスを通じてまたはクラウドサービスブローカ（ＣＳＢ）を通じて自身のソフトウェアアプリケーションまたは自身のソフトウェアアプリケーションへのサブスクリプションを販売することができる。
【０００４】
クラウドマーケットプレイスがクラウドベースのサービスおよびソフトウェアアプリケーションに顧客がアクセスできるようにオンラインの店頭を提供する一方で、クラウドサービスブローカは、例えば各々のクラウドアプリケーション用のプラグインまたはコネクタを使用することによってＩＳＶとエンドユーザ、再販売業者、小売業者などとの間の取引を容易化するために使用され得る。従来のクラウドサービスブローカの実装例においては、ＩＳＶは通常、特殊な統合構成要素を準備するが、これらはコネクタパッケージとコネクタバックエンドが統合されている。ここで、コネクタパッケージは、クラウドアプリケーションリソースを管理するために必要なアプリケーションリソース、サービス、ユーザインタフェース構成要素および制御方法の論理を宣言して定義するために使用されるようなメタデータ、制御方法の記述およびコンテンツファイルであり、コネクタバックエンドは、ＣＳＢから受信した制御方法によってアプリケーションプログラミングインタフェース（ＡＰＩ）コールを特定のＩＳＶクラウドアプリケーションに特有のＡＰＩコールに変換する。
【０００５】
しかしながら、多くのＩＳＶアプリケーションは、完全自動化されたＡＰＩサービスを有しない。したがって、ＣＳＢプラットフォームとの統合は問題となる。例えば、ＩＳＶはＡＰＩを開発して、統合構成要素を開発しなければならない。このような状況においては、ＣＳＢプラットフォームへのコネクタの開発は時間がかかり、全体の統合時間のかなりの部分を占める。さらに、コネクタのテストと確認には、統合プロセスにさらなる時間を追加する。したがって、自動ユニバーサルコネクタを使用してクラウドアプリケーションをクラウドサービスブローカプラットフォームに統合するためのシステムおよび方法に対する必要性が存在する。
【発明の概要】
【課題を解決するための手段】
【０００６】
開示する実施形態の要約
一態様においては、自動ユニバーサルコネクタを使用してクラウドアプリケーションをクラウドサービスブローカ（ＣＳＢ）プラットフォームに統合するための方法が提供される。この方法は、独立のソフトウェアベンダーデバイスからソフトウェア用のコネクタパッケージをコネクタハブで受信することと、ＣＳＢプラットフォーム、すなわちソフトウェアに対するライセンスを提供するようにさらに構成されたＣＳＢプラットフォームとの統合のためにコネクタパッケージ用のコネクタインスタンスを作成することとを含む。
【０００７】
いくつかの実施形態においては、方法は、ソフトウェアに対するサブスクリプション要求を、ＣＳＢプラットフォームインタフェースを介してクラウドサービスブローカコンピューティングデバイスで受信するステップと、サブスクリプション要求は作成、変更および削除からなるグループから選択されたアクティビティを含み、サブスクリプション要求を、ＣＳＢプラットフォームコントローラによってユニバーサルコネクタデバイスに送信するステップと、サブスクリプション要求をユニバーサルコネクタデバイスで処理するステップとをさらに含む。
【０００８】
いくつかの実施形態においては、方法は、ユニバーサルコネクタデバイスによって、顧客関係管理（ＣＲＭ）デバイスにサブスクリプション要求を通知するステップと、サブスクリプション要求をＣＲＭデータベースに記憶するステップと、サブスクリプション要求に対するユニバーサルコネクタデバイスによる承認を獲得するステップと、要求の承認を受信したら、サブスクリプション要求をユニバーサルコネクタデバイスで処理するステップとをさらに含む。
【０００９】
いくつかの実施形態においては、サブスクリプション承認の結果をＣＳＢプラットフォームに送信することは、ＣＳＢプラットフォームがサブスクリプション承認の結果を登録者に表示することを含む。方法は、コネクタパッケージがデベロッパポータル上で開発されることをさらに含むが、ここでデベロッパポータルは、独立したソフトウェアベンダーデバイスによってアクセス可能である。
【００１０】
いくつかの実施形態においては、サブスクリプション要求は、コネクタパッケージ内に定義された対応するリソースモデルをさらに含む。
【００１１】
いくつかの実施形態においては、サブスクリプション要求は、コネクタアプリケーションコントローラによって受信され、リソースモデルインタープリタで受信されるサブスクリプション要求を処理するステップであり、処理は、アプリケーションプログラミングインタフェース（ＡＰＩ）変換エンジンによって要求データを処理するステップをさらに含む。
【００１２】
いくつかの実施形態においては、方法は、ユニバーサルコネクタデバイスで、対応するコネクタパッケージのリソースモデルの解析カウンタおよび制限を処理することをさらに含む。
【００１３】
いくつかの実施形態においては、方法は、ユニバーサルコネクタデバイスで、対応するコネクタパッケージのリソースモデルの解析カウンタおよび制限を処理することをさらに含み、またアプリケーションプログラミングインタフェース（ＡＰＩ）変換エンジンでカウンタおよび制限を処理するステップをさらに含む。
【００１４】
いくつかの実施形態においては、変換は、ＣＳＢプラットフォーム要求をＣＲＭデバイスによって動作可能な形式に変形し、さらに要求をＣＲＭユーザインタフェース（ＵＩ）内に表示するステップを含む。
【００１５】
いくつかの実施形態においては、方法は、ユニバーサルコネクタが保留中の要求をＣＲＭデバイスに送信して、ＣＲＭ  ＡＰＩデバイスからのオペレータ応答をポーリングするステップと、ＣＲＭ  ＡＰＩサーバから受信したサブスクリプションの起動／変更のためのインストレーション命令を受信して、ＣＳＢプラットフォームＵＩによって表示可能な形式に変形するステップと、ＣＲＭ  ＡＰＩサーバから受信したアカウント修正をＣＳＢプラットフォームＵＩによって表示可能な形式に変形するステップと、アカウント修正を、ユニバーサルコネクタデバイスに動作可能に接続されたサブスクリプションデータベースに記憶するステップとをさらに含む。
【００１６】
いくつかの実施形態においては、方法は、ＩＳＶサブスクリプション管理システムと関連付けられたサブスクリプション固有識別子を解析して整合させることと、ここでサブスクリプション固有識別子はＣＳＢプラットフォームサブスクリプション管理システムと関連付けられ、ユニバーサルコネクタが応答を提供し、応答は作成、修正および削除からなるグループから選択され、サブスクリプション要求および応答と関連付けられたデータを、ＣＳＢプラットフォームが動作している国の要求を満たす領域のデータベースに記憶することとをさらに含む。
【００１７】
いくつかの実施形態においては、ＣＲＭデバイスと動作可能に接続された監査モジュールは、オペレータのアクションをＣＲＭデータベースに記録するが、監査データが統合構成要素に関する技術的問題を解析するために使用され、またＣＲＭデバイスは、ユニバーサルコネクタの認証のためのセキュリティモジュールをさらに備える。
【図面の簡単な説明】
【００１８】
実施形態ならびに本願明細書に含まれる他の特徴、利点、および開示、ならびに、それらを達成する方法は、本開示の様々な例示的実施形態に関する以下の説明および添付図面を参照することにより明らかになるとともに、本開示は、よりよく理解できる。
【００１９】
【図１】クラウドサービス仲介システムを介するクラウドアプリケーションの分配のためのクラウドサービスマーケットプレイスおよび仲介システムの例示的実施形態のブロック図である。
【００２０】
【図１Ａ】クラウドサービス仲介システムを介するクラウドアプリケーションの分配のためのクラウドサービスマーケットプレイスおよび仲介システムの別の例示的実施形態のブロック図である。
【００２１】
【図１Ｂ】自動ユニバーサルコネクタを使用してクラウドアプリケーションをクラウドサービスブローカプラットフォームに統合するためのシステムの例示的実施形態のブロック図である。
【００２２】
【図２】図１のクラウドサービス仲介システムのコンピューティングデバイスのうちの１つの例示的実施形態のブロック図である。
【００２３】
【図３】図１のデベロッパポータルコンピューティングデバイスの例示的環境のブロック図である。
【００２４】
【図４Ａ】図１のデベロッパポータルコンピューティングデバイスによって実行され得るクラウドサービス仲介システム内でコネクタを作成して分配するための例示的方法の概略フロー図である。
【図４Ｂ】図１のデベロッパポータルコンピューティングデバイスによって実行され得るクラウドサービス仲介システム内でコネクタを作成して分配するための例示的方法の概略フロー図である。
【図４Ｃ】図１のデベロッパポータルコンピューティングデバイスによって実行され得るクラウドサービス仲介システム内でコネクタを作成して分配するための例示的方法の概略フロー図である。
【図４Ｄ】図１のデベロッパポータルコンピューティングデバイスによって実行され得るクラウドサービス仲介システム内でコネクタを作成して分配するための例示的方法の概略フロー図である。
【００２５】
【図５】図１のデベロッパポータルコンピューティングデバイスによって実行され得るバージョン分析をコネクタオブジェクトに対して実行するための例示的方法の概略フロー図である。
【００２６】
【図６】図１のデベロッパポータルコンピューティングデバイスによって実行され得るコネクタオブジェクトに対するペアリング分析を実行するための別の例示的方法の概略フロー図である。
【００２７】
【図７】自動ユニバーサルコネクタを使用してクラウドアプリケーションをクラウドサービスブローカプラットフォームに統合するためのシステムの例示的実施形態の概略フロー図である。
【００２８】
【図８】自動ユニバーサルコネクタを使用してクラウドアプリケーションをクラウドサービスブローカプラットフォームに統合するためのシステムの別の例示的実施形態の概略フロー図である。
【発明を実施するための形態】
【００２９】
開示する実施形態の詳細な説明
本発明の原理の理解を促進するために、図面に示される実施形態を参照しつつ、特定の言語を用いて記述する。それにもかかわらず、本発明の範囲を限定する意図でないことを理解されたい。
【００３０】
図１は、統合コネクタを作成して分配するためのクラウドサービスマーケットプレイスおよび仲介システム１００を示す。クラウドサービスマーケットプレイスおよび仲介システム１００は、デベロッパポータルコンピューティングデバイス１１６、ＩＳＶコンピューティングデバイス１２２およびブローカコンピューティングデバイス１３０を含み、これらの各々は、（例えば、ネットワーク１２８を介する）マーケットプレイスコンピューティングデバイス１０２と、ＣＲＭ  ＡＰＩサーバ１３８およびユニバーサルコネクタコンピューティングデバイス１３６とに通信可能に結合される。本開示の一実施形態においては、ＩＳＶと関連付けられたクラウドアプリケーションデベロッパ／プログラマが、ＩＳＶのクラウドアプリケーションをクラウドサービス仲介システム１００に統合するためのコネクタパッケージを開発し得る。
【００３１】
コネクタパッケージを開発するために、デベロッパは、デベロッパポータル（例えば、デベロッパポータルコンピューティングデバイス１１６のデベロッパユーザインタフェース（ＵＩ）ポータル１１８）を使用して、特定のサービスが（例えば、マーケットプレイスコンピューティングデバイス１０２のクラウドサービスブローカマーケットプレイス１０４を介して）クラウドサービスマーケットプレイス内で販売の申し込みをされるようにする。デベロッパは、デベロッパポータルコンピューティングデバイス１１６に（例えば、ネットワーク１２８を介して）通信可能に結合されたエンドポイントコンピューティングデバイス（図示せず）を介してデベロッパＵＩポータル１１８にアクセスし得ることを理解すべきである。
【００３２】
本開示の少なくとも１つの実施形態においては、コネクタパッケージは通常、クラウドアプリケーションリソースを管理するために必要であるアプリケーションリソース、サービス、ユーザインタフェース構成要素および制御方法の論理を宣言して定義するために使用可能であるメタデータ、制御方法記述およびコンテンツファイルを一般的に含む、アーカイブファイルという形態を有する。コネクタパッケージは、ＩＳＶのアプリケーション属性を定義するために使用される宣言型ファイルと、「コネクタフロントエンド」、すなわちクラウドサービスブローカの顧客がクラウドサービスブローカインタフェース内にみるウェブインタフェースとからなることが理解されるであろう。このウェブインタフェースは、ウィジェット、事前定義されたページ構造、ナビゲーション方法および画面挿入機構を含む特殊なフレームワークを使用してコネクタパッケージデベロッパが開発する。一般的なコネクタフロントエンドは、事前定義されたビューに挿入された画面、ウィジェットをレンダリングするためのカスタム論理およびカスタムナビゲーション構造からなる。ウィジェットは、対応するクラウドアプリケーションの顧客にとって価値があるとコネクタデベロッパがみなす情報、例えば、使用報告、サブスクリプションおよびサービス情報、命令などを表示し得る。
【００３３】
クラウドサービスブローカマーケットプレイスが提供する命令を使用して、コネクタパッケージは、コネクタアプリケーション、言い換えれば、結合されたユニバーサルコネクタと通信するために使用可能であるそのコネクタのインスタンス（例えば、図１および図１Ａのコネクタファクトリ１１２の対応するコネクタインスタンス１１４を参照）に変換することができる。
【００３４】
デベロッパポータルは、モデル（例えば、アプリケーションオブジェクトのビジネスモデルの説明）、ユーザの相互作用をサポートするユーザインタフェースおよびコネクタに対するバックエンド（例えば、プロセスのプロビジョニング、管理、要求監視などのための具象的な状態トランスファ（ＲＥＳＴ）サービス）などのコネクタパッケージの主要な構成要素を定義するために使用可能である入力をデベロッパから受信するように構成される。デベロッパポータルは、クラウドサービスアドレス、デフォルト設定、価格決定情報、販売テンプレート、クラウドサービスの識別子などのコネクタと関連付けられたさらなる情報を受信するように構成され得ることを理解すべきである。
【００３５】
デベロッパポータルは、以下にさらに詳細に説明するように、コネクタパッケージを生成し、生成されたコネクタパッケージをテストし、テストされたコネクタパッケージをコネクタカタログ（例えば、マーケットプレイスコンピューティングデバイス１０２のコネクタハブ１０６の利用可能サービスデータベース１１０）に対して公開するようにさらに構成される。開発フェーズに続いて、コネクタパッケージは生成フェーズに進み得るが、コネクタを（例えば、ブローカコンピューティングデバイス１３０のクラウドサービスブローカインタフェース１３２を介してクラウドサービスブローカマーケットプレイス１０４を通って）クラウドサービスブローカに展開することができる。
【００３６】
ブローカコンピューティングデバイス１３０は、例えば再販売業者、クラウドアプリケーションのエンドユーザなどのクラウドサービスブローカと顧客との間で様々なクラウドアプリケーションに対するライセンスを管理するように構成される。例示的な実施例においては、ＩＳＶ（例えば、クラウドサービスプロバイダ）はクラウドサービスマーケットプレイス１０２の制御エンティティと契約し、クラウドサービスブローカマーケットプレイスの顧客（例えば、クラウドサービスブローカ）がコネクタパッケージをアップロードすることを可能とするコネクタパッケージを提供して、このクラウドアプリケーションを管理するプロセスをクラウドサービスブローカプラットフォームに統合することによってエンドユーザに対するライセンスの販売を容易化する。ライセンスは、そのエンドユーザまたはこれと関連付けられた他のエンドユーザが、ＩＳＶのクラウドサービス（例えば、クラウドベースのソフトウェアアズアサービス（ＳａａＳ）アプリケーション）に対して確実にアクセスすることを可能とし得る。
【００３７】
そうするために、例示するマーケットプレイスコンピューティングデバイス１０２は、デベロッパＵＩポータル１１８を介して生成されたパッケージ済みのコネクタを（例えば、利用可能サービスデータベース１１０に）記憶し、またＩＳＶコンピューティングデバイス１２２のＩＳＶインタフェース１２４とブローカコンピューティングデバイス１３０のクラウドサービスブローカインタフェース１３２との間にコネクタファクトリ１１２のコネクタ１１４のためのプロビジョニングチャネルを確立するように構成されたコネクタハブ１０６を含む。したがって、クラウドサービスブローカは、パッケージ済みのコネクタと関連付けられたクラウドアプリケーションに対するライセンスを、それらのそれぞれのクラウドサービスブローカインタフェース１３２を介してエンドユーザ（例えば、顧客、ブローカ、再販売業者など）に対して販売し得る。
【００３８】
コネクタハブ１０６は、各々のクラウドサービスブローカ１３０に対するプロビジョニングチャネルクレデンシャル（例えば、クレデンシャルデータベース１０８に記憶され得るようなブローカクレデンシャルおよび／またはクラウドＩＳＶクレデンシャルおよび／またはユニバーサルコネクタクレデンシャルおよび／またはＣＲＭ  ＡＰＩサーバ１３８クレデンシャル）を生成するようにさらに構成される。プロビジョニングチャネルクレデンシャルは、プロビジョニングチャネルクレデンシャルを使用して２つのエンティティ間の安全な通信チャネルを認証するために使用可能である任意のタイプの情報（例えば、暗号化鍵または他の任意のデータ）であり得ることを理解すべきである。
【００３９】
本開示の少なくとも１つの実施形態においては、プロビジョニングチャネルはクラウドサービスブローカマーケットプレイスによってセットアップすることができる。プロビジョニングチャネルは、例えば新しいサブスクリプションの作成、既存のサブスクリプションの削除、既存のサブスクリプションの修正、顧客に対する起動命令の提供、地理的に分散した顧客の個人データの閲覧および変更などのアクティビティを含む注文をＩＳＶのオペレータが受信することができるユニバーサルコネクタ１３６およびＣＲＭ  ＡＰＩサーバ１３８から接続される。
【００４０】
ユニバーサルコネクタ１３６の目的は、クラウドサービスブローカのプラットフォームのＡＰＩをＣＲＭ  ＡＰＩサーバ１３８のＡＰＩに変換することであることが理解されるであろう。ユニバーサルコネクタ１３６は自身がクラウドサービスブローカから受信し、かつ自身がそれをＣＲＭ  ＡＰＩサーバ１３８に適用可能である形式に変換することができる任意のクラウドアプリケーションの任意のコネクタパッケージの任意のリソースモデルを処理することが可能であることがさらに理解されるであろう。ユニバーサルコネクタ１３６は、ＣＳＢプラットフォーム内のＩＳＶのアプリケーションのライフサイクルフローをＣＲＭ  ＡＰＩサーバ１３８内のエンティティに変形し、これらのエンティティに対するオペレータの反応によって、それはアプリケーションの現行の状態に関する必要とされる情報をＣＳＢプラットフォームに提供することができる。このようなプロビジョニングチャネルは、ＡＰＩも他のいかなる統合インスツルメントも有しないＩＳＶに対するクラウドアプリケーションプロビジョニングの自動化を可能とすることが理解されるであろう。
【００４１】
例示するクラウドサービスマーケットプレイスおよび仲介システム１００内に示すように、マーケットプレイスコンピューティングデバイス１０２、デベロッパポータルコンピューティングデバイス１１６、ＩＳＶコンピューティングデバイス１２２、ブローカコンピューティングデバイス１３０、ユニバーサルコネクタコンピューティングデバイス１３６、ＣＲＭ  ＡＰＩサーバ１３８の各々はコンピューティングデバイス１３４として具現化される。したがって、それぞれのコンピューティングデバイス１３４の各々は、本明細書に記載する機能を実行することが可能である任意のタイプのコンピュータおよび／または記憶デバイスとして具現化され得ることを理解すべきである。くわえて、それぞれのコンピューティングデバイス１３４の各々は、２つ以上のコンピューティングデバイス１３４を含み得ることをさらに理解すべきである。例えば、１つ以上のコンピューティングデバイス１３４が、クラウドアーキテクチャのネットワークまたはデータセンター内の１つ以上のサーバ（例えば、スタンドアロン、ラックマウンテッドなど）および／またはコンピュートブレードおよびデータ記憶デバイス（例えば、記憶エリアネットワーク（ＳＡＮ）のそれ）の組み合わせとして具現化され得るが、同時に１つ以上の他のコンピューティングデバイス１３４が、１つ以上のデスクトップコンピュータ、モバイルコンピューティングデバイス（例えば、スマートフォン、ウェアラブル機器、タブレット、ラップトップ、ノートブックなど）または他の任意のタイプの「スマートな」もしくは別様にインターネット接続されたデバイスとして具現化され得る。
【００４２】
図１Ａは、クラウドサービス仲介システムを介するクラウドアプリケーションの分配のためのクラウドサービスマーケットプレイスおよび仲介システムの別の実施形態である。唯一の相違は、オンプレミス、即ち、内部設置用クラウドサービスブローカ用のクラウドサービスブローカマーケットプレイスセットコネクタインスタンスである。この実施形態によれば、クラウドサービスブローカプラットフォームインタフェースによって収集され、クラウドアプリケーションのサブスクリプションの管理のためにＩＳＶに変換する必要があるアカウント、リソースモデルおよび他のデータに関するすべてのデータが、ユニバーサルコネクタに対して対応するコネクタインスタンスを介してクラウドサービスブローカコントローラによって変換される。その場合、コネクタハブ１０６が、クラウドサービスブローカ要求によって展開されたクラウドサービスブローカとすべてのコネクタインスタンスとの間に対となる秘密鍵を生成する。
【００４３】
本開示の少なくとも１つの実施形態においては、自動ユニバーサルコネクタを使用してＣＳＢプラットフォーム内のＩＳＶのアプリケーションのライフサイクルフローをＩＳＶに変換するためのシステムの例示する実施形態のブロック図を、図１Ｂに示す。システム１４０は、ＣＲＭ  ＡＰＩサーバ１３８、ブローカコンピューティングデバイス１３０、ブラウザ１６４、ＣＲＭデータベース１６６およびユニバーサルコネクタ１３６をさらに含む。
【００４４】
本開示の少なくとも１つの実施形態においては、ＣＲＭ  ＡＰＩサーバ１３８は、ＣＲＭ通知エンジン１５２、注文マネージャ１５３、監査モジュール１５６およびセキュリティモジュール１５８を含む。本開示の少なくとも１つの実施形態においては、ブローカコンピューティングデバイス１３０は、複数のコネクタインスタンスの内の少なくとも１つと、クラウドサービスブローカコントローラ１０６とを含むプラットフォーム１３０Ａを含む。プラットフォーム１３０Ａのクラウドサービスブローカコントローラ１０６は、要求と、クラウドサービスサブスクリプション作成（プロビジョニング）、削除および変更のすべての必要なデータとをユニバーサルコネクタに送信するように構成される。
【００４５】
本開示の少なくとも１つの実施形態においては、ユニバーサルコネクタ１３６は、すべてのモデル構成を取り扱って、着信するサブスクリプション要求をＣＲＭ注文に変形するように構成される。ユニバーサルコネクタ１３６は、コネクタアプリケーションコントローラ１７２、リソースモデルインタープリタ１７４、ポーリングおよび通知エンジン１７６ならびにＡＰＩ変換エンジン１７８をさらに含む。本開示の少なくとも１つの実施形態においては、ユニバーサルコネクタ１３６は、そのサブスクリプションが作成中、修正中または削除中であるクラウドサービスに関する少なくとも１つのコネクタインスタンス１１４と関連付けられた対応するコネクタパッケージのリソースモデルをクラウドサービスブローカコントローラ１０６から受信するように構成される。本開示の少なくとも１つの実施形態においては、リソースモデルインタープリタ１７４は、このリソースモデルを解析し、処理中のサブスクリプションに含まれるリソースのカウンタ（例えば、ディスクスペース、仮想マシン、メールボックスなど）および制限（２つのメールボックス、１ＧＢのディスクスペースなど）を識別し、識別されたカウンタおよび制限をコネクタアプリケーションコントローラ１７２に回収するように構成される。
【００４６】
本開示の少なくとも１つの実施形態においては、コネクタアプリケーションコントローラ１７２は、処理されたサブスクリプション（例えば、関連付けられたクラウドアプリケーションの名称、リソースなど）、リソースの識別されたカウンタおよび制限に関するデータを受信して、このデータをＡＰＩ変換エンジン１７８に送信するように構成される。
【００４７】
本開示の少なくとも１つの実施形態においては、ＡＰＩ変換エンジン１７８は、受信したデータを処理して、それをＣＲＭシステムが理解できる形式に変換して、これらを注文としてミラーリングするように構成される。ＡＰＩ変換エンジン１７８はデータを処理し、これによってＣＲＭシステムを使用するオペレータが、（注文に応答して）どんな種類のアクションが、どの１つのクラウドアプリケーションならびにこのクラウドアプリケーションによって提供されるリソースおよびサービスによって必要とされるかを容易に識別可能となるようにすることが理解されるであろう。
【００４８】
ポーリングおよび通知エンジン１７６は、ＣＲＭ  ＡＰＩサーバ１３８に新しい注文に関して通知し、その代わりにこの注文のステータスに関するデータを受信する。
【００４９】
ＣＲＭ  ＡＰＩサーバ１３８は、注文と、処理されたサブスクリプションの顧客に関する情報とをそのデータベース１６６に記憶する。本開示の少なくとも１つの実施形態においては、ＣＲＭ  ＡＰＩサーバ１３８は、オペレータが実施した注文のすべての修正（ユニバーサルコネクタから受信したアカウントデータと比較して変更されたアカウントデータ、サブスクリプションの変更（カウンタ、制限などのミス）など）を記憶するように構成された監査モジュール１５６を含む。セキュリティモジュール１５８が、任意のユニバーサルコネクタ（例えば、ユニバーサルコネクタデバイス１３６）を認証する。ＣＲＭ通知エンジン１５２は、注文に関する通知をオペレータに対して表示する。
【００５０】
本開示の少なくとも１つの実施形態においては、システム１４０は、ＣＲＭデータベース１６６を含む。ＣＲＭデータベース１６６は、ユニバーサルコネクタ１３６から受信したままの注文および顧客情報を処理するように構成されるが、パラメータは、クラウドサービスブローカの地理に関する情報を含む。例として、クラウドサービスブローカがヨーロッパに位置付けられている場合、このようなクラウドサービスブローカによって始動された注文に関する情報は、ヨーロッパに位置付けられたデータベースに記憶され、ここではこのような要件は、法的および／または規制の要件によって推進され得る。ＣＲＭデータベース１６６は、本明細書に開示するように実行するように構成された単一のデータベース、分散されたデータベースまたは代替のデータベース配列であり得ることが理解されるであろう。
【００５１】
本開示の少なくとも１つの実施形態においては、ブラウザ１６４はオペレータ側に展開され得るが、ブラウザ１６４は、（例えば、ネットワーク１２８を介して）ＣＲＭ  ＡＰＩサーバ１３８と動作可能に通信するために用いられ、そのため、オペレータは、例えば、サブスクリプションを作成する、サブスクリプションを更新する／削除するなどの注文に応答して、ＩＳＶネイティブサブスクリプション作成システムに対して管理的機能を実行することができる。
【００５２】
ここで図２を参照すると、マーケットプレイスコンピューティングデバイス１０２、デベロッパポータルコンピューティングデバイス１１６、ＩＳＶコンピューティングデバイス１２２およびブローカコンピューティングデバイス１３０のうちの１つ以上を表すコンピューティングデバイス１３４の例示の実施形態が示されている。例示のコンピューティングデバイス１３４は、中央処理ユニット（ＣＰＵ）２００、入／出力（Ｉ／Ｏ）コントローラ２０２、メモリ２０４、ネットワーク通信回路２０６およびデータ記憶デバイス２１０ならびに、いくつかの実施形態においては１つ以上のＩ／Ｏペリフェラル２０８を含む。いくつかの実施形態においては、例示の構成要素のうちの１つ以上が、単一の集積回路（ＩＣ）上の単一のシステムオンチップ（ＳｏＣ）上に組み合わされ得る。代替の実施形態が、本明細書の明瞭さを維持するために図示されないグラフィック処理ユニット（ＧＰＵ）、電源などの例示のコンピューティングデバイス１３４の構成要素にさらに加えたもの、より少ないものおよび／または代替物を含み得ることを理解すべきである。それぞれのコンピューティングデバイス１３４の記憶／計算構成要素のタイプは、それぞれのコンピューティングデバイス１３４のタイプおよび意図する用途に基づいて予測され得ることをさらに理解すべきである。 
【００５３】
ＣＰＵ２００、すなわちプロセッサは、データを処理することが可能な任意のタイプのハードウェアまたは回路の組み合わせとして具現化され得る。したがって、ＣＰＵ２００は、シングルコアプロセッサアーキテクチャの１つの処理コア（図示せず）またはマルチコアプロセッサアーキテクチャの複数の処理コアを含み得る。処理コアの数とは無関係に、ＣＰＵ２００は、プログラム命令を読み取って実行することが可能である。いくつかの実施形態においては、ＣＰＵ２００は、ＣＰＵ２００と直接に集積され得るまたはＣＰＵ２００に対する別個の配線を持つ別個のチップ上に配置され得るキャッシュメモリ（図示せず）を含み得る。いくつかの実施形態においては、ＣＰＵ２００に／から発行されたコマンドではなく、パイプライン論理が、ソフトウェアおよび／またはハードウェア動作（例えば、ネットワークトラフィック処理動作）を実行するために使用され得ることを理解すべきである。
【００５４】
Ｉ／Ｏコントローラ２０２、すなわちＩ／Ｏインタフェースは、入／出力デバイスとコンピューティングデバイス１３４との間をインタフェースすることが可能な任意のタイプのコンピュータハードウェアまたは回路の組み合わせとして具現化され得る。例示的には、Ｉ／Ｏコントローラ２０２は、入／出力要求をＣＰＵ２００から受信して、制御信号をそれぞれの入／出力デバイスに送信し、これによってコンピューティングデバイス１３４への／からのデータフローを管理するように構成される。
【００５５】
メモリ２０４は、処理のためのデータおよび命令を保持することが可能な任意のタイプのコンピュータハードウェアまたは回路の組み合わせとして具現化され得る。このようなメモリ２０４は、メインメモリまたは一次メモリと呼ばれ得る。いくつかの実施形態においては、コンピューティングデバイス１３４の１つ以上の構成要素がメモリに直接アクセスすることが可能であり、そのため、あるデータはＣＰＵ２００とは無関係に直接メモリアクセス（ＤＭＡ）を介して記憶され得ることを理解すべきである。
【００５６】
ネットワーク通信回路２０６は、無線および／または有線の通信モードを介してネットワークインタフェース通信（例えば、メッセージ、データグラム、パケットなど）を管理することが可能な任意のタイプのコンピュータハードウェアまたは回路の組み合わせとして具現化され得る。したがって、いくつかの実施形態においては、ネットワーク通信回路２０６は、コンピューティングデバイス１３４をコンピュータネットワーク（例えば、ネットワーク１２８）ならびにクラウドサービスマーケットプレイスおよび仲介システム１００の他のコンピューティングデバイスに接続するように構成されることが可能なネットワークインタフェースコントローラ（ＮＩＣ）を含み得る。
【００５７】
１つ以上のＩ／Ｏペリフェラル２０８は、コンピューティングデバイス１３４に接続し、これと通信するように構成された任意の補助デバイスとして具現化され得る。例えば、Ｉ／Ｏペリフェラル２０８は、マウス、キーボード、モニター、タッチ画面、プリンタ、スキャナ、マイクロフォン、スピーカなどを含み得るが、これに限定されない。したがって、いくつかのＩ／Ｏデバイスは、１つの機能（すなわち入力または出力）または両方の機能（すなわち、入力および出力）が可能であることを理解すべきである。
【００５８】
いくつかの実施形態においては、Ｉ／Ｏペリフェラル２０８は、コンピューティングデバイス１３４のケーブル（例えば、リボンケーブル、ワイヤ、ユニバーサルシリアルバス（ＵＳＢ）ケーブル、高品位マルチメディアインタフェース（ＨＤＭＩ（登録商標））ケーブルなど）を介してコンピューティングデバイス１３４に接続され得る。このような実施形態においては、ケーブルは、間で実施される通信がＩ／Ｏコントローラ２０２によって管理することができるコンピューティングデバイス１３４の対応するポート（図示せず）に接続される。代替実施形態においては、Ｉ／Ｏペリフェラル２０８は、ネットワーク通信回路２０６によって管理することができる無線通信モード（例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｗｉ−Ｆｉ（登録商標）など）を介してコンピューティングデバイス１３４に接続され得る。
【００５９】
データ記憶デバイス２１０は、データの不揮発性記憶が可能な任意のタイプのコンピュータハードウェア（例えば、半導体記憶媒体、磁気記憶媒体、光記憶媒体など）として具現化され得る。このようなデータ記憶デバイス２１０は通常は補助または二次ストレージと呼ばれ、一般的には、上述したメモリ２０４と比較して多量のデータを記憶するために使用される。
【００６０】
また図１を参照すると、例示のクラウドサービスマーケットプレイスシステム１００は、他のコンピューティングデバイス１３４（すなわち、デベロッパポータルコンピューティングデバイス１１６、ＩＳＶコンピューティングデバイス１２２およびブローカコンピューティングデバイス１３０）がマーケットプレイスコンピューティングデバイス１０２と通信するために使用可能であるネットワーク１２８を含む。ネットワーク１２８は、任意の有線および／または無線の通信技術およびネットワーク通信送信プロトコルを利用するローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、メトロポリタンエリアネットワーク（ＭＡＮ）、グローバルネットワーク（インターネット）などを含む任意のタイプの有線および／または無線のネットワークとして実現され得る。したがって、ネットワーク１２８は、一連の有線および／または無線の配線を介してネットワーク通信トラフィックの流れおよび／または処理を容易化するための１つ以上の通信可能に結合されたネットワークコンピューティングデバイス（図示せず）を含み得る。このようなネットワークコンピューティングデバイスは、１つ以上のアクセスポイント、ルータ、スイッチ、サーバ、計算デバイス、記憶デバイスなどを含み得るが、これに限定されない。
【００６１】
例えば、このようなネットワークコンピューティングデバイスのうちの１つ以上は、マーケティングコンピューティングデバイス１０２、デベロッパポータルコンピューティングデバイス１１６、ＩＳＶコンピューティングデバイス１２２および／またはブローカコンピューティングデバイス１３０のうちの１つ以上を、有線（例えば、イーサネット、トークンリングなど）を使用するＬＡＮ構成および／または無線（例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｗｉ−Ｆｉ（登録商標）、無線ブロードバンド、ＺｉｇＢｅｅ（登録商標）など）の通信技術および関連付けられたプロトコルを使用するＷＬＡＮ構成内のネットワーク１２８に対して結合するように構成され得る。さらなる例においては、ＬＡＮ構成は、ネットワーク１２８のさらなるネットワークコンピューティングデバイスを介して１つ以上のより大規模なエリアネットワーク（例えば、ＷＡＮ、メトロポリタンエリアネットワーク（ＭＡＮ）、インターネットなど）に（例えば、同軸ケーブル、モバイル電話、ファイバーなどを介して）結合され得る。ネットワークコンピューティングデバイスおよび／またはネットワーク構成のうちの１つ以上は、仮想化され得る（例えば、仮想スイッチ、仮想ＬＡＮなど）ことを理解すべきである。
【００６２】
すでに述べたように、デベロッパポータルコンピューティングデバイス１１６はデベロッパＵＩポータルを含み、ＩＳＶコンピューティングデバイス１２２はクラウドＩＳＶインタフェース１２４を含み、例示のブローカコンピューティングデバイス１３０はクラウドサービスブローカインタフェース１３２を含む。デベロッパＵＩポータル１１８、クラウドＩＳＶインタフェース１２４およびクラウドサービスブローカインタフェース１３２の各々は、本明細書に記載する機能を実行することが可能なソフトウェア、ハードウェア、ファームウェアおよび回路の任意の組み合わせとして具現化され得る。いくつかの実施形態においては、デベロッパＵＩポータル１１８、クラウドＩＳＶインタフェース１２４およびクラウドサービスブローカインタフェース１３２のうちの１つ以上は、それらのそれぞれのコンピューティングデバイス１３４のディスプレイに情報を（例えば、グラフィックＵＩ、コマンドラインインタフェースなどを介して）レンダリングするように構成され得る。このような実施形態においては、デベロッパＵＩポータル１１８、クラウドＩＳＶインタフェース１２４および／またはクラウドサービスブローカインタフェー ス１３２は、ユーザがログインするために行った入力が受信され、中継されるようにそれぞれのインタフェースを構成しまたはこれと関連付けられた情報（例えば、設定）が操作されるように構成され得る。
【００６３】
ここで図３を参照すると、デベロッパポータルコンピューティングデバイス１１６の例示の環境３００が示されている。例示の環境３００は、コネクタビルダー３０４、コネクタプレーヤー３１４、テストシステム３１６およびエキスパートシステム３１８、ならびに図１のデベロッパＵＩポータル１１８を含む。いくつかの実施形態においては、デベロッパＵＩポータル１１８、コネクタビルダー３０４、コネクタプレーヤー３１４、テストシステム３１６およびエキスパートシステム３１８のうちの１つ以上は、自身上に命令を記憶した１つ以上のコンピュータ可読媒体（例えば、メモリ２０４、データ記憶デバイス２１０および／または他の任意の媒体記憶デバイス）と、１つ以上のコンピュータ可読媒体と結合され、本明細書に記載する機能を実行する命令を実行するように構成された１つ以上のプロセッサ（例えば、ＣＰＵ２００）とを含み得る。くわえて、例示の環境３００はモデルデータベース３０２およびライブラリマネージャ３０６を含み、これらの各々を以下にさらに詳しく説明する。
【００６４】
すでに述べたように、デベロッパＵＩポータル１１８は、本明細書に記載する機能を実行することが可能な任意のタイプのファームウェア、ハードウェア、ソフトウェア、回路またはこれらの組み合わせとして具現化され得る。くわえて、コネクタビルダー３０４、コネクタプレーヤー３１４、テストシステム３１６およびエキスパートシステム３１８の各々もまた、本明細書に記載するそれぞれの機能を実行することが可能な任意のタイプのファームウェア、ハードウェア、ソフトウェア、回路またはこれらの組み合わせとして具現化され得る。
【００６５】
またすでに述べたように、デベロッパＵＩポータル１１８は、クラウドサービス用のパッケージングされたＡＰＩコネクタを生成するためにインタフェースをデベロッパに提供するように構成される。そうするために、デベロッパＵＩポータル１１８は、デベロッパと（例えば、ハイパーテキストトランスファプロトコル（ＨＴＴＰ）要求／応答を介して）通信し、環境３００の様々な構成要素および記憶媒体とインタフェースするように構成される。
【００６６】
例えば、デベロッパＵＩポータル１１８は、デベロッパによって開発されたＡＰＩコネクタをパッケージングするために使用可能な情報（すなわち、コネクタ記述情報）を受信するためにデベロッパと通信するように構成される。すでに述べたように、ＡＰＩコネクタは、クラウドサービスブローカとクラウドＩＳＶとの間のインタフェースを可能とするコネクタのインスタンスを生成するために使用可能である。したがって、コネクタ記述情報は、ＡＰＩコネクタのインスタンスを作成するために使用することができるＡＰＩコネクタに関連する任意の情報を含み得る。例えば、コネクタ記述情報は、ＵＩ情報（例えば、サービスのタイトル、１つ以上のアイコンなど）、リソースモデル情報（例えば、ディスクスペース、メールボックス、ドメインなどの提供されるサービス）、プロビジョニングチャネルを確立するためのクレデンシャル、サービスプラン情報（例えば、ブローカ／プロバイダに対する請求ルール）、リソース情報を含み得るが、これには限定されない。コネクタ記述情報は、モデルデータベース３０２に記憶され得る。
【００６７】
デベロッパは、デベロッパＵＩポータル１１８を介してコネクタ記述情報（例えば、モデルデータベース３０２に記憶され得るようなもの）の任意の部分を修正し得ることを理解すべきである。そうするために、デベロッパＵＩポータル１１８は、コネクタのモデルを生成するおよび／またはコネクタを（例えば、コネクタビルダー３０４を介して）公開するためにデベロッパによって使用可能である１つ以上の視覚インタフェースを提供し、（例えば、コネクタプレーヤー３１４およびテストシステム３１６を介して）開発されたコネクタに照らし合わせて１つ以上のテストをテストシステム上で実行し、（例えば、エキスパートシステム３１８を介して）コネクタを１つ以上の互換性ルールに照らし合わせて検証して、コネクタに対して実施されたアップグレード／変更に対する下位互換性を保証するように構成される。
【００６８】
モデルデータベース３０２は各々のコネクタに対するモデルを記憶するように構成される。モデルは、ＵＩラベル（例えば、名称、記述など）、視覚材料（例えば、アイコン、スクリーンショット、スタイルなど）、ＵＩ拡張子（例えば、ＵＩ要素を既存のアプリケーションにどのようにプラグインするかの記述）、コネクタによってサポートされたビジネスオブジェクトの定義（例えば、ユーザ、メールボックス、スパムフィルタリングルールなど）のコネクタを定義するまたは別様にパッケージングするために使用可能な任意の情報を含み得る。いくつかの実施形態においては、ＵＩ拡張子の少なくともある部分が、ＨＴＭＬページとして定義され、また、関連するＪａｖａＳｃｒｉｐｔ、ＣＳＳ、画像などならびに、適用可能なページ毎にＵＩ要素をＵＩ構造にプラグインするための記述を含み得ることを理解すべきである。くわえて、モデル情報は、コネクタによってサポートされるすべてのオブジェクトに対して、１つ以上のプロパティ（例えば、タイプ、記述、ラベル、デフォルト値など）、１つ以上の関係（すなわち、オブジェクトがどのように関係のサービスドメインモデルおよびカーディナリティの他のオブジェクトと接続されるか）および／または用途／制限マッピング（例えば、どのように用途／制限が、販売可能なリソースおよびプランに対してマッピングされるか）を含み得る。いくつかの実施形態においては、モデルデータベースは、同一のコネクタおよび／または複数のコネクタの複数のバージョンを維持し得ることを理解すべきである。したがって、複数のバージョンが維持されるこのような実施形態においては、バージョン間の相違（すなわち、変更）が、（例えば、あるモデル情報の比較を介して）自動的に決定され得ることをさらに理解すべきである。
【００６９】
コネクタビルダー３０４は、コネクタと関連付けられたすべてのビジネスオブジェクトに対するスキーマファイルを生成するように構成される。そうするために、コネクタビルダー３０４は、ビジネスオブジェクトを識別してスキーマファイルを生成するために、コネクタのメタデータ（例えば、コネクタ記述情報）を分析するように構成される。くわえて、コネクタビルダー３０４は、コネクタがコネクタの最初のバージョンではない（すなわち、パッケージングされているコネクタが、アップグレードである場合とアップグレードでない場合があるが、アップグレードでない場合には、同一のサービスに対する以前にパッケージングされたコネクタに対する変更を含む）ような実施形態においてはアップグレード命令のセットを生成するように構成される。アップグレード命令は、コネクタのメタデータに対する変更、タイプの範囲内の新しいプロパティの追加もしくはデフォルト値の割り当て、プロパティの除去、プロパティ名称／タイプの変更、サービス（例えば、アプリケーションドメインモデル内の新しいオブジェクト）の追加、他のコネクタのまたはアプリケーションドメインモデルのオブジェクトへの／間の新しい関係の追加、関係の名前の変更、関係のカーディナリティまたはオプションの変更、関係が必要とするタイプの変更、プロパティアクセスルールの変更、関係アクセスおよび／または割り当てルールの変更、ルールに従った２つ以上の関係への関係の分割などの、追跡して、コネクタのアップグレードされたバージョンに適用することができる任意のモデル変更を含み得る。
【００７０】
コネクタビルダー３０４は、上記の生成されたスキーマおよびアップグレード命令を、適用可能である場合、コネクタのソースコードおよびフロントエンドテンプレートと共にコネクタパッケージにアセンブルするようにさらに構成される。さらに、コネクタビルダー３０４は、アセンブルされたコネクタパッケージを、コネクタのカタログを含むマーケットプレイスコンピューティングデバイス１０２の利用可能サービスデータベース１１０（すなわち、利用可能なサービス）にアップロードするように構成される。
【００７１】
ライブラリマネージャ３０６は、互換性ルールデータベース３０８、コネクタスケルトンデータベース３１０およびフロントエンドテンプレートデータベース３１２を例示的に含む例示のデータベース間のデータの流れを管理するように構成される。そうするために、ライブラリマネージャ３０６は、データベースの各々に対する読み出しおよび書き込みの動作ならびに、データに対して実行する必要があり得る他の任意の動作（例えば、データの標準化、データの正規化、データの強化など）を実行するように構成される。
【００７２】
互換性ルールデータベース３０８は、バージョニング管理のためのルール（すなわち、互換性ルール）を記憶するように構成される。言い換えれば、互換性ルールは、バージョン間の下位互換性を保証する。例えば、互換性ルールは、販売中のリソースのタイプに対して変更が実施されることを許容しないが、それは下位互換性が破壊されるからであり、しかしながら、互換性ルールは、そのタイプのリソースまたは販売されるさらなるタイプのリソースの構成の拡張を許容する。したがって、互換性ルールは、自動的アップグレードが実行されることを許容する能力を提供するが、これは提案されたアップグレードを、（例えば、コネクタビルダー３０４によって）互換性ルールに照らし合わせてテストすることができるからである。このようなルールが数セットあり得ることを理解すべきである。例えば、軽微なアップグレードが完全下位互換性を維持し得る一方で、大規模なアップグレードが制限された下位互換性しか維持し得ないことがある。
【００７３】
コネクタスケルトンデータベース３１０は、コネクタ開発のモデルおよび最良の慣行に従って作成されたコードを記憶するように構成される。したがって、記憶されたコードは、コネクタのバックエンドの開発のための開始フレームワークとして使用され得る。コードは、デベロッパによって定義されたモデルに依存してカスタマイズされ得ることを理解すべきである。
【００７４】
フロントエンドテンプレートデータベース３１２は、周知のシナリオ（例えば、新しい顧客／アカウントの作成、顧客のサブスクリプションの購入、サブスクリプションの無効化、サブスクリプションの終了など）のためのユーザインタフェースを記憶するように構成される。したがって、デベロッパが周知のシナリオを有効化するとき、そのシナリオに関連するＵＩコードを、フロントエンドテンプレートデータベース３１２からコネクタのＵＩ構成要素に追加することができる。
【００７５】
いくつかの実施形態においては、本明細書に記載するようなそれぞれのデータベースに記憶されたデータは、互いに対して排他的ではない場合があることを理解すべきである。言い換えれば、１つのデータベースに記憶されたと本明細書に記載されるあるデータは、追加的にまたは代替的に、本明細書に記載する別のデータベースにまたは別のデータベースに完全に記憶され得る。いくつかの実施形態においては、データは、単一のデータベース、分散したデータベースまたは代替のデータベース配列に記憶され得ることをさらに理解すべきである。
【００７６】
コネクタプレーヤー３１４は、コネクタのテストシナリオをテストシステム（例えば、テストシステム３１６）に照らし合わせて実行するように構成される。このようなシナリオは、コネクタを展開する、コネクタインスタンスを作成する、サービステンプレートおよびプランを構成する、サブスクリプション／ユーザ作成をテストする、カウンタリソースの使用を要求するなどを含み得る。したがって、テストシステム３１６は、コネクタの様々なシナリオをテストするために使用可能なリソースを提供するように構成される。リソースは、物理的リソースおよび／または仮想リソースであり得ることを理解すべきである。
【００７７】
エキスパートシステム３１８は、潜在的なペアリングサービスを分析して、１つ以上の識別されたサービスを、コネクタと関連付けられたサービスとペアリングされる候補として提案するように構成される。そうするために、エキスパートシステム３１８は、コネクタと関連付けられた情報（例えば、サービスタイプ、記述など）を識別して、識別された情報を、一般的にペアリングされる他のサービスの対応する情報と比較するように構成される。例示的な実施例においては、エキスパートシステム３１８は、電子メールサービスに対するコネクタに対して実行された分析の結果に基づいてアンチスパムサービスをペアリングするように提案し得る。任意の関係が、関連付けられたコネクタモデルを変更し得ることを理解すべきである。
【００７８】
すでに述べたように、デベロッパポータルコンピューティングデバイス１１６は、１つ以上のコンピューティングデバイス１３４からなり得る。したがって、デベロッパＵＩポータル１１８、モデルデータベース３０２、ライブラリマネージャ３０６、コネクタビルダー３０４、コネクタプレーヤー３１４、テストシステム３１６およびエキスパートシステム３１８は、単一のコンピューティングデバイス１３４（すなわち、デベロッパポータルコンピューティングデバイス１１６）上に常駐するものとして例示されているが、いくつかの実施形態においては、１つ以上の構成要素が、デベロッパポータルコンピューティングデバイス１１６を共に備えながらも異なるコンピューティングデバイス１３４上に位置付けられ得ることを理解すべきである。
【００７９】
ここで図４Ａ〜４Ｄを参照すると、デベロッパポータルコンピューティングデバイス１１６によって、またはより具体的にはデベロッパポータルコンピューティングデバイス１１６の構成要素（例えば、デベロッパＵＩポータル１１８、コネクタビルダー３０４など）の内の１つ以上によって実行され得るクラウドサービス仲介システム内で統合コネクタを作成して分配するための例示の方法４００が提供されている。方法４００はブロック４０２から始まり、デベロッパポータルコンピューティングデバイス１１６は、コネクタオブジェクトを作成するかを決定する。作成する場合、方法４００は、ブロック４０４に進み、デベロッパポータルコンピューティングデバイス１１６は、関連するコネクタスケルトンを（例えば、図３のコネクタスケルトンデータベース３１０から）選択する。すでに述べたように、コネクタスケルトンは、コネクタに対するバックエンドの開発のための開始フレームワークとして使用可能なコードという形態であり得る。
【００８０】
ブロック４０６において、デベロッパポータルコンピューティングデバイス１１６は、固有のコネクタモデル識別子を生成する。ブロック４０８において、デベロッパポータルコンピューティングデバイス１１６は、（例えば、ＵＩデベロッパポータル１１８を介して）コネクタデベロッパからのコネクタモデルのコネクタ記述情報を要求する。例示的な実施例においては、ブロック４１０において、デベロッパポータルコンピューティングデバイス１１６は、ＵＩ情報（例えば、サービスタイトル、サービスタイプ、アイコンなど）および１つ以上のプロバイダ命令を要求する。すでに述べたように、コネクタ記述情報は、リソースモデル情報（例えば、ディスクスペース、メールボックス、ドメインなどの提供されるサービス）、プロビジョニングチャネルを確立するためのクレデンシャル、サービスプラン情報（例えば、ブローカ／プロバイダに対する請求ルール）、リソース情報などのＡＰＩコネクタのインスタンスを実体化するために使用することができるＡＰＩコネクタに関連する任意の情報を含み得る。
【００８１】
ブロック４１２において、デベロッパポータルコンピューティングデバイス１１６は、要求された情報は（例えば、ＵＩデベロッパポータル１１８を介して）受信されたかを決定する。受信されていれば、方法４００はブロック４１４に進み、デベロッパポータルコンピューティングデバイス１１６は、受信した情報を（例えば、図３のモデルデータベース３０２に）記憶する。ブロック４１６において、デベロッパポータルコンピューティングデバイス１１６は、エキスパートシステム（例えば、図３のエキスパートシステム３１８）に、バージョン分析（例えば、図５の方法５００を参照）を実行するように通知する。言い換えれば、デベロッパポータルコンピューティングデバイス１１６は、エキスパートシステムに、コネクタオブジェクトの以前のバージョンのコネクタがあるか（例えば、図１のコネクタハブ１０６の利用可能サービスデータベース１１０中の）既存のコネクタを分析するように通知する。ブロック４１８において、デベロッパポータルコンピューティングデバイス１１６は、バージョン分析を実行するタスクを課せられたエキスパートシステムからの指示を受信したら決定され得るなどして、バージョン分析が完了したかを決定する。
【００８２】
デベロッパポータルコンピューティングデバイス１１６がバージョン分析は完了したと決定した場合、方法４００は図４Ｂに示すようにブロック４２０に進む。ブロック４２０において、デベロッパポータルコンピューティングデバイス１１６は、ブロック４０４においてコネクタデベロッパによって選択された関連付けられたコネクタスケルトンに基づいてコネクタデベロッパから（例えば、ＵＩデベロッパポータル１１８を介して）コネクタオブジェクトのリソースタイプを受信することを要求する。ブロック４２２において、デベロッパポータルコンピューティングデバイス１１６は、要求されたリソースタイプが受信されたかを決定する。受信されていれば、方法４００はブロック４２４に進み、デベロッパポータルコンピューティングデバイス１１６は、受信したリソースタイプをモデルデータベースに（例えば、図３のモデルデータベース３０２に）記憶する。
【００８３】
ブロック４２６において、デベロッパポータルコンピューティングデバイス１１６は、エキスパートシステム（例えば、エキスパートシステム３１８）に、関係分析（例えば、図６の方法６００を参照）を実行するように通知する。言い換えれば、デベロッパポータルコンピューティングデバイス１１６は、エキスパートシステムに、コネクタオブジェクトのサービスと関係させるサービスがあるか、作成中のコネクタオブジェクトを分析するように通知する。ブロック４２８において、デベロッパポータルコンピューティングデバイス１１６は、関係分析が完了したかを決定する。完了していれば、方法４００はブロック４３０に分岐し、デベロッパポータルコンピューティングデバイス１１６は、ブロック４１８におけるエキスパートシステム３１８からの受信した情報に基づいて、コネクタオブジェクトが、以前に公開されたコネクタオブジェクトの１つ以上の対応するバージョンを有するかを決定する。有するのであれば、方法４００は、図４Ｄに示し、以下に説明するブロック４５０に分岐し、有しなければ、方法４００は、図４Ｃに示すブロック４３２に分岐する。
【００８４】
ブロック４３２において、デベロッパポータルコンピューティングデバイス１１６は、サービスモデルの関数としてコネクタを構築する。そうするために、ブロック４３４において、デベロッパポータルコンピューティングデバイス１１６は、ブロック４０６において生成された関連付けられたコネクタモデル識別子を回収する。くわえて、ブロック４３６において、デベロッパポータルコンピューティングデバイス１１６は、関連付けられたモデルリソースを回収する。さらに、ブロック４３８において、デベロッパポータルコンピューティングデバイス１１６は、フロントエンドテンプレート（例えば、周知のシナリオに対するユーザインタフェース）を回収する。さらにまた、ブロック４４０において、デベロッパポータルコンピューティングデバイス１１６は、回収された関連付けられたモデルリソースおよびフロントエンドテンプレートに基づいてマニフェストを設計する。
【００８５】
ブロック４４２において、デベロッパポータルコンピューティングデバイス１１６は、コネクタが成功裏に構築されたかを決定する。成功裏に構築されていなければ、方法４００はブロック４０８に戻って、さらなるおよび／または代替のコネクタ記述情報を要求し、成功裏に構築されていれば、方法４００はブロック４４４に進む。ブロック４４４において、デベロッパポータルコンピューティングデバイス１１６は、モデルに基づいてコネクタパッケージを生成する。ブロック４４６において、デベロッパポータルコンピューティングデバイス１１６は、コネクタパッケージを（例えば、図１のコネクタハブ１０６の利用可能サービスデータベース１１０に）記憶する。ブロック４４８において、デベロッパポータルコンピューティングデバイス１１６は、コネクタパッケージが記憶されたことを示す指示をコネクタデベロッパに送信する。
【００８６】
すでに述べたように、ブロック４３０（図４Ｂに示す）において、デベロッパポータルコンピューティングデバイス１１６は、コネクタオブジェクトは何らかの以前に公開されたバージョンを有すると決定する場合、方法４００は図４Ｄに示すブロック４５０に分岐する。ブロック４５０において、デベロッパポータルコンピューティングデバイス１１６は、サービスモデルの関数としてコネクタを構築する。そうするために、ブロック４５２において、デベロッパポータルコンピューティングデバイス１１６は、ブロック４０６において生成された関連付けられたコネクタモデル識別子を回収する。くわえて、ブロック４５４において、デベロッパポータルコンピューティングデバイス１１６は、関連付けられたモデルリソースを回収する。さらに、ブロック４５６において、デベロッパポータルコンピューティングデバイス１１６は、任意の適用可能な互換性ルールに照らし合わせてリソースをチェックして、コネクタに対して実施されたアップグレード／変更の下位互換性を保証する。すでに述べたように、互換性ルールは、自動的アップグレードを実行することを可能とする機能を提供するが、これは、提案されたアップグレードを互換性ルール（例えば、互換性ルールデータベース３０８に記憶され得るようなもの）に照らし合わせてテストすることができるからである。さらにまた、ブロック４５８において、デベロッパポータルコンピューティングデバイス１１６は、フロントエンドテンプレート（例えば、周知のシナリオに対するユーザインタフェース）を回収する。さらにまた、ブロック４６０において、デベロッパポータルコンピューティングデバイス１１６は、回収された関連付けられたモデルリソースおよびフロントエンドテンプレートに基づいてマニフェストを設計する。
【００８７】
ブロック４６２において、デベロッパポータルコンピューティングデバイス１１６は、コネクタが成功裏に構築されたか（例えば、リソースが何らかの互換性ルールに違反しているか）を決定する。成功裏に構築されていなければ、方法４００はブロック４０８に戻って、さらなるおよび／または代替のコネクタ記述情報を要求し、成功裏に構築されていれば、方法４００はブロック４６４に進む。ブロック４６４において、デベロッパポータルコンピューティングデバイス１１６は、以前のコネクタバージョンのモデルと現在のコネクタバージョンのモデルとの間に何らかの相違があるか決定する。ブロック４６６において、デベロッパポータルコンピューティングデバイス１１６は、ブロック４６４において決定された相違に基づいて１つ以上のアップグレード命令を生成する。すでに述べたように、アップグレード命令は、追跡してコネクタのアップグレードされたバージョンに適用することができる何らかのモデル変更を含み得る。
【００８８】
ブロック４６８において、デベロッパポータルコンピューティングデバイス１１６は、モデルおよびアップグレード命令に基づいてコネクタパッケージを生成する。ブロック４７０において、デベロッパポータルコンピューティングデバイス１１６は、コネクタパッケージを（例えば、図１のコネクタハブ１０６の利用可能サービスデータベース１１０に）記憶する。ブロック４７２において、デベロッパポータルコンピューティングデバイス１１６は、コネクタパッケージが記憶されたことを示す指示をコネクタデベロッパに送信する。
【００８９】
ここで図５を参照すると、デベロッパポータルコンピューティングデバイス１１６によって、またはより具体的にはデベロッパポータルコンピューティングデバイス１１６のエキスパートシステム３１８によって実行され得るバージョン分析をコネクタオブジェクトに対して実行するための例示の方法５００が提供されている。方法５００はブロック５０２から始まり、エキスパートシステム３１８は、バージョン分析通知が（例えば、図１および３のデベロッパＵＩポータル１１８を介してデベロッパから）受信されたかを決定する。
【００９０】
ブロック５０４において、エキスパートシステム３１８は、例えば関連付けられたモデル（例えば、図３のモデルデータベース３０２に記憶されたリソースモデル情報）から決定され得るように、作成中の現在のコネクタオブジェクトのコネクタ記述情報を図１のコネクタハブ１０６の利用可能サービスデータベース１１０に現在記憶されているコネクタパッケージの対応する情報と比較する。すでに述べたように、コネクタ記述情報は、ＡＰＩコネクタのインスタンスを実体化するために使用することができるＡＰＩコネクタに関連する何らかの情報を含み得る。例示的な実施例においては、ブロック５０６において、エキスパートシステム３１８は、各々のコネクタオブジェクトのサービスタイプ、サービス名称およびサービスアイコンを比較する。
【００９１】
ブロック５０８においては、エキスパートシステム３１８は、コネクタオブジェクト間の一致のレベルをブロック５０４において実行された比較の結果の関数として決定する。ブロック５１０においては、エキスパートシステム３１８は、ブロック５０８において決定された一致レベルが一致レベル閾値以上であるかを決定する。一致レベルは、各々のコネクタオブジェクトの情報（例えば、サービスタイプ、サービス名称、サービスアイコンなど）間の一致のレベルを伝達するために使用可能な何らかの数値（例えば、量、数量、カウンタ値、パーセンテージなど）であり得る。したがって、一致レベル閾値は、一致レベルが、コネクタオブジェクトが関連付けられている（すなわち、一方が他方の以前のバージョンである）と当然決定することができるほどに十分高いかを決定する目的で一致レベルと比較するために使用可能な何らかの対応する量として定義され得る。
【００９２】
エキスパートシステム３１８が、一致レベルが一致レベル閾値以上であると決定する場合、方法５００はブロック５１４に進む前にブロック５１２に分岐する。ブロック５１２においては、エキスパートシステム３１８は、現在のコネクタオブジェクトを、このコネクタオブジェクトの新しいバージョンとして、以前に公開されたコネクタと関係させる。エキスパートシステム３１８が、一致レベルが一致レベル閾値未満であると決定する場合、方法５００はブロック５１４に分岐し、エキスパートシステム３１８は、エキスパートシステムがバージョン分析を完了したことを示す指示をコネクタビルダー（例えば、図３のコネクタビルダー３０４）に送信する。ブロック５１６において、エキスパートシステム３１８は、該当する場合は（すなわち、関係がブロック５１２で発生した場合は）、コネクタオブジェクトの以前のバージョンの識別子を送信する。
【００９３】
ここで図６を参照すると、デベロッパポータルコンピューティングデバイス１１６によって、またはより具体的にはデベロッパポータルコンピューティングデバイス１１６のエキスパートシステム３１８によって実行され得るペアリング分析をコネクタオブジェクトに対して実行するための例示の方法６００が提供されている。方法６００はブロック６０２から始まり、エキスパートシステム３１８は、関係分析通知が（例えば、図１および３のデベロッパＵＩポータル１１８を介してデベロッパから）受信されたかを決定する。ブロック６０４において、エキスパートシステム３１８は、現行のコネクタオブジェクトに関係させることができる他の何らかのサービスを識別する。そうするために、ブロック６０６において、エキスパートシステム３１８は、他のサービスを、それらのそれぞれのコネクタリソースタイプなどのコネクタハブ１０６の利用可能サービスデータベース１１０に記憶されたそれらのコネクタパッケージの情報に基づいて識別し得る。
【００９４】
ブロック６０８において、エキスパートシステム３１８は、コネクタデベロッパに、コネクタにリンクされる何らかの既存のおよび／または識別されたサービスに対する識別された関係を受け入れるように促す。ブロック６１０において、エキスパートシステム３１８は、関係が受け入れられたかを決定する。いくつかの実施形態においては、識別された関係のうちのいくつかまたはすべてが受け入れられ得るまたはなにも受け入れられ得ないことを理解すべきである。いくつかの実施形態においては、デベロッパは、関係を受け入れるように促されない場合があることをさらに理解すべきである。言い換えれば、このような実施形態においては、関係は自動的に識別されて関連付けられるため、方法６００はブロック６０４からブロック６１２に直接に進む。識別された関係のいずれかがブロック６１０において受け入れられた場合、方法６００はブロック６１４に進行する前にブロック６１２に進む。ブロック６１２においては、エキスパートシステム３１８は、受け入れられたサービスと関連付けられたコネクタオーナーの各々に、関係を確認するように指示を送信する。そうでない場合、識別された関係のいずれかがブロック６１０において受け入れられなかった場合、方法６００はブロック６１４に進み、エキスパートシステム３１８は、エキスパートシステムが関係分析を完了したことを示す指示を、コネクタビルダー（例えば、図３のコネクタビルダー３０４）に送信する。
【００９５】
本開示の少なくとも１つの実施形態においては、自動ユニバーサルコネクタを使用してクラウドアプリケーションをクラウドサービスブローカプラットフォームに統合するための方法７００の例示の実施形態のフロー図を図７に示す。ブロック７０２において、マーケットプレイスコンピューティングデバイス１０２は、サブスクリプション作成要求をユニバーサルコネクタ１３６に送信し、ユニバーサルコネクタ１３６は、サブスクリプション要求が受信されたと応答する。サブスクリプション要求が受信された場合、方法７００はブロック７０４に進み、受信されなければ、それはブロック７０２にループバックする。
【００９６】
本開示の少なくとも１つの実施形態においては、ユニバーサルコネクタ１３６は、サブスクリプションが作成中（または要求に依存して処理中）であると応答して、ブロック７０８に進み、それは、受信したリソースモデルを処理する。本開示の少なくとも１つの実施形態においては、ユニバーサルコントローラ１７０が、ブロック７１０において、リソースモデルインタープリタ１７４によってカウンタおよび制限を解析する。方法７００はブロック７１２に進み、コネクタアプリケーションコントローラ１７２がカウンタおよび制限を受信する。方法７００はブロック７１４に進み、ＡＰＩ変換エンジン１７８がカウンタおよび制限を処理する。
【００９７】
本開示の少なくとも１つの実施形態においては、方法７００はブロック７１６に進み、ユニバーサルコントローラ１７０は、新しい注文が定義されたとＣＲＭデータベース１６６に通知する。本開示の少なくとも１つの実施形態においては、オペレータが、ブロック７１８において注文を見直し、オプションとしては無効であり得るデータを変更し、注文を承認または拒絶し得る。承認されたら、方法７００はブロック７２２に進み、承認されたデータが処理される。
【００９８】
本開示の少なくとも１つの実施形態においては、ブロック７１８からの承認は処理を必要とする。例として、オペレータは、図１Ａに示すように、インストレーション命令を、ＣＲＭ  ＡＰＩサーバ１３８およびユニバーサルコネクタデバイス１３６を通じて送信し得る。これはサブスクリプションの起動のための命令であることが理解されるであろう。この例を続けると、任意のアカウント修正が、ＣＲＭ  ＡＰＩサーバ１３８で連結されてデータベース１６６内に維持され（図１Ｂに示すように）、次いでユニバーサルコネクタ１３６を通じてクラウドブローカコンピューティングデバイス１３０に送信される。
【００９９】
本開示の少なくとも１つの実施形態においては、方法７００はブロック７３０に進み、ここで承認データはサブスクリプションデータベース１６０に記憶される。方法７００はブロック７３０に進み、ここでＡＰＩ変換エンジン１７８は、ＣＲＭ  ＡＰＩサーバ１３８からのコールをユニバーサルコネクタ１３６によって動作可能である形式に変換する。コネクタアプリケーションコントローラ１７２は承認データを処理して、これをサブスクリプションデータベース１６０に記憶することが理解されるであろう。本開示の少なくとも１つの実施形態においては、コネクタアプリケーションコントローラ１７２はさらに、ポーリングおよび通知エンジン１７６に送信する応答を定式化して、最終的にはクラウドサーバブローカコンピューティングデバイス１３０に送信する。
【０１００】
本開示の少なくとも１つの実施形態においては、自動ユニバーサルコネクタパッケージを使用してクラウドアプリケーションをクラウドサービスブローカプラットフォームに統合するための方法８００の例示の実施形態のフロー図が図８に示されている。ブロック８０２において、ＣＲＭ  ＡＰＩサーバ１３８によってチェックを実行して、新しい注文が受信されたかを検証する。新しい注文が受信された場合、方法８００はブロック８０４に進み、オペレータは、注文が受信されたことを通知される。オペレータはブラウザ１６４の動作によって通知され得ることが理解されるであろう。
【０１０１】
方法８００はブロック８１０に進む。ブロック８１０において、アカウント、サブスクリプションデータおよびパラメータが処理される。例として、アカウントが存在しなければ、アカウントが作成され、サブスクリプションが存在しなければ、サブスクリプションが作成される。このようなアカウントまたはサブスクリプションの作成に伴うデータが、データベース１６６に記憶される。ユニバーサルコネクタ１３６はこのすべてのデータを（例えば、ネットワーク１２８を介して）データベース１６６に送信することが理解されるであろう。方法８００はステップ８１２に進み、フィルタリングされた注文はフロントエンド（例えば、ブラウザ１６４）に送信される。
【０１０２】
ブロック８１４において、方法８００は注文データが変更されたかどうかをチェックする。データが変更された場合、方法８００はブロック８１６に進み、注文データは監査モジュール１５６内に記憶される。方法８００はブロック８１８に進む。代替例においては、ブロック８１４でチェックされたままのデータに変更がない場合、方法８００はまたブロック８１８に進む。ブロック８１８において、注文の承認が受信されたかどうかについてチェックが実行される。オペレータの承認が受信された場合、方法はブロック８２０に進み、受信されなければ、それはブロック８２４に進む。
【０１０３】
方法８００はブロック８２２に進み、オペレータはサブスクリプションが作成されたことを通知される。
【０１０４】
本開示は、図面および上記の説明において例示され詳述されたが、それは、特性においても、例示的であり、限定的でないとみなされるべきである。特定の実施形態のみが示されて説明されたものであり、本開示の精神の範囲に入るすべての変更と修飾が保護されることが望ましいことが理解される。
【図１】
2021503118.tif 000003
【図１Ａ】
2021503118.tif 000004
【図１Ｂ】
2021503118.tif 000005
【図２】
2021503118.tif 000006
【図３】
2021503118.tif 000007
【図４Ａ】
2021503118.tif 000008
【図４Ｂ】
2021503118.tif 000009
【図４Ｃ】
2021503118.tif 000010
【図４Ｄ】
2021503118.tif 000011
【図５】
2021503118.tif 000012
【図６】
2021503118.tif 000013
【図７】
2021503118.tif 000014
【図８】
2021503118.tif 000015
【国際調査報告】
2021503118.tif 000016