(57)【要約】      （修正有）【課題】高レベルのプログラミング技量およびカスタマイズなしでクラウド・サービスへのアクセスを提供する。【解決手段】統合クラウド環境（ICE）クラウド・サービスの第一の集合を使って、スマート統合（SI）クラウド・サービスと称されるクラウド・サービスの第二の集合に、エンドユーザー装置上でアクセスする。ICEクラウド・サービスは、エンドユーザー装置を介してSIクラウド・サービスにアクセスするためのユーザーフレンドリーなユーザー・インターフェースを提供し、SIクラウド・サービスのアプリケーション・プログラム・インターフェース（API）を実装し、SIクラウド・サービスによって生成された結果も管理する。ICEクラウド・サービスは、サードパーティー・サービスにアクセスするために必要とされるユーザー情報、認可クレデンシャルおよびトークンをも管理する。【選択図】図１Ａ
2019185755.tif 000002
【特許請求の範囲】
【請求項１】
エンドユーザー装置からコンピュータ・ネットワークを通じてクラウド・サービスにアクセスすることにおける改善を提供する装置であって、当該装置は：
一つまたは複数のプロセッサと、
当該装置で実行されるウェブ・アプリケーションとを有しており、前記ウェブ・アプリケーションは：
一つまたは複数のコンピュータ・ネットワークを介してエンドユーザー装置から、前記ウェブ・アプリケーションにアクセスする要求を受信する段階と、
一つまたは複数のコンピュータ・ネットワークを通じてエンドユーザー装置から、前記ウェブ・アプリケーションにアクセスする要求を受信することに応答して、一つまたは複数のウェブ・ページを、前記一つまたは複数のコンピュータ・ネットワークを介して前記エンドユーザー装置に提供する段階であって、前記ウェブ・ページは、前記エンドユーザー装置によって処理されたときに、前記エンドユーザー装置のユーザーが、前記エンドユーザー装置および前記ウェブ・アプリケーションの両方にとって外部であるクラウド・サービスにおいて、前記エンドユーザー装置によって生成されたデータを処理するための複数の設定を指定できるようにするユーザー・インターフェースを提供するものである、段階と、
前記エンドユーザー装置のユーザーによって指定された前記複数の設定を使って、前記クラウド・サービスにおいて、前記エンドユーザー装置によって生成された前記データを処理する要求を、前記一つまたは複数のコンピュータ・ネットワークを介して前記エンドユーザー装置から受信する段階と、
前記エンドユーザー装置のユーザーによって指定された前記複数の設定を使って、前記クラウド・サービスにおいて、前記エンドユーザー装置によって生成された前記データを処理する要求を、前記一つまたは複数のコンピュータ・ネットワークを介して前記エンドユーザー装置から受信することに応答して、前記エンドユーザー装置のユーザーによって指定された前記複数の設定を使って前記データを処理する要求を生成し、前記一つまたは複数のコンピュータ・ネットワークを介して、それぞれ一つまたは複数の機能を実装する二つ以上のクラウド・コンポーネントを使って前記クラウド・サービスを実装するクラウド・アプリケーションに送信する段階とを実行するよう構成されており、
前記ユーザーによって指定された前記複数の設定を使って前記データを処理する前記要求は、前記クラウド・アプリケーションによってサポートされており、前記エンドユーザー装置によってはサポートされていないアプリケーション・プログラム・インターフェースに準拠する、
装置。
【請求項２】
前記クラウド・サービスが、前記二つ以上のクラウド・コンポーネントによって実装される前記機能を少なくとも含む作業フローを実装する、請求項１記載の装置。
【請求項３】
前記二つ以上のクラウド・コンポーネントがそれぞれ、前記クラウド・アプリケーションによってサポートされているが、前記ウェブ・アプリケーションによってはサポートされていないアプリケーション・プログラム・インターフェースを実装する、請求項２記載の装置。
【請求項４】
前記ウェブ・アプリケーションがさらに：
前記エンドユーザー装置によって処理されたときに、前記エンドユーザー装置のユーザーが、前記クラウド・サービスによって実装される作業フローを生成し、複数の利用可能なクラウド・コンポーネントから前記二つ以上のクラウド・コンポーネントを、前記クラウド・サービスによって実装される前記作業フローに含まれるよう選択することができるようにする第二のユーザー・インターフェースを提供する一つまたは複数のウェブ・ページを生成し、前記一つまたは複数のコンピュータ・ネットワークを通じて前記エンドユーザー装置に提供する段階を実行するよう構成されている、
請求項１記載の装置。
【請求項５】
前記クラウド・アプリケーションが、前記ユーザーによって指定された前記複数の設定を使ってデータを処理する前記要求を処理することに応答して結果を生成し、前記結果を処理のためにサードパーティー・サービスに提供する、請求項１記載の装置。
【請求項６】
前記クラウド・アプリケーションが前記結果を処理のためにサードパーティー・サービスに提供することが、前記クラウド・アプリケーションが前記サードパーティー・サービスに、前記要求をした前記エンドユーザー装置の前記ユーザーおよび前記サードパーティー・サービスの両方に固有のトークンを提供することを含む、請求項５記載の装置。
【請求項７】
前記エンドユーザー装置のユーザーによって指定された前記複数の設定を使って、前記クラウド・サービスにおいて、前記エンドユーザー装置によって生成された前記データを処理する前記要求は、前記ウェブ・アプリケーションに関して前記エンドユーザー装置の前記ユーザーを一意的に識別する第一のユーザー識別データを含み、
前記クラウド・アプリケーションに送信される前記要求は、前記第一のユーザー識別データを含み、
前記クラウド・アプリケーションは、前記ウェブ・アプリケーションのためのユーザー識別データと前記クラウド・アプリケーションのためのユーザー識別データとの間の対応を指定するマッピング・データを使って、前記第一のユーザー識別データに対応し、前記クラウド・アプリケーションに関して前記エンドユーザー装置の前記ユーザーを一意的に識別する第二のユーザー識別データを決定し、
前記クラウド・アプリケーションは、前記第二のユーザー識別データを使って前記トークンを識別する、
請求項６記載の装置。
【請求項８】
前記ウェブ・アプリケーションがさらに：
ユーザーが前記第一のクラウド環境における新規ユーザーを生成できるようにするユーザー・プロビジョニング・ユーザー・インターフェースを提供し、
前記新規ユーザーの生成に応答して、前記第二のクラウド環境のアプリケーション・プログラム・インターフェースに準拠し、かつ、前記第一のクラウド環境における前記新規ユーザーに対応する前記第二のクラウド環境における新規ユーザーの生成を要求する一つまたは複数のメッセージを生成して、前記第二のクラウド環境に送信するよう構成されている、
請求項１記載の装置。
【請求項９】
前記ウェブ・アプリケーションがさらに：前記第一のクラウド環境および前記第二のクラウド環境の両方における前記新規ユーザーの生成に応答して、前記第一のクラウド環境における前記新規ユーザーと前記第二のクラウド環境における前記新規ユーザーとの間の対応を指定するデータを生成して、マッピング・データに格納するよう構成されている、請求項８記載の装置。
【請求項１０】
エンドユーザー装置からコンピュータ・ネットワークを通じてクラウド・サービスにアクセスすることにおける改善を提供する一つまたは複数の非一時的なコンピュータ可読媒体であって、当該一つまたは複数の非一時的なコンピュータ可読媒体は命令を記憶しており、前記命令は一つまたは複数のプロセッサによって実行されたときに、装置上で実行されるウェブ・アプリケーションに：
一つまたは複数のコンピュータ・ネットワークを介してエンドユーザー装置から、前記ウェブ・アプリケーションにアクセスする要求を受信する段階と、
一つまたは複数のコンピュータ・ネットワークを通じてエンドユーザー装置から、前記ウェブ・アプリケーションにアクセスする要求を受信することに応答して、一つまたは複数のウェブ・ページを、前記一つまたは複数のコンピュータ・ネットワークを介して前記エンドユーザー装置に提供する段階であって、前記ウェブ・ページは、前記エンドユーザー装置によって処理されたときに、前記エンドユーザー装置のユーザーが、前記エンドユーザー装置および前記ウェブ・アプリケーションの両方にとって外部であるクラウド・サービスにおいて、前記エンドユーザー装置によって生成されたデータを処理するための複数の設定を指定できるようにするユーザー・インターフェースを提供するものである、段階と、
前記エンドユーザー装置のユーザーによって指定された前記複数の設定を使って、前記クラウド・サービスにおいて、前記エンドユーザー装置によって生成された前記データを処理する要求を、前記一つまたは複数のコンピュータ・ネットワークを介して前記エンドユーザー装置から受信する段階と、
前記エンドユーザー装置のユーザーによって指定された前記複数の設定を使って、前記クラウド・サービスにおいて、前記エンドユーザー装置によって生成された前記データを処理する要求を、前記一つまたは複数のコンピュータ・ネットワークを介して前記エンドユーザー装置から受信することに応答して、前記エンドユーザー装置のユーザーによって指定された前記複数の設定を使って前記データを処理する要求を生成し、前記一つまたは複数のコンピュータ・ネットワークを介して、それぞれ一つまたは複数の機能を実装する二つ以上のクラウド・コンポーネントを使って前記クラウド・サービスを実装するクラウド・アプリケーションに送信する段階とを実行させるものであり、
前記ユーザーによって指定された前記複数の設定を使って前記データを処理する前記要求は、前記クラウド・アプリケーションによってサポートされており、前記エンドユーザー装置によってはサポートされていないアプリケーション・プログラム・インターフェースに準拠する、
一つまたは複数の非一時的なコンピュータ可読媒体。
【請求項１１】
前記クラウド・サービスが、前記二つ以上のクラウド・コンポーネントによって実装される前記機能を少なくとも含む作業フローを実装する、請求項１０記載の一つまたは複数の非一時的なコンピュータ可読媒体。
【請求項１２】
前記二つ以上のクラウド・コンポーネントがそれぞれ、前記クラウド・アプリケーションによってサポートされているが、前記ウェブ・アプリケーションによってはサポートされていないアプリケーション・プログラム・インターフェースを実装する、請求項１１記載の一つまたは複数の非一時的なコンピュータ可読媒体。
【請求項１３】
追加的命令をさらに記憶している請求項１０記載の一つまたは複数の非一時的なコンピュータ可読媒体であって、前記追加的命令は、前記一つまたは複数のプロセッサによって実行されたときに、前記ウェブ・アプリケーションに：
前記エンドユーザー装置によって処理されたときに、前記エンドユーザー装置のユーザーが、前記クラウド・サービスによって実装される作業フローを生成し、複数の利用可能なクラウド・コンポーネントから前記二つ以上のクラウド・コンポーネントを、前記クラウド・サービスによって実装される前記作業フローに含まれるよう選択することができるようにする第二のユーザー・インターフェースを提供する一つまたは複数のウェブ・ページを生成し、前記一つまたは複数のコンピュータ・ネットワークを通じて前記エンドユーザー装置に提供する段階を実行させるものである、
一つまたは複数の非一時的なコンピュータ可読媒体。
【請求項１４】
前記クラウド・アプリケーションが、前記ユーザーによって指定された前記複数の設定を使ってデータを処理する前記要求を処理することに応答して結果を生成し、前記結果を処理のためにサードパーティー・サービスに提供する、請求項１０記載の一つまたは複数の非一時的なコンピュータ可読媒体。
【請求項１５】
前記クラウド・アプリケーションが前記結果を処理のためにサードパーティー・サービスに提供することが、前記クラウド・アプリケーションが前記サードパーティー・サービスに、前記要求をした前記エンドユーザー装置の前記ユーザーおよび前記サードパーティー・サービスの両方に固有のトークンを提供することを含む、請求項１４記載の一つまたは複数の非一時的なコンピュータ可読媒体。
【請求項１６】
前記エンドユーザー装置のユーザーによって指定された前記複数の設定を使って、前記クラウド・サービスにおいて、前記エンドユーザー装置によって生成された前記データを処理する前記要求は、前記ウェブ・アプリケーションに関して前記エンドユーザー装置の前記ユーザーを一意的に識別する第一のユーザー識別データを含み、
前記クラウド・アプリケーションに送信される前記要求は、前記第一のユーザー識別データを含み、
前記クラウド・アプリケーションは、前記ウェブ・アプリケーションのためのユーザー識別データと前記クラウド・アプリケーションのためのユーザー識別データとの間の対応を指定するマッピング・データを使って、前記第一のユーザー識別データに対応し、前記クラウド・アプリケーションに関して前記エンドユーザー装置の前記ユーザーを一意的に識別する第二のユーザー識別データを決定し、
前記クラウド・アプリケーションは、前記第二のユーザー識別データを使って前記トークンを識別する、
請求項１５記載の一つまたは複数の非一時的なコンピュータ可読媒体。
【請求項１７】
追加的命令をさらに記憶している請求項１０記載の一つまたは複数の非一時的なコンピュータ可読媒体であって、前記追加的命令は、前記一つまたは複数のプロセッサによって実行されたときに、前記ウェブ・アプリケーションに：
ユーザーが前記第一のクラウド環境における新規ユーザーを生成できるようにするユーザー・プロビジョニング・ユーザー・インターフェースを提供する段階と、
前記新規ユーザーの生成に応答して、前記第二のクラウド環境のアプリケーション・プログラム・インターフェースに準拠し、かつ、前記第一のクラウド環境における前記新規ユーザーに対応する前記第二のクラウド環境における新規ユーザーの生成を要求する一つまたは複数のメッセージを生成して、前記第二のクラウド環境に送信する段階とを実行させるものである、
一つまたは複数の非一時的なコンピュータ可読媒体。
【請求項１８】
追加的命令をさらに記憶している請求項１７記載の一つまたは複数の非一時的なコンピュータ可読媒体であって、前記追加的命令は、前記一つまたは複数のプロセッサによって実行されたときに、前記ウェブ・アプリケーションに：
前記第一のクラウド環境および前記第二のクラウド環境の両方における前記新規ユーザーの生成に応答して、前記第一のクラウド環境における前記新規ユーザーと前記第二のクラウド環境における前記新規ユーザーとの間の対応を指定するデータを生成して、マッピング・データに格納することを実行させるものである、
一つまたは複数の非一時的なコンピュータ可読媒体。
【請求項１９】
コンピュータ実装される方法であって、装置上で実行されるウェブ・アプリケーションが：
一つまたは複数のコンピュータ・ネットワークを介してエンドユーザー装置から、前記ウェブ・アプリケーションにアクセスする要求を受信する段階と、
一つまたは複数のコンピュータ・ネットワークを通じてエンドユーザー装置から、前記ウェブ・アプリケーションにアクセスする要求を受信することに応答して、一つまたは複数のウェブ・ページを、前記一つまたは複数のコンピュータ・ネットワークを介して前記エンドユーザー装置に提供する段階であって、前記ウェブ・ページは、前記エンドユーザー装置によって処理されたときに、前記エンドユーザー装置のユーザーが、前記エンドユーザー装置および前記ウェブ・アプリケーションの両方にとって外部であるクラウド・サービスにおいて、前記エンドユーザー装置によって生成されたデータを処理するための複数の設定を指定できるようにするユーザー・インターフェースを提供するものである、段階と、
前記エンドユーザー装置のユーザーによって指定された前記複数の設定を使って、前記クラウド・サービスにおいて、前記エンドユーザー装置によって生成された前記データを処理する要求を、前記一つまたは複数のコンピュータ・ネットワークを介して前記エンドユーザー装置から受信する段階と、
前記エンドユーザー装置のユーザーによって指定された前記複数の設定を使って、前記クラウド・サービスにおいて、前記エンドユーザー装置によって生成された前記データを処理する要求を、前記一つまたは複数のコンピュータ・ネットワークを介して前記エンドユーザー装置から受信することに応答して、前記エンドユーザー装置のユーザーによって指定された前記複数の設定を使って前記データを処理する要求を生成し、前記一つまたは複数のコンピュータ・ネットワークを介して、それぞれ一つまたは複数の機能を実装する二つ以上のクラウド・コンポーネントを使って前記クラウド・サービスを実装するクラウド・アプリケーションに送信する段階とを実行することを含み、
前記ユーザーによって指定された前記複数の設定を使って前記データを処理する前記要求は、前記クラウド・アプリケーションによってサポートされており、前記エンドユーザー装置によってはサポートされていないアプリケーション・プログラム・インターフェースに準拠する、
コンピュータ実装される方法。
【請求項２０】
前記クラウド・サービスが、前記二つ以上のクラウド・コンポーネントによって実装される前記機能を少なくとも含む作業フローを実装する、請求項１９記載のコンピュータ実装される方法。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願への相互参照
本願は、2018年3月30日に出願された「サードパーティー・サービスのローカル管理を使ったエンドユーザー装置でのクラウド・サービスへのアクセス提供手法」と題する米国特許出願第15/942,415号（代理人整理番号49986-0926）、2018年3月30日に出願された「サードパーティー・サービスのローカル管理およびコンフリクト検査を使ったエンドユーザー装置でのクラウド・サービスへのアクセス提供手法」と題する米国特許出願第15/942,416号（代理人整理番号49986-0927）および2018年3月30日に出願された「直接リンク統合を使ったエンドユーザー装置でのクラウド・サービスへのアクセス提供手法」と題する米国特許出願第15/942,417号（代理人整理番号49986-0932）に関係している。これらの出願の全内容は、参照によって、あらゆる目的について、あたかも完全に本願に記載されているかのうように組み込まれる。
【０００２】
分野
実施形態は概括的には電子文書の処理に関する。提案される技術群単位：2625；提案される分類：358。
【背景技術】
【０００３】
本節に記載される手法は追求されたかもしれないが、必ずしも以前に着想されたまたは追求されたとは限らない手法である。よって、特に断わりのない限り、本節に記載される手法は、本願の請求項に対する従来技術ではないことがあり、本節に含めることによって従来技術であると自認されるものではない。
【０００４】
ネットワーク・サービス、特にインターネット・ベースのサービスの継続的な成長は、増え続ける量の機能へのアクセスを提供する。特にクラウド・サービスは新たな領域に成長し続けている。クラウド・サービスに関する問題の一つは、いくつかの理由により複合機（MFP:  multi-function  peripheral）のようなある種の型のエンドユーザー装置と一緒に使うのが難しいことがあるということである。第一に、エンドユーザー装置が必要なコンピューティング機能をもつとすると、いくつかのクラウド・サービスは、エンドユーザー装置に実装するためには高いレベルのプログラミング技量およびカスタマイズを要求するインターフェースをもつ。さらに、複数のクラウド・サービスを使う作業フローの実装は、各サービスが異なる設定要件をもち、あるクラウド・サービスの結果が記憶され、再フォーマットされ、別のクラウド・サービスに提供されなければならないので、一層高いレベルの技量および知識を必要とする。さらに、いくつかのクラウド・サービスは、ユーザー認可データのようなある種のデータがクライアント側で、たとえばMFPにおいて維持されることを要求するが、これは実際的ではなく、状況によっては不可能である。
【発明の概要】
【課題を解決するための手段】
【０００５】
装置が、エンドユーザー装置からコンピュータ・ネットワークを通じてクラウド・サービスにアクセスすることにおける改善を提供する。本装置は、一つまたは複数のプロセッサと、本装置で実行されるウェブ・アプリケーションとを有する。ウェブ・アプリケーションは、一つまたは複数のコンピュータ・ネットワークを介してエンドユーザー装置から、ウェブ・アプリケーションにアクセスする要求を受信するよう構成される。一つまたは複数のコンピュータ・ネットワークを通じてエンドユーザー装置から、ウェブ・アプリケーションにアクセスする要求を受信することに応答して、ウェブ・アプリケーションは、一つまたは複数のウェブ・ページを生成して、前記一つまたは複数のコンピュータ・ネットワークを介してエンドユーザー装置に提供する。該ウェブ・ページは、エンドユーザー装置によって処理されたときに、エンドユーザー装置のユーザーが、エンドユーザー装置およびウェブ・アプリケーション両方にとって外部であるクラウド・サービスにおいてエンドユーザー装置によって生成されたデータを処理するための複数の設定を指定できるようにするユーザー・インターフェースを提供する。エンドユーザー装置のユーザーによって指定された前記複数の設定を使ってクラウド・サービスにおいてエンドユーザー装置によって生成されたデータを処理する要求が、前記一つまたは複数のコンピュータ・ネットワークを介してエンドユーザー装置から受信される。応答して、エンドユーザー装置のユーザーによって指定された前記複数の設定を使って前記データを処理する要求が生成され、前記一つまたは複数のコンピュータ・ネットワークを介して、それぞれ一つまたは複数の機能を実装する二つ以上のクラウド・コンポーネントを使って前記クラウド・サービスを実装するクラウド・アプリケーションに送信される。前記ユーザーによって指定された前記複数の設定を使って前記データを処理する要求は、クラウド・アプリケーションによってサポートされており、エンドユーザー装置によってはサポートされていないアプリケーション・プログラム・インターフェースに準拠する。
【０００６】
装置が、エンドユーザー装置からコンピュータ・ネットワークを通じてクラウド・サービスにアクセスすることにおける改善を提供する。本装置は、一つまたは複数のプロセッサと、本装置で実行されるウェブ・アプリケーションとを有する。ウェブ・アプリケーションは、特定の作業フローを実装しており、一つまたは複数のコンピュータ・ネットワークを介してエンドユーザー装置から、ウェブ・アプリケーションにアクセスする要求を受信するよう構成される。一つまたは複数のコンピュータ・ネットワークを通じてエンドユーザー装置から、ウェブ・アプリケーションにアクセスする要求を受信することに応答して、ウェブ・アプリケーションは、一つまたは複数のウェブ・ページを生成して、前記一つまたは複数のコンピュータ・ネットワークを介してエンドユーザー装置に提供する。該ウェブ・ページは、エンドユーザー装置によって処理されたときに、エンドユーザー装置のユーザーが、エンドユーザー装置によって生成されたデータを処理するための複数の設定を指定できるようにするユーザー・インターフェースを提供する。エンドユーザー装置によって生成されたデータが、エンドユーザー装置のユーザーによって指定された前記複数の設定を使って前記作業フローに従って前記ウェブ・アプリケーションによって処理されるようにする要求が、前記一つまたは複数のコンピュータ・ネットワークを介してエンドユーザー装置から受信される。エンドユーザー装置によって生成されたデータが、エンドユーザー装置のユーザーによって指定された前記複数の設定を使って前記作業フローに従って前記ウェブ・アプリケーションによって処理されるようにする要求を、前記一つまたは複数のコンピュータ・ネットワークを介してエンドユーザー装置から受信することに応答して、前記作業フローの第一の部分を実装する第一のクラウド・アプリケーションへの第一の処理要求が生成され、前記一つまたは複数のコンピュータ・ネットワークを介して送信される。前記第一の処理要求は、エンドユーザー装置によって生成されたデータおよびエンドユーザー装置のユーザーによって指定された前記設定の両方を指定し、前記第一の処理要求は、前記第一のクラウド・アプリケーションの第一のアプリケーション・プログラム・インターフェースに準拠する。前記第一のクラウド・アプリケーションからの第一の処理結果を指定する第一の結果データが、前記一つまたは複数のコンピュータ・ネットワークを介して受信される。第二の処理要求が生成され、前記一つまたは複数のコンピュータ・ネットワークを介して前記作業フローの第二の部分を実装する第二のクラウド・アプリケーションに送信される。前記第二の処理要求は、前記第一のクラウド・アプリケーションから受信された前記第一の処理結果を指定する前記第一の結果データおよびエンドユーザー装置のユーザーによって指定された前記設定の両方を含み、前記第二の処理要求は、前記第二のクラウド・アプリケーションの第二のアプリケーション・プログラム・インターフェースに準拠し、前記第二のアプリケーション・プログラム・インターフェースは前記第一のアプリケーション・プログラム・インターフェースとは異なる。前記第二のクラウド・アプリケーションからの第二の処理結果を指定する第二の処理結果データが、前記一つまたは複数のコンピュータ・ネットワークを介して受信される。第三の処理要求が生成され、前記一つまたは複数のコンピュータ・ネットワークを介して前記第一のクラウド・アプリケーションおよび前記第二のクラウド・アプリケーションと異なるサードパーティー・サービスに送信される。前記第三の処理要求は、前記第二のクラウド・アプリケーションから受信された前記第二の処理結果データを指定する。
【０００７】
装置が、エンドユーザー装置からコンピュータ・ネットワークを通じてクラウド・サービスにアクセスすることにおける改善を提供する。本装置は、一つまたは複数のプロセッサと、本装置で実行されるウェブ・アプリケーションとを有する。ウェブ・アプリケーションは、特定の作業フローを実装しており、一つまたは複数のコンピュータ・ネットワークを介してエンドユーザー装置から、ウェブ・アプリケーションにアクセスする要求を受信するよう構成される。一つまたは複数のコンピュータ・ネットワークを通じてエンドユーザー装置から、ウェブ・アプリケーションにアクセスする要求を受信することに応答して、一つまたは複数のウェブ・ページが生成されて、前記一つまたは複数のコンピュータ・ネットワークを介してエンドユーザー装置に提供される。エンドユーザー装置によって処理されたときに、エンドユーザー装置のユーザーが、エンドユーザー装置によって生成されたデータを処理するための複数の設定を指定できるようにするユーザー・インターフェースが提供される。エンドユーザー装置によって生成されたデータが、エンドユーザー装置のユーザーによって指定された前記複数の設定を使って前記特定の作業フローに従って前記ウェブ・アプリケーションによって処理されるようにする要求が、前記一つまたは複数のコンピュータ・ネットワークを介してエンドユーザー装置から受信される。エンドユーザー装置のユーザーによって指定された設定に基づいてなされる、エンドユーザー装置のユーザーによって指定された設定にコンフリクトが存在しないという判定に応答して、第一の処理要求が生成され、前記一つまたは複数のコンピュータ・ネットワークを介して、前記作業フローの複数の部分を実装するクラウド・アプリケーションに送信される。前記第一の処理要求は、エンドユーザー装置によって生成されたデータおよびエンドユーザー装置のユーザーによって指定された前記設定の両方を指定し、前記第一の処理要求は、前記クラウド・アプリケーションの第一のアプリケーション・プログラム・インターフェースに準拠する。前記クラウド・アプリケーションによって生成された処理結果を指定する処理結果データが、前記一つまたは複数のコンピュータ・ネットワークを介して、前記作業フローの複数の部分を実装する前記クラウド・アプリケーションから受信される。エンドユーザー装置によって生成された前記データを、エンドユーザー装置のユーザーによって指定された前記設定を使って処理することに応答して前記クラウド・アプリケーションにおいて生成された処理結果を指定する前記結果データを処理する要求が、生成され、前記一つまたは複数のコンピュータ・ネットワークを介して前記クラウド・アプリケーションとは別個のサードパーティー・サービスに送信される。
【０００８】
装置が、エンドユーザー装置からコンピュータ・ネットワークを通じてクラウド・サービスにアクセスすることにおける改善を提供する。本装置は、一つまたは複数のプロセッサと、本装置で実行されるクラウド・アプリケーションとを有する。前記クラウド・アプリケーションは、一つまたは複数のコンピュータ・ネットワークを介してエンドユーザー装置から、特定のウェブ・ページの要求を受信するよう構成される。ここで、前記特定のウェブ・ページの要求は、エンドユーザー装置のユーザーが、前記クラウド・アプリケーションを含む第二のクラウド環境とは異なる第一のクラウド環境の一部であるウェブ・アプリケーションによってエンドユーザー装置に提供された第一のウェブ・ページに表示された、前記特定のウェブ・ページへのリンクを選択することに応答して、エンドユーザー装置において生成されたものである。前記特定のウェブ・ページの要求は、エンドユーザー装置のユーザーを一意的に同定するユーザー識別データと、エンドユーザー装置を一意的に同定する装置識別データと、エンドユーザー装置のユーザー、エンドユーザー装置および前記クラウド・アプリケーションに固有なトークンとを含む。前記クラウド・アプリケーションはさらに、一つまたは複数のコンピュータ・ネットワークを通じてエンドユーザー装置から、前記ウェブ・ページにアクセスする前記要求を受信し、前記エンドユーザー装置のユーザー、エンドユーザー装置および前記クラウド・アプリケーションに固有なトークンが現在有効であるかどうかを判定する。前記エンドユーザー装置のユーザー、エンドユーザー装置および前記クラウド・アプリケーションに固有なトークンが現在有効であると判定することに応答して、ユーザー・アクセスが前記クラウド・アプリケーションに提供される。
【０００９】
実施形態は、一つまたは複数の非一時的なコンピュータ可読媒体および／または一つまたは
【図面の簡単な説明】
【００１０】
付属の図面の図において、同様の参照符号は同様の要素を指す。
【００１１】
【図１Ａ】エンドユーザー装置を使ってクラウド・サービスにアクセスするための例示的構成を描くブロック図である。
【００１２】
【図１Ｂ】ユーザー、認可およびトークン・データを記憶するための例示的なデータ形式を描くブロック図である。
【００１３】
【図１Ｃ】二部式のテーブルの形の図１Ｂのデータ形式の例示的なインスタンスを描く図である。
【図１Ｄ】例示的なマッピング・データを描く図である。
【００１４】
【図２Ａ】管理ユーザーが自分たちの組織（消費者）リストを閲覧できるようにする管理画面を描く図である。
【００１５】
【図２Ｂ】管理ユーザーが自分たちの現在登録されている装置を閲覧できるようにする管理画面を描く図である。
【００１６】
【図２Ｃ】管理ユーザーが自分たちのプロダクトキーを閲覧できるようにする管理画面を描く図である。
【００１７】
【図２Ｄ】管理ユーザーが自分たちのアプリケーション使用レポートを閲覧できるようにする管理画面を描く図である。
【００１８】
【図２Ｅ】加入者が自分たちの現在加入している加入内容を閲覧できるようにする加入者コンソールのユーザー・インターフェース画面を描く図である。
【００１９】
【図２Ｆ】加入者がアプリケーションのためのアプリケーション設定を閲覧できるようにする加入者コンソールのユーザー・インターフェース画面を描く図である。
【００２０】
【図２Ｇ】加入者がアプリケーション・マーケットプレースを閲覧できるようにする加入者コンソールのユーザー・インターフェース画面を描く図である。
【００２１】
【図２Ｈ】加入者がパッケージ・マーケットプレースを閲覧できるようにする加入者コンソールのユーザー・インターフェース画面を描く図である。
【００２２】
【図２Ｉ】アプリケーションおよびパッケージのプロバイダーがアプリケーションおよびパッケージを管理する、より特定的には現在のアプリケーションを閲覧することができるようにするプロバイダー・コンソールのユーザー・インターフェース画面を描く図である。
【００２３】
【図２Ｊ】アプリケーションおよびパッケージのプロバイダーがアプリケーションおよびパッケージを管理する、より特定的にはアプリケーションを追加／更新することができるようにするプロバイダー・コンソールのユーザー・インターフェース画面を描く図である。
【００２４】
【図２Ｋ】アプリケーションおよびパッケージのプロバイダーがアプリケーションおよびパッケージを管理する、より特定的にはアプリケーションの現在のパッケージを閲覧することができるようにするプロバイダー・コンソールのユーザー・インターフェース画面を描く図である。
【００２５】
【図２Ｌ】アプリケーションおよびパッケージのプロバイダーがアプリケーションおよびパッケージを管理する、より特定的にはパッケージを追加／更新することができるようにするプロバイダー・コンソールのユーザー・インターフェース画面を描く図である。
【００２６】
【図３Ａ】入力、プロセスおよび出力というコンポーネント・カテゴリーで例示的コンポーネントを描く図である。
【００２７】
【図３Ｂ】SIクラウドのための例示的コンテキストを描くブロック図である。
【００２８】
【図３Ｃ】ユーザーがSIクラウド・コンポーネントのアイコンを作業面にドラッグアンドドロップして、SIクラウド・アプリケーションによって実装される作業フローを生成できるようにする作業フロー・デザイン・ツールによって提供されるユーザー・インターフェースを描く図である。
【００２９】
【図３Ｄ】SIクラウド・コンポーネントおよびSIクラウド・アプリケーションのための開発プロセスを描くブロック図である。
【００３０】
【図４Ａ】二つの異なるクラウド環境を統合するための手法を描くブロック図である。
【００３１】
【図４Ｂ】ユーザーが作業フローを生成できるようにする作業フロー・ツールのユーザー・インターフェース画面である。
【００３２】
【図４Ｃ】ICEクライアント・アプリケーションまたはウェブ・ブラウザーによって提供される例示的なユーザー・インターフェース画面を描く図である。
【００３３】
【図５】裁判所への電子提出のための文書を用意するコンテキストで二つの異なるクラウド環境を統合するための手法を描く流れ図である。
【００３４】
【図６Ａ】二つの異なるクラウド環境を統合するための手法のもう一つの例を描くブロック図である。
【００３５】
【図６Ｂ】ユーザーが作業フローを生成できるようにする作業フロー・ツールのユーザー・インターフェース画面である。
【００３６】
【図６Ｃ】ICEクライアント・アプリケーションまたはウェブ・ブラウザーによって提供される例示的なユーザー・インターフェース画面を描く図である。
【００３７】
【図６Ｄ】ICEクライアント・アプリケーションまたはウェブ・ブラウザーによって提供される例示的なユーザー・インターフェース画面を描く図である。
【００３８】
【図７】ベイツ・ナンバリング印を文書に加えるコンテキストで二つの異なるクラウド環境を統合するための手法を描く流れ図である。
【００３９】
【図８Ａ】ある実施形態に基づく、二つの異なるクラウド環境を統合するための構成を描くブロック図である。
【００４０】
【図８Ｂ】ベイツ・スタンプ付け作業フローを描くブロック図である。
【００４１】
【図８Ｃ】タイムスタンプ付け作業フローを描くブロック図である。
【００４２】
【図８Ｄ】透かし入れ作業フローを描くブロック図である。
【００４３】
【図８Ｅ】ユーザーが、最終文書の宛先、スタンプ型、出力フォーマット、用紙サイズ、OCRを有効にするかどうか、色および両面オプションならびにファイル名を指定できるようにするユーザー・インターフェース画面を描く図である。
【００４４】
【図８Ｆ】ユーザーが、データに加えられるスタンプ付けの型を指定できるようにするユーザー・インターフェース画面を描く図である。
【００４５】
【図８Ｇ】ユーザーが、標準時ゾーン、垂直および水平方向位置およびフォント設定を含む高度なタイムスタンプ設定を指定できるようにするユーザー・インターフェース画面を描く図である。
【００４６】
【図８Ｈ】ユーザーが、高度なベイツ・スタンプ設定を指定できるようにするユーザー・インターフェース画面を描く図である。
【００４７】
【図８Ｉ】ユーザーが、高度な透かし設定を指定できるようにするユーザー・インターフェース画面を描く図である。
【００４８】
【図９】データにマークを加え、次いでマーク付けされたデータをクラウド記憶に記憶するコンテキストで、二つの異なるクラウド環境を統合するための手法を描く流れ図である。
【００４９】
【図１０Ａ】ある実施形態に基づく、コンフリクト検査を使う、二つの異なるクラウド環境を統合するための構成を描くブロック図である。
【００５０】
【図１０Ｂ】スタンプ付け／マーク付けアプリケーションによって実装されるスタンプ付け／マーク付け作業フローを描くブロック図である。
【００５１】
【図１１】データにマークを加え、次いでマーク付けされたデータをクラウド記憶に記憶するコンテキストで、二つの異なるクラウド環境を統合するための手法を描く流れ図である。
【００５２】
【図１２Ａ】さまざまなクラウド・サービスのためのアイコン、特にICEクラウド・アプリケーションのためのアイコンを表示するエンドユーザー装置のための例示的なユーザー・インターフェース画面である。
【００５３】
【図１２Ｂ】二つのSIクラウド作業フローのためのアイコンを表示するエンドユーザー装置のための例示的なユーザー・インターフェース画面を描くブロック図である。
【００５４】
【図１２Ｃ】図１２Ｂで描かれた「Workflow  1」のための例示的なユーザー・インターフェース画面を描くブロック図である。
【００５５】
【図１３】直接リンクを使って、SIクラウドおよびICEクラウドを統合するための手法を描く流れ図である。
【００５６】
【図１４Ａ】管理ユーザーが、図１４Ａにおいて「組織（organization）」と称される、新たなユーザーを追加、すなわち生成することを許容するユーザー・インターフェース画面を描く図である。
【００５７】
【図１４Ｂ】管理ユーザーが、前記新たな組織（organization）について管理ユーザーを生成することを許容するユーザー・インターフェース画面を描く図である。
【００５８】
【図１４Ｃ】管理ユーザーが、前記新たな組織（organization）について一つまたは複数のパッケージへの加入を生成することを許容するユーザー・インターフェース画面を描く図である。
【００５９】
【図１４Ｄ】管理ユーザーが、前記新たな組織（organization）について管理者情報を指定することを許容するユーザー・インターフェース画面を描く図である。
【００６０】
【図１４Ｅ】管理ユーザーが、前記組織について会社プロファイルを指定することを許容するユーザー・インターフェース画面を描く図である。
【００６１】
【図１５】諸実施形態が実装されうるコンピュータ・システムのブロック図である。
【発明を実施するための形態】
【００６２】
以下の記述では、説明の目的で、実施形態の十全な理解を提供するよう数多くの個別的詳細が記載される。しかしながら、当業者は、実施形態がこうした個別的詳細なしでも実施されうることは明白であろう。他方、よく知られた構造および装置は、実施形態を無用に埋没させるのを避けるために、ブロック図の形で示されている。実施形態のさまざまな側面が、下記では、次の分節で記載される。
Ｉ．概要
ＩＩ．アーキテクチャー
Ａ．ICEクラウド
ｉ．ICEクラウド・マネージャ
ｉｉ．ICEクラウド・データ
ｉｉｉ．ユーザー、認可およびトークン・データ
Ｂ．SIクラウド
ｉ．SIクラウド・コンポーネント
ｉｉ．SIクラウド・アプリケーション
ｉｉｉ．SIクラウド・データ
ＩＩＩ．SIクラウドおよびICEクラウド環境の統合
Ａ．統合の第１型：SIクラウドによって管理されるエンドツーエンド処理
ｉ．動作例
ｉｉ．サードパーティー・サービスのためのトークンを識別するためのマッピング・データの使用
Ｂ．統合の第２型：ICEクラウドによって管理される統合
Ｃ．統合の第３型：コンフリクト検査のあるICEクラウドによって管理される統合
Ｄ．統合の第４型：直接リンク
ＩＶ．ユーザーおよび加入の提供
Ｖ．実装例。
【００６３】
Ｉ．概要
高レベルのプログラミング技量およびカスタマイズなしではエンドユーザー装置上で実装するのが実際的でないまたは困難であるクラウド・サービスへのアクセスを、ある手法が提供する。本稿での用法では、「エンドユーザー装置」とは、任意の型の電子装置を指す。エンドユーザー装置の例は、限定なしに、パーソナル・コンピュータ、ワークステーション、複合機（MFP）、タブレット・コンピューティング装置、モバイル・コンピューティング装置、携帯情報端末、スマートフォンを含む電話機、他の消費者装置などを含む。
【００６４】
本手法は、エンドユーザー装置上で、本稿でスマート統合（SI:  Smart  Integration）クラウド・サービスと称されるクラウド・サービスの第二の集合にアクセスするために、本稿で統合クラウド環境（ICE）クラウド・サービスと称されるクラウド・サービスの第一の集合を使う。ある実施形態によれば、SIクラウド・サービスは、エンドユーザー装置のユーザーにとって望ましいが、ICEクラウド・サービスを介して利用可能ではない独特のおよび／または複雑な作業フローを実装する。
【００６５】
ICEクラウド・サービスは、エンドユーザー装置とSIクラウド・サービスの間の仲介役のはたらきをし、エンドユーザー装置を介してSIクラウド・サービスにアクセスするためのユーザーフレンドリーなユーザー・インターフェースを提供する。ICEクラウド・サービスは、SIクラウド・サービスのアプリケーション・プログラム・インターフェース（API）を実装し、SIクラウド・サービスによって生成された結果を管理もするが、SIクラウド・アプリケーションによって使われるSIクラウド・コンポーネントのAPIを実装する必要がない。ICEクラウド・サービスは、サードパーティー・サービスにアクセスするために必要とされるユーザー情報、認可クレデンシャルおよびトークンを管理もする。さらに、ICEクラウド・サービスは、ICEクラウド・サービスおよびSIクラウド・サービス両方に関して管理機能を実行するためのユーザー・インターフェースを提供する。
【００６６】
もう一つの実施形態によれば、SIクラウドおよびICEクラウドは、直接リンクを使って、すなわちエンドユーザー装置をSIクラウドに直接リンクすることによって統合される。この手法によれば、エンドユーザー装置のユーザー・インターフェースが、SIクラウドをポイントする埋め込まれたリンクを含むユーザー・インターフェース・オブジェクトを表示する。エンドユーザー装置のユーザーは、該ユーザー・インターフェース・オブジェクトを選択することによって、エンドユーザー装置をSIクラウドと直接接続する。ユーザー・インターフェース・オブジェクトの選択は、ユーザーID、装置識別データおよびトークンのような情報が、SIクラウドに送信されるようにし、それによりSIクラウドは該SIクラウドへのユーザーのアクセスを認可する。
【００６７】
これらの手法は、SIクラウド・サービスを修正したり、SIクラウド・サービスのAPIをエンドユーザー装置上に実装したり、クラウド・サービス処理の結果を管理したり、あるいはサードパーティー・サービスを使うために要求される認可データを含む前記データを管理したりする必要なしに、SIクラウド・サービスによって提供される機能にエンドユーザー装置を介していかにしてアクセスするかという技術的課題に取り組む。技術的解決策は、既存のクラウド・サービス、すなわちクラウド・サービスの第一の集合（ICEクラウド・サービス）をエンドユーザー装置とクラウド・サービスの第二の集合（SIクラウド・サービス）との間の仲介役として使い、また直接リンク手法を使う。
【００６８】
ＩＩ．アーキテクチャー
図１Ａは、エンドユーザー装置を使ってクラウド・サービスにアクセスするための例示的構成１００を描くブロック図である。図１Ａに描かれた例では、構成１００はエンドユーザー装置１１０、統合クラウド環境（ICE）クラウド１２０、スマート統合（SI）クラウド１５０およびサードパーティー・サービス１９０を含む。
【００６９】
エンドユーザー装置１１０は、印刷およびスキャン、コピー、ファクシミリなどといった一つまたは複数の機能を実行する装置である。エンドユーザー装置１１０は、印刷および前記一つまたは複数の他の機能を実行するためのコンピュータ・ハードウェア、コンピュータ・ソフトウェアおよびコンピュータ・ハードウェアとコンピュータ・ソフトウェアの任意の組み合わせを含みうる。これはたとえば、スキャン・コンポーネント、一つまたは複数のプロセッサ、一つまたは複数のメモリ、一つまたは複数の通信インターフェース、たとえば有線および無線インターフェース、オペレーティング・システム、エンドユーザー装置１１０によって提供される機能をサポートおよび実行するための一つまたは複数のプロセス、タッチスクリーン・ディスプレイのようなディスプレイなどを含んでいてもよい。ある実施形態によれば、エンドユーザー装置１１０は、他のプロセスと通信するための一つまたは複数の要素を含む。図１Ａに描かれる例では、エンドユーザー装置１１０は、ICEクライアント・アプリケーション１１２または代替的にウェブ・ブラウザー１１４を含んでいてもよい。ICEクライアント・アプリケーション１１２は、ICEクラウド１２０と通信するよう構成されており、ICEクラウド１２０の一つまたは複数のアプリケーション・プログラム・インターフェース（API）の少なくとも一部を実装するアプリケーションである。たとえば、ICEクライアント・アプリケーション１１２は、ICEクラウド１２０と通信するウェブ・ブラウザー機能を実装してもよい。ウェブ・ブラウザー１１４は、ICEクラウド１２０と通信するためのいかなる型のウェブ・ブラウザーであってもよく、エンドユーザー装置１１０が、ICEクライアント・アプリケーション１１２のようなそのための特製のアプリケーションなしにICEクラウド１２０およびSIクラウド１５０によって提供される機能にアクセスできるようにする。
【００７０】
Ａ．ICEクラウド
ICEクラウド１２０は、ICEクラウド・マネージャ１２２、ICEクラウド・アプリケーション１３０およびICEクラウド・データ１４０を含むクラウド環境である。ICEクラウド１２０は、ネットワーク要素、サーバーなどのような一つまたは複数のコンピューティング要素上に実装されてもよく、実施形態はICEクラウド１２０のためのいかなる特定の実装にも限定されない。ICEクラウド１２０は、具体的な実装に依存して、図１Ａに描かれる要素より少数のまたは追加的な要素を含んでいてもよく、ICEクラウド１２０はいかなる特定の実装にも限定されない。たとえば、ICEクラウド１２０は、一つまたは複数のコンピューティング・システム上で実行される一つまたは複数のプロセスによって実装されてもよい。
【００７１】
ｉ．ICEクラウド・マネージャ
ICEクラウド・マネージャ１２２は、ICEクラウド１２０を管理する。これは、エンドユーザー装置１１０および他のクライアント装置からの要求を処理し、ICEクラウド１２０のためのさまざまな管理タスクを実行することを含む。ICEクラウド・アプリケーション１３０はICEクラウド・マネージャ１２２によっておよび／または一つまたは複数のアプリケーション・サーバー・プロセスによって管理されうる。ICEクラウド・アプリケーション１３０は、さまざまな機能を実行するための幅広い多様なアプリケーションを含んでいてもよい。それは、のちにより詳細に述べるように、SIクラウド１５０によって提供されるサービスへの接続役としてであってもよい。図１Ａに描かれる例では、ICEクラウド・アプリケーション１３０はOCRアプリケーション１３２、ベイツ・スタンプ付けアプリケーション１３４、法廷電子提出、すなわちe提出準備アプリケーション１３６およびデータ・ストレージ・アプリケーション１３８を含む。実施形態はこれらのアプリケーションに限定されず、具体的な実装に依存して他のアプリケーションが提供されてもよい。図１Ａに描かれていない一例としてのアプリケーションは、モバイル・アプリケーションのためにデータを変換するアプリケーション、たとえばモバイル印刷のためのPDF変換アプリケーションである。
【００７２】
ある実施形態によれば、ICEクラウド・マネージャ１２２は、ICEクラウド環境を管理するための一つまたは複数のユーザー・インターフェースを提供する。ユーザー・インターフェースは、ウェブ・ベースのユーザー・インターフェースとして、たとえばクライアント装置からの要求に応答して一つまたは複数のウェブ・ページを生成してクライアント装置に提供することによって、実装されてもよい。図２Ａ〜図２Ｄは、管理ユーザーが、自分の組織（顧客）リスト（図２Ａ）、現在登録されている装置（図２Ｂ）、プロダクトキー（図２Ｃ）およびアプリケーション使用レポート（図２Ｄ）を閲覧できるようにする四つの管理画面を描いている。図２Ｅ〜図２Ｈは、加入者が自分の現在加入している加入を閲覧すること（図２Ｅ）、アプリケーションのためのアプリケーション設定を閲覧すること（図２Ｆ）、アプリケーション・マーケットプレースを閲覧すること（図２Ｇ）およびパッケージ・マーケットプレースを閲覧すること（図２Ｈ）ができるようにする加入者コンソールのユーザー・インターフェース画面を描いている。図２Ｉ〜図２Ｌは、アプリケーションおよびパッケージのプロバイダーが、アプリケーションおよびパッケージを管理すること、より特定的には現在のアプリケーションを閲覧すること（図２Ｉ）、アプリケーションを追加／更新すること（図２Ｊ）、自分のアプリケーションの現在のパッケージを閲覧すること（図２Ｋ）およびパッケージを追加／更新すること（図２Ｌ）ができるようにするプロバイダー・コンソールのユーザー・インターフェース画面を描いている。ユーザーによって指定された設定は、たとえば管理および構成設定データ１４２に格納されて、ICEクラウド・アプリケーション１３０のためのデフォルト設定として使われてもよい。
【００７３】
ｉｉ．ICEクラウド・データ
ICEクラウド・データ１４０は、ICEクラウド１２０を構成設定し、管理するために使われるデータを含む。図１Ａに描かれる例では、ICEクラウド・データ１４０は、管理および構成設定データ１４２ならびにユーザー、認可およびトークン・データ１４４を含む。管理および構成設定データ１４２は、ICEクラウド・アプリケーション１３０のための構成設定データ、たとえばICEクラウド・アプリケーション１３０の名前、バージョン、アプリケーション・プログラム・インターフェース定義および状態を含む。ユーザー、認可およびトークン・データ（user,  authorization,  and  token  data）１４４は、任意の型のユーザー・データ、認可データおよびトークン・データを含みうる。このデータはたとえば、のちにより詳細に述べるように、ICEクラウド・アプリケーション１３０、SIクラウド・アプリケーション１６０およびサードパーティー・サービス１９０にアクセスするために使われる。
【００７４】
ｉｉｉ．ユーザー、認可およびトークン・データ
図１Ｂは、ユーザー、認可およびトークン・データ（user,  authorization,  and  token  data）１４４のための例示的なデータ形式を描くブロック図である。この例では、本データ形式におけるフィールドは、ユーザー識別情報（ID）、ユーザー・ログインID、組織ID、ファーストネーム、ラストネーム、電子メール・アドレス、ファクス番号、外部アプリケーション・トークン、使用カウントおよび一つまたは複数の装置IDを含む。各フィールドについてのデータは、たとえば、数値、英数字列などを含みうる。図１Ｂに描かれるフィールドの全部が要求されるわけではなく、具体的な実装に依存して、より少数のまたは追加的なフィールドが使用されてもよい。たとえば、データ形式は、特定のトークンが現在有効であるかどうかを示すブーリアン値を含む「トークン有効」フィールドを含んでいてもよい。ユーザーは、複数のトークン、たとえばいくつかのアプリケーションのそれぞれについて一つのトークンを有していてもよい。これについては、のちにより詳細に述べる。
【００７５】
図１Ｃは、二部式テーブルの形の図１Ｂのデータ形式の例示的なインスタンスを描いている。データ形式のインスタンスは、各ユーザーについて、たとえばユーザー、認可およびトークン・データ１４４（図１Ａ）の一部として生成され、管理されてもよい。ICEクラウド・マネージャ１２２によって提供されるICEクラウド１２０を管理するためのユーザー・インターフェースは、ユーザー、認可およびトークン・データ１４４を含むICEクラウド・データ１４０を管理するためのユーザー・インターフェースを含んでいてもよい。
【００７６】
本稿で単に「トークン」とも称されるアプリケーション・トークンは、サードパーティー・サービス１９０およびのちにより詳細に述べるようにSIクラウド１５０のようなサービスのための、トークン・ベースの認証をサポートするために使われる。トークンは、特定の実装に依存して変わりうるいかなる時間の長さにわたって有効であってもよい。たとえば、トークンは、取り消される／撤回されるまで有効であってもよく、特定の長さの時間にわたって有効であってもよく、すなわち期限切れまで有効であってもよく、特定のトランザクション／機能のために使うために有効であってもよい、などである。特定のユーザーに対し、該ユーザーがアクセスする必要のある複数のサービスのそれぞれについて別個のトークンが発行されてもよく、よって、ユーザーは任意の特定の時刻において複数のトークンを有していてもよい。トークンは、それが使われるサービスによって発行されてもよく、あるいはトークンを発行するよう指定されている他のサービスによって発行されてもよい。トークンは、エンドユーザー装置固有であってもよく、ユーザーが実行しうる機能を定義する対応するパーミッションまたはスコープを有していてもよい。トークンはICEクラウド１２０において維持され、ICEクラウド・アプリケーション１３０によって、サードパーティー・サービス１９０にアクセスするため、および後述するようにエンドユーザー装置およびICEクラウド１５０の直接統合を提供するために、使用される。
【００７７】
Ｂ．SIクラウド
SIクラウド１５０は、SIクラウド・マネージャ１５２、SIクラウド・アプリケーション１６０およびSIクラウド・コンポーネント１７０およびSIクラウド・データ１８４を含む。SIクラウド１５０は、ネットワーク要素、サーバーなどのような一つまたは複数のコンピューティング要素上に実装されてもよく、実施形態はSIクラウド１５０のためのいかなる特定の実装にも限定されない。SIクラウド１５０は、具体的な実装に依存して、図１Ａに描かれる要素より少数のまたは追加的な要素を含んでいてもよく、SIクラウド１５０はいかなる特定の実装にも限定されない。たとえば、SIクラウド１５０は、一つまたは複数のコンピューティング・システム上で実行される一つまたは複数のプロセスによって実装されてもよい。
SIクラウド・マネージャ１５２はSIクラウド１５０を管理する。これは、ICEクラウド１２０およびサードパーティー・サービス１９０へのおよびからの要求の処理を管理し、SIクラウド１５０のためのさまざまな管理タスクを実行することを含む。
【００７８】
ｉ．SIクラウド・コンポーネント
SIクラウド・コンポーネント１７０は、それぞれ一つまたは複数の機能を実装するプロセスである。機能は、いかなる型の機能であってもよく、具体的な実装に依存して変わりうる。ある実施形態によれば、機能は入力機能、出力機能およびプロセス機能を含む。入力および出力機能の例は、限定なしに、装置／トリガー（device/trigger）機能、サービス接続役（service  connector）機能およびデータ接続役（data  connector）機能を含む。図３Ａは、入力、プロセス、出力というコンポーネント・カテゴリーにおいて例示的コンポーネントを描いている。この例において、入力カテゴリーは、文書または文書データの源を表わす。たとえば、スキャンからのスキャン・データ、装置から、たとえば装置ファームウェア情報からの装置情報、装置計測情報（実行されたコピー、プリント、スキャンなどの数）などである。もう一つの型の入力は、リストボックスのようなユーザー定義されたユーザー・インターフェース選択である。ユーザー定義されたユーザー・インターフェース選択は、スプレッドシート、CSVファイル、グーグル・シートなどから生じてもよい。プロセス機能型は、文書に対して実行されうる処理の種々の型に関し、たとえばバーコード認識を含む。
【００７９】
図１Ａに描かれた例では、SIクラウド・コンポーネント１７０は、OCR  １７２、ファイル分割１７４、ベイツ・スタンプ付け１７６、タイムスタンプ付け１７８および透かし１８０を含むいくつかのプロセス機能を含む。これらはそれぞれ、OCR、ファイル分割、ベイツ・スタンプ付け、タイムスタンプ付けおよび透かし入れサービスを提供する。これらの例示的コンポーネントは、説明の目的で提供されており、実施形態はこれらの例示的コンポーネントに限定されない。出力機能は、処理された文書データに何が起こるかに関する。たとえば、処理された文書データは、印刷されたり、メールされたり、クラウド・サービスに送られたり、および／またはオンプレミス記憶位置、たとえば特定のサーバー、フォルダーなどに記憶されたりしうる。ある実施形態によれば、SIクラウド・コンポーネント１７０は、ICEクラウド・アプリケーション１３０によって実装されない機能を実装する。さらにもう一つの実施形態によれば、諸SIクラウド・アプリケーション１６０は、共通のユーザー・インターフェースを共有しない。
【００８０】
ある実施形態によれば、SIクラウド・コンポーネント１７０のそれぞれは、他のSIクラウド・コンポーネントによってサポートされるAPIと同じであっても、あるいは異なっていてもよい特定のAPIをサポートする。SIクラウド・コンポーネント１７０は、指定された機能を実行するために他のプロセスによって使用されてもよい。たとえば、SIクラウド１５０の外部のアプリケーションが、光学式文字認識を使って画像データをテキストに変換するOCR  １７２コンポーネントを使ってもよい。ただし、これは、アプリケーションがOCR  １７２コンポーネントのAPIを実装することを要求する。
【００８１】
ｉｉ．SIクラウド・アプリケーション
SIクラウド・アプリケーション１６０は、本稿で「作業フロー（workflow）」と称される複数の機能を実行するために一つまたは複数のSIクラウド・コンポーネント１７０を使うプロセスである。SIクラウド・アプリケーション１６０は、特定の作業フローを実行するために外部のアプリケーションおよび装置から呼び出されてもよい。たとえば、クライアント装置は、諸SIクラウド・アプリケーション１６０のうちの特定のSIクラウド・アプリケーションを呼び出して、その特定のSIクラウド・アプリケーションによって提供される作業フローを実行してもよい。
【００８２】
いずれかの特定の作業フローによって実行される機能は、具体的な実装に依存して変わりうる。実施形態はいかなる特定の機能にも限定されない。一例として、ビジネス作業フローは、MFPのようなエンドユーザー装置からスキャン・データを受信し、たとえば光学式文字認識を使って、該スキャン・データをテキスト・データに変換し、該スキャン・データおよび／またはテキスト・データにマーク付けして真正性を確立し、テキスト・データに対してさまざまな型のビジネス処理を実行し、スキャン・データおよびテキスト・データを安全な貯蔵所に、暗号化ありまたはなしで記憶し、一つまたは複数の通知を生成および送信することを含んでいてもよい。通知はたとえば、テキスト・データに対して実行されたビジネス処理の結果、スキャン・データおよび／またはテキスト・データの貯蔵所における成功裏の記憶などを示していてもよい。これは、実装されうる作業フローの単に一例である。
【００８３】
ある実施形態によれば、SIクラウド・アプリケーション１６０は、SIクラウド・コンポーネント１７０を使って作業フローを実装する。これはたとえば、諸SIクラウド・アプリケーション１６０が、特定の作業フローの機能を実行するために一つまたは複数のSIクラウド・コンポーネントを呼び出すことを含んでいてもよい。諸SIクラウド・アプリケーション１６０は、それが呼び出すSIクラウド・コンポーネント１７０のAPIをサポートするとともに、作業フローを実行するためにSIクラウド・コンポーネント１７０によって提供された中間結果を管理するよう構成される。
【００８４】
たとえば、特定のSIクラウド・アプリケーション１６０が、MFPのようなエンドユーザー装置からのデータを処理する作業フローを実装するために、二つのSIクラウド・コンポーネントAおよびBを使うとする。その特定のSIクラウド・アプリケーションは、たとえばICEクラウド・アプリケーションから、該データを受信する。その特定のSIクラウド・アプリケーションは、SIクラウド・コンポーネントAのAPIに準拠するデータ処理要求を生成する。たとえば、該要求は、SIクラウド・コンポーネントAのAPIによって定義された一つまたは複数のコマンドを、前記データまたは該データへの参照とともに、含んでいてもよい。SIクラウド・アプリケーションは、該要求をSIクラウド・コンポーネントAに送信し、該SIクラウド・コンポーネントAは該データを、前記要求に従って処理し、処理結果を生成する。前記特定のSIクラウド・アプリケーションは、SIクラウド・コンポーネントAから処理結果を受信する。この例では、前記特定のSIクラウド・アプリケーションはまだ作業フローを完了していないので、SIクラウド・コンポーネントAからの処理結果は中間結果であると考えられ、SIクラウド・コンポーネントAからの処理結果はSIクラウド・コンポーネントBへの入力データとして使われる。
【００８５】
特定のSIクラウド・アプリケーションは、SIクラウド・コンポーネントBのAPIに準拠するデータ処理要求を生成する。たとえば、該要求は、SIクラウド・コンポーネントBのAPIによって定義された一つまたは複数のコマンドを、SIクラウド・コンポーネントAから受領された処理結果または該処理結果への参照とともに、含んでいてもよい。この特定のSIクラウド・アプリケーションは、該データ処理要求を処理のためにSIクラウド・コンポーネントBに送信する。SIクラウド・コンポーネントBは前記要求を処理し、処理結果を生成し、処理結果を前記特定のSIクラウド・アプリケーションに提供し返す。この例では、作業フローが完了しているので、SIクラウド・コンポーネントBから受信された処理結果は、最終的な処理結果であると考えられる。上記の例では、前記特定のSIクラウド・アプリケーションがSIクラウド・コンポーネントAおよびBによって実行される処理すべてを管理する。このようにして、前記特定のSIクラウド・アプリケーションを呼び出すICEクラウド・アプリケーションのようなエンティティーは、該特定のSIクラウド・アプリケーションと対話するだけでよく、APIを実装したり、あるいは作業フローを実装するために前記特定のクラウド・アプリケーションによって使われるSIクラウド・コンポーネントの中間結果を管理したりする必要がない。
【００８６】
図１Ａに描かれる例では、SIクラウド・アプリケーション１６０はベイツ・スタンプ付けアプリケーション１６２および法廷電子提出準備アプリケーション１６４を含む。これらは、本稿でより詳細に記載される説明の目的のための例示的アプリケーションであり、実施形態はこれらの例示的なSIクラウド・アプリケーションに限定されない。
【００８７】
図３Ｂは、SIクラウド１５０についての例示的コンテキストを描くブロック図である。図３Ｂに描かれる例では、開発者がSIクラウド・コンポーネント１７０を開発して、SIクラウド１５０に登録し、ディーラーがクラウド・アプリケーション１６０を生成して、SIクラウド１５０に登録する。さらに、顧客は、たとえばMFPのようなエンドユーザー装置からSIクラウド・アプリケーション１６０を実行する。
【００８８】
諸SIクラウド・アプリケーション１６０はそれぞれ、一意的なユーザー・インターフェースを提供してもよく、独自のAPIを実装してもよい。ユーザー・インターフェースはたとえば、プログラム・ユーザー・インターフェースまたはウェブ・ベースのユーザー・インターフェースとして実装されてもよい。ある実施形態によれば、SIクラウド１５０は、SIクラウド１５０を管理するためのユーザー・インターフェースを提供する。ユーザー・インターフェースは、たとえばクライアント装置からの要求に応答してクライアント装置に一つまたは複数のウェブ・ページを提供することによって、ウェブ・ベースのユーザー・インターフェースとして実装されてもよい。図３Ｃは、ユーザーがSIクラウド・コンポーネント１７０のアイコンを作業面（work  surface）にドラッグアンドドロップして、SIクラウド１５０アプリケーションによって実装される作業フローを生成できるようにする作業フロー・デザイン・ツールによって提供されるユーザー・インターフェースを描いている。図３Ｃに描かれる例では、作業フローは二つの並列なタスクを実行する。ユーザーからデータ、たとえばスキャンされた画像を受領した後、該データはOCRを使って処理されてテキストを生成し、上のタスクではテキストが翻訳される。下のタスクでは、ベイツ・スタンプおよびタイムスタンプがテキストに加えられる。翻訳されたテキストならびにベイツ・スタンプおよびタイムスタンプをもつテキストは、宛先にメールされる。
【００８９】
図３Ｄは、SIクラウド・コンポーネント１７０およびSIクラウド・アプリケーション１６０のための開発プロセスを描くブロック図である。左上隅から始めて、開発者はI/Oコンポーネント・ソフトウェア開発キット（SDK）を使ってSIクラウド・コンポーネント１７０を作成する。この例では、SIクラウド・コンポーネント１７０は、jarファイルによって作成されるが、これは必須ではない。それぞれの新たなSIクラウド・コンポーネント１７０は一つまたは複数の定義された入力、プロセス（機能）および出力をもつ。作業フローは、図３Ｃに関して本稿で先述した作業フロー・デザイン・ツールを使って生成され、その後、ウェブ・アプリケーションのようなアプリケーションによって実装される。最後に、アプリケーションはリリースされ、本稿で述べるように、エンドユーザー装置を介してユーザーに利用可能にされる。
【００９０】
ｉｉｉ．SIクラウド・データ
SIクラウド・データ１８４は、SIクラウド１５０を構成設定および管理するために使われるデータを含む。図１Ａに描かれる例では、SIクラウド・データ１８４は、管理および構成設定データ１８６ならびにユーザー、認可およびトークン・データ１８８を含む。管理および構成設定データ１８６は、SIクラウド・アプリケーション１３０およびSIクラウド・コンポーネント１７０のための構成設定データ、たとえばSIクラウド・アプリケーション１６０およびSIクラウド・コンポーネント１７０の名前、バージョン、アプリケーション・プログラム・インターフェース定義および状態を含む。ユーザー、認可およびトークン・データ１４４は、任意の型のユーザー・データ、認可データおよびトークン・データを含みうる。このデータはたとえば、のちにより詳細に述べるように、SIクラウド・アプリケーション１６０、SIクラウド・コンポーネント１７０およびサードパーティー・サービス１９０にアクセスするために使われる。ユーザー、認可およびトークン・データ１４４に関して本稿で先述した図１Ｂおよび図１Ｃに描かれているユーザー、認可およびトークン・データの例は、ユーザー、認可およびトークン・データ１８８がユーザー、認可およびトークン・データ１４４とは別個で相異なるためSIクラウド１５０によって管理されるということ以外は、ユーザー、認可およびトークン・データ１８８に適用可能である。
【００９１】
ＩＩＩ．SIクラウドおよびICEクラウド環境の統合
エンドユーザー装置とSIクラウド１５０の間の仲介役のはたらきをするICEクラウド・アプリケーション１３０を使って、MFPのようなエンドユーザー装置上でSIクラウド１５０の機能にアクセスするためのいくつかの手法が提供される。それらの手法は、SIクラウド１５０によって提供される機能を、ICEクラウド・アプリケーション１３０によって実装される共通のユーザー・インターフェースと統合する。これは、エンドユーザー装置上でSIクラウド１５０の諸APIを実装する必要なしに、共通のユーザー・インターフェースを介して、エンドユーザー装置上でSIクラウド１５０によって提供される機能へのアクセスをもつという恩恵を提供する。のちにより詳細に述べるように、これらの手法は、サードパーティー・サービスにアクセスするために必要とされるユーザー情報、認可クレデンシャルおよびトークンを管理する異なる仕方を含む。
【００９２】
Ａ．統合の第１型：SIクラウドによって管理されるエンドツーエンド処理
SIクラウドおよびICEクラウドを統合するためのある実施形態によれば、ICEクラウド・アプリケーションがMFPのようなエンドユーザー装置とSIクラウド・アプリケーションとの間の仲介役としてはたらく。ICEクラウド・アプリケーションは、ユーザーがユーザーを選択し、データを処理するためにSIクラウド・アプリケーションによって必要とされる設定を指定することを許容するユーザー・インターフェースを提供するとともに、SIクラウド・アプリケーションのAPIを実装する。ICEクラウド・アプリケーションはデータ、ユーザー識別データおよびユーザー指定の設定をSIクラウド・アプリケーションに提供する。SIクラウド・アプリケーションは、ユーザー指定された設定を使って前記データを処理し、それにより作業フローを実装するために一つまたは複数のSIコンポーネントを使ってもよい。この状況において、SIクラウド・アプリケーションはSIクラウド・コンポーネントのAPIを実装し、ICEクラウド・アプリケーションおよびエンドユーザー装置のためにSIクラウド・コンポーネントとのあらゆる対話を扱う。SIクラウド・アプリケーションは、SIクラウド・コンポーネントから処理結果を受信し、該処理結果の、たとえば自分自身もしくはサードパーティー・サービスによるその後の処理があればそれを管理する。これは、エンドユーザー装置およびICEクラウド・アプリケーションの最小限の関与でエンドツーエンドの手法を提供する。
【００９３】
ｉ．動作例
図４Ａは、二つの異なるクラウド環境を統合するための手法を描いたブロック図４００である。図１Ａの要素のいくつかは、単に説明の目的のため、図４Ａには描かれていない。図４Ａでは、本手法は、法廷での電子提出のための文書を準備するコンテキストで描かれている。このコンテキストでは、法廷電子提出準備アプリケーション１３６は、エンドユーザー装置１１０のユーザーへのユーザー・インターフェースおよびSIクラウド１５０における法廷電子提出準備アプリケーション１６４へのアクセスを提供する。法廷は、たとえばフォーマット要件、サイズ要件などを含む、電子提出のための個別的要件をもつことがある。法廷に電子提出されるべき文書であって指定されたサイズを超えるものは、別個の文書に分割される必要がある。
【００９４】
図４Ｂは、ユーザーが作業フローを作成できるようにする作業フロー・ツールのユーザー・インターフェース画面４２０である。ユーザー・インターフェース画面４２０は、SIクラウド・コンポーネント１７０を使って法廷電子提出準備アプリケーション１６４によって実装される作業フローにおいて実行される諸現在段階を描いている。この例では、作業フローは、PDF変換を使って画像データをテキスト・データに変換し、該テキスト・データをそれぞれサイズ要件を満たすテキスト部分に分割し、該テキスト部分を一つまたは複数の宛先に電子メールで送信することを含む。ユーザー・インターフェース・コントロールが、ユーザーが、作業フローにおける各機能に対応するユーザー・インターフェース・オブジェクトを選択、ドラッグおよびドロップすることによって、作業フローにおいて段階を追加、削除および並べ替えすることを許容する。ユーザーは、作業フローにおける各機能によって使用されるデフォルト・パラメータを指定してもよい。
【００９５】
図５は、法廷への電子提出のための文書を準備するコンテキストにおいて、二つの異なるクラウド環境を統合するための手法を描く流れ図  ５００である。段階５０２では、エンドユーザー装置１１０のユーザーは、ICEクライアント・アプリケーション１１２またはウェブ・ブラウザー１１４を介してICEクラウド１２０における電子提出準備アプリケーション１３６にアクセスする。たとえば、ユーザーは、ICEクライアント・アプリケーション１１２の実行を開始してもよく、あるいはウェブ・ブラウザー１１４に、法廷電子提出準備アプリケーション１３６に関連付けられたURLにアクセスするよう命令してもよい。これは、ユーザーはたとえばドロップダウンメニューからユーザーを選択することによって自らを同定すること、たとえばエンドユーザー装置１１０に付随するスキャナーを介して身分証カードをスキャンして認証を完了すること、ユーザーIDおよびパスワードのようなユーザー・クレデンシャルを入力することなどを含んでいてもよい。ユーザー・クレデンシャルの検証は、エンドユーザー装置１１０上でローカルになされてもよく、あるいはユーザー検証サービス、ICEクラウド・マネージャ１２２、ICEクラウド・アプリケーション１３０などといったリモート・サービスに関わってもよい。
【００９６】
段階５０４では、法廷電子提出準備アプリケーション１３６は、たとえば一つまたは複数のウェブ・ページを介してユーザー・インターフェースを提供する。ユーザーが法廷電子提出アプリケーション１３６にアクセスするためにICEクライアント・アプリケーション１１２を使う代替では、ICEクライアント・アプリケーション１１２がユーザー・インターフェースを提供してもよい。図４Ｃは、ICEクライアント・アプリケーション１１２またはウェブ・ブラウザー１１４によって提供される例示的なユーザー・インターフェース画面４２０を描いている。ユーザー・インターフェース画面４２０は、ユーザーが、たとえば一つまたは複数の宛先電子メール・アドレスを指定することによる最終文書のための宛先、それぞれの最終文書の最大サイズを制限するために使われる分割サイズ、用紙サイズ、OCR、カラーおよび両面オプションを有効にするか否かおよびファイル名を指定できるようにする。これらは本稿ではまとめて「ユーザー設定」と称される。ユーザー設定は、エンドユーザー装置１１０上に記憶されてもよく、次にそのユーザーがエンドユーザー装置１１０にアクセスするときにそのユーザーのためのデフォルト値として使われてもよい。
【００９７】
段階５０６では、ユーザーは、法廷電子提出準備アプリケーション１３６に提供され、最終的に法廷電子提出準備アプリケーション１６４によってデータを処理するために使われる設定を指定する。該設定は、最終的な処理結果が送られるべき一つまたは複数の電子メール・アドレスを含んでいてもよい。
【００９８】
段階５０８では、ユーザーが、たとえば図４Ｃにおいて＜Scan＞〔スキャン〕ボタンを選択することによって、スキャンを開始し、文書がスキャンされ、スキャン・データが生成される。実施形態は本稿ではユーザーが、エンドユーザー装置において物理的な文書をスキャンすることによってスキャン・データの形でソース・データを生成するというコンテキストで記述されるが、それは説明の目的のためであって、実施形態はこの例に限定されず、いかなる型のソース・データにも適用可能である。たとえば、ユーザーは、既存のソース・データ、たとえばエンドユーザー装置１１０に記憶されている以前にスキャンされたデータ、クラウド・データ・ストレージ・サービスのようなクラウド・サービスに記憶されているデータなどを選択してもよい。
【００９９】
段階５１０では、ユーザー識別データ、スキャン・データおよび設定データが法廷電子提出準備アプリケーション１３６に提供される。たとえば、ICEクライアント・アプリケーション１１２は、ユーザーID、スキャン・データもしくは該スキャン・データが記憶されている場所へのリンクおよびユーザーによって選択された設定を示す設定データを含むメッセージを、法廷電子提出準備アプリケーション１３６に送信してもよい。あるいはまた、ウェブ・ブラウザー１１４がユーザーID、スキャン・データおよび設定データを法廷電子提出準備アプリケーション１３６に提供してもよい。
【０１００】
段階５１２では、法廷電子提出準備アプリケーション１３６が、SIクラウド１５０における法廷電子提出準備アプリケーション１６４を呼び出す。ある実施形態によれば、法廷電子提出準備アプリケーション１３６は、法廷電子提出準備アプリケーション１６４のAPIをサポートし、法廷電子提出準備アプリケーション１６４のAPIに準拠する一つまたは複数のメッセージを生成して法廷電子提出準備アプリケーション１６４に送信することによって、法廷電子提出準備アプリケーション１６４を呼び出す。メッセージは、ユーザー識別データおよび設定データを含んでいてもよい。メッセージは、たとえば一つまたは複数の代表状態（REST:  Representational  State）コールによって実装されてもよい。
段階５１４では、法廷電子提出準備アプリケーション１６４は、ユーザーによって指定された設定を使ってスキャン・データを処理して、結果を生成する。今の例では、これは、光学式文字認識を使ってスキャン・データをテキストに変換し、テキストをサイズ要件を満たすテキスト部分に分割することを含む。サイズ要件は、たとえば、電子提出のために法廷によって許容される最大サイズ制限またはページ制限であってもよい。この例では、テキスト部分は、法廷電子提出準備アプリケーション１６４によって実行される処理の結果を表わす。今の例では、法廷電子提出準備アプリケーション１６４は、それらのテキスト部分を設定データによって指定される一つまたは複数の電子メール宛先に送信することによって、最終的な処理を実行する。具体的な実装に依存して、他の型の最終的な処理が実行されてもよく、実施形態は最終結果を一つまたは複数の宛先にメールする例に限定されない。
【０１０１】
図６Ａは、二つの異なるクラウド環境を統合するための手法のもう一つの例を描くブロック図  ６００である。図４Ａと同様に、図１Ａの要素のいくつかは、単に説明の目的のため、図６Ａには描かれていない。図６Ａでは、本手法は、文書にベイツ・スタンプを加えるコンテキストで描かれている。このコンテキストでは、ベイツ・スタンプ付けアプリケーション１３４は、エンドユーザー装置１１０のユーザーへのユーザー・インターフェースおよびSIクラウド１５０におけるベイツ・スタンプ付けアプリケーション１６２へのアクセスを提供する。
【０１０２】
図６Ｂは、ユーザーが作業フローを作成できるようにする作業フロー・ツールのユーザー・インターフェース画面６２０である。ユーザー・インターフェース画面は、SIクラウド・コンポーネント１７０を使ってベイツ・スタンプ付けアプリケーション１６２によって実装される作業フローにおいて実行される諸現在段階を描いている。この例では、作業フローは、PDF変換を使って画像データをテキスト・データに変換し、該テキストにベイツ・スタンプを加え、該テキスト・データをそれぞれサイズ要件を満たすテキスト部分に分割し、該テキスト部分を一つまたは複数の宛先に電子メールで送信することを含む。図４Ｂの先の例と同様に、ユーザー・インターフェース・コントロールが、ユーザーが、作業フローにおける各機能に対応するユーザー・インターフェース・オブジェクトを選択、ドラッグおよびドロップすることによって、作業フローにおいて段階を追加、削除および並べ替えすることを許容する。ユーザーは、作業フローにおける各機能によって使用されるデフォルト・パラメータを指定してもよい。
【０１０３】
図７は、文書にベイツ・スタンプを加えるコンテキストにおいて、二つの異なるクラウド環境を統合するための手法を描く流れ図  ７００である。段階７０２では、エンドユーザー装置１１０のユーザーは、ICEクライアント・アプリケーション１１２またはウェブ・ブラウザー１１４を介してICEクラウド１２０におけるベイツ・スタンプ付けアプリケーション１３４にアクセスする。たとえば、ユーザーは、ICEクライアント・アプリケーション１１２の実行を開始してもよく、あるいはウェブ・ブラウザー１１４に、ベイツ・スタンプ付けアプリケーション１３４に関連付けられたURLにアクセスするよう命令してもよい。これは、ユーザーがたとえばドロップダウンメニューからユーザーを選択することによって自らを同定し、認証を完了することを含んでいてもよい。図５の段階５０２に関して先述したのと同様である。
【０１０４】
段階７０４では、ベイツ・スタンプ付けアプリケーション１３４は、たとえば一つまたは複数のウェブ・ページを介してユーザー・インターフェースを提供する。ユーザーがベイツ・スタンプ付けアプリケーション１３４にアクセスするためにICEクライアント・アプリケーション１１２を使う代替では、ICEクライアント・アプリケーション１１２がユーザー・インターフェースを提供してもよい。図６Ｃおよび図６Ｄは、それぞれICEクライアント・アプリケーション１１２またはウェブ・ブラウザー１１４によって提供される例示的なユーザー・インターフェース画面６２０、６４０を描いている。ユーザー・インターフェース画面６２０は、ユーザーが、たとえば一つまたは複数の宛先電子メール・アドレスを指定することによる最終文書のための宛先、それぞれの最終文書の最大サイズを制限するために使われる分割サイズ、用紙サイズ、OCR、カラーおよび両面オプションを有効にするか否かおよびファイル名を指定できるようにする。ユーザー・インターフェース画面６２０を介して提供されるユーザー設定は、法廷電子提出準備アプリケーション１３６によって提供される図４Ｃのユーザー・インターフェース画面４２０によって提供されるユーザー設定と同じである。諸ICEクラウド・アプリケーション１３０を通じて共通のユーザー・インターフェースをもつことで、より好ましいユーザー経験が提供される。ユーザー・インターフェース画面６４０は、ユーザーが、プレフィックスおよびサフィックス、カウンター開始およびカウンター終了、ベイツ・スタンプの位置を指定する整列設定およびベイツ・スタンプのフォントを指定するフォント設定を含む、ベイツ・スタンプ付けに固有の設定を指定することを許容する。
【０１０５】
段階７０６では、ユーザーは、ベイツ・スタンプ付けアプリケーション１３４に提供され、最終的にベイツ・スタンプ付けアプリケーション１６２によってデータを処理するために使われる設定を指定する。該設定は、最終的な処理結果が送られるべき一つまたは複数の電子メール・アドレスを含んでいてもよい。
【０１０６】
段階７０８では、ユーザーが、たとえば図６Ｃにおいて＜Scan＞〔スキャン〕ボタンを選択することによって、プロセスを開始し、文書がスキャンされ、スキャン・データが生成される。本稿で先に述べたように、実施形態は、既存のソース・データ、たとえばエンドユーザー装置１１０に記憶されている以前にスキャンされたデータ、クラウド・データ・ストレージ・サービスのようなクラウド・サービスに記憶されているデータなどに適用可能である。
【０１０７】
段階７１０では、ユーザー識別データ、スキャン・データおよび設定がベイツ・スタンプ付けアプリケーション１３４に提供される。たとえば、ICEクライアント・アプリケーション１１２は、ユーザーID、スキャン・データもしくは該スキャン・データが記憶されている場所へのリンクおよびユーザーによって選択された設定を示す設定データを含むメッセージを、ベイツ・スタンプ付けアプリケーション１３４に送信してもよい。あるいはまた、ウェブ・ブラウザー１１４がユーザーID、スキャン・データおよび設定データをベイツ・スタンプ付けアプリケーション１３４に提供してもよい。
【０１０８】
段階７１２では、ベイツ・スタンプ付けアプリケーション１３４は、SIクラウド１５０におけるベイツ・スタンプ付けアプリケーション１６２を呼び出す。ある実施形態によれば、ベイツ・スタンプ付けアプリケーション１３４は、ベイツ・スタンプ付けアプリケーション１６２のAPIをサポートし、ベイツ・スタンプ付けアプリケーション１６２のAPIに準拠する一つまたは複数のメッセージを生成してベイツ・スタンプ付けアプリケーション１６２に送信する。メッセージは、ユーザー識別データおよび設定データを含んでいてもよい。メッセージは、たとえば一つまたは複数の代表状態（REST:  Representational  State）コールによって実装されてもよい。
【０１０９】
段階７１４では、ベイツ・スタンプ付けアプリケーション１６２は、ユーザーによって指定された設定を使ってスキャン・データを処理する。今の例では、これは、光学式文字認識を使ってスキャン・データをテキストに変換し、テキストにベイツ・スタンプを加え、テキストを指定されたページ制限を超えないテキスト部分に分割することを含む。今の例では、ベイツ・スタンプ付けアプリケーション１６２は、それらのテキスト部分を設定データによって指定される一つまたは複数の電子メール宛先に送信することによって、最終的な処理を実行する。ベイツ・スタンプは、それらのテキスト部分を同じテキスト文書に属するものとして同定するために、各テキスト部分に加えられてもよい。具体的な実装に依存して、他の型の最終的な処理が実行されてもよく、実施形態は最終結果を一つまたは複数の宛先にメールする例に限定されない。
【０１１０】
今述べた法廷電子提出準備およびベイツ・スタンプ付けの例では、それぞれのICEクラウド・アプリケーションはエンドユーザー・クライアント装置、すなわちエンドユーザー装置１１０のためのグラフィカル・ユーザー・インターフェースを提供する。ICEクラウド・アプリケーションは、対応するSIクラウド・アプリケーションのAPIを実装し、該SIクラウド・アプリケーションを呼び出す。SIクラウド・アプリケーションは、SIクラウド・コンポーネントのAPIを実装し、それらのSIクラウド・コンポーネントを呼び出して、SIクラウド・アプリケーションの作業フローを実装する。SIクラウド・アプリケーションは、作業フローにおける最後のSIクラウド・コンポーネントから処理結果を受信し、次いで、処理結果を一つまたは複数の電子メール宛先にメールするといった、最終処理があればそれを実行する。
【０１１１】
ｉｉ．サードパーティー・サービスのためのトークンを識別するためのマッピング・データの使用
【０１１２】
今述べた二つの例では、最終処理は結果を一つまたは複数の宛先にメールすることを含んでいる。宛先の電子メール・アドレスは、ICEクラウド・アプリケーション１３０がSIクラウド・アプリケーション１６０を呼び出すときに、たとえば一つまたは複数のRESTコールを介して、ICEクラウド・アプリケーション１３０によってSIクラウド・アプリケーション１６０に提供されてもよい。たとえば、法廷電子提出準備アプリケーション１３６およびベイツ・スタンプ付けアプリケーション１３４によって生成され、それぞれ法廷電子提出準備アプリケーション１６４およびベイツ・スタンプ付けアプリケーション１６２に送信される処理要求に含まれる設定データが、最終処理結果のための電子メール・アドレスを含んでいてもよい。
【０１１３】
SIクラウド・アプリケーションによって実行される処理が、トークンの使用を要求するサードパーティー・サービス１９０の使用を含む状況がありうる。たとえば、法廷電子提出準備アプリケーション１６４およびベイツ・スタンプ付けアプリケーション１６２によって生成された最終処理結果が、たとえばユーザーを認証するためにトークンの使用を要求するサードパーティー・サービス１９０に提供されることがある。トークンが特定のドメインに固有である状況については、ICEクラウド１２０のユーザーに発行されたトークンは、SIクラウド１５０がサードパーティー・サービス１９０にアクセスするためには使用可能でないことがあり、逆に、SIクラウド１５０のユーザーに発行されたトークンは、ICEクラウド１２０がサードパーティー・サービス１９０にアクセスするためには使用可能でないことがある。このように、たとえICEクラウド・アプリケーション１３０が、特定のSIクラウド・アプリケーション１６０を呼び出すために生成されてたとえば一つまたは複数のRESTコールを介して送信されたメッセージにトークンを含めていたとしても、受信するSIクラウド・アプリケーションは、そのトークンを使うことができないことがありうるのである。
【０１１４】
ある実施形態によれば、この問題は、ICEクラウド１２０におけるユーザーIDとSIクラウド１５０におけるユーザーIDの間の対応を指定するマッピング・データを使って対処される。のちにより詳細に述べるように、構成１００において新たなユーザーのプロビジョニングは、ICEクラウド１２０およびSIクラウド１５０の両方のためのユーザーIDを生成し、また、それらのユーザーIDの間の対応をマッピング・データにおいて確立することを含んでいてもよい。
【０１１５】
図１Ｄは、ICEクラウド・ユーザー・IDとSIクラウド・ユーザーIDの間の対応を指定する、テーブルの形のマッピング・データ１９２を描いている。たとえば、のちにより詳細に述べるプロビジョニング・プロセス後、ICEクラウド・ユーザーID「User1」がICEクラウド１２０において生成され、対応するSIクラウド・ユーザーID「X1」がSIクラウド１５０において生成される。これらのユーザーIDのそれぞれは、その対応する環境、すなわちICEクラウド１２０およびSIクラウド１５０において使われる。マッピング・データ１９２は、具体的な実装に依存して、追加的な情報を格納していてもよく、マッピング・データ１９２は図１Ｄに描かれる例に限定されない。マッピング・データ１９２は、プロビジョニング・プロセスの間に生成され、更新されてもよく、ICEクラウド１２０、SIクラウド１５０、別の位置、たとえばサーバーまたはそれらの任意の組み合わせにおいて維持されうる。一つの限定しない例として、マッピング・データ１９２は、ユーザー、認可およびトークン・データ１４４または１８８の一部として維持されてもよい。
【０１１６】
マッピング・データ１９２は、SIクラウド・アプリケーションが、ICEクラウド１２０におけるユーザーIDに対応するSIクラウド１５０におけるユーザーIDを決定することを許容する。それにより、SIクラウド１５０ドメインにおいて有効である適切なトークンが、サードパーティー・サービス１９０のために選択されることができる。
【０１１７】
たとえば、対応するユーザーID「User1」をもつエンドユーザー装置１１０のユーザーが、図６Ａ〜６Ｄおよび図７に関して本稿で先に述べたベイツ・スタンプ付けアプリケーション１３４を使って文書が処理されるが、先述したように最終処理結果がメールされるのではなく、最終処理結果がサードパーティー・サービス１９０に含まれるクラウド記憶サービスに送られることを要求するとする。ユーザーID「User1」は、ベイツ・スタンプ付けアプリケーション１３４がベイツ・スタンプ付けアプリケーション１６２を呼び出すときに、ベイツ・スタンプ付けアプリケーション１３４によって提供されてもよい。これはたとえば、ユーザー設定データに含まれるまたはRESTコールにおいて他の仕方で指定されることによる。さらに、クラウド・ストレージ・サービスがトークンの使用を要求し、この例でベイツ・スタンプ付けアプリケーション１３４であるSIクラウド・アプリケーションがICEクラウド１２０のトークンを使うことができないとする。通常の処理および最終処理結果の生成が完了すると、ベイツ・スタンプ付けアプリケーション１６２はマッピング・データ１９２を使って、SIクラウド１５０ユーザーID「X1」がICEクラウド１２０ユーザーID「User1」に対応することを判別する。次いで、ベイツ・スタンプ付けアプリケーション１６２はユーザー、認可およびトークン・データ１８８にアクセスして、クラウド・ストレージ・サービスのためのSIクラウド１５０ユーザーID「X1」のためのトークンを取り出す。次いで、ベイツ・スタンプ付けアプリケーション１６２は、クラウド・ストレージ・サービスのためのトークンを含む処理要求を生成して、クラウド・ストレージ・サービスに送信する。この手法は、ICEクラウド１２０ユーザーIDを知っているSIクラウド・アプリケーション１６０がSIクラウド１５０および特定のサードパーティー・サービスにおける対応するユーザーIDを判別し、次いでSIクラウド１５０における対応するユーザーIDについて有効なトークンを選択することを許容する。
【０１１８】
この統合手法では、エンドユーザー装置、すなわちエンドユーザー装置１１０は、どのSIクラウド・アプリケーションまたはSIクラウド・コンポーネントのAPIも実装する必要がない。さらに、本稿で論じられるウェブ・ブラウザー・ベースの実装では、エンドユーザー装置はICEクラウド・アプリケーションのAPIを実装する必要がない。さらに、エンドユーザー装置およびICEクラウド・アプリケーションは、サードパーティー・サービス１９０によって要求されるいかなるアクセスおよび認証情報も管理する必要がない。それはSIクラウド・アプリケーションによって管理されるからである。さらに、SIクラウド・アプリケーションは、SIクラウド・コンポーネント１７０によって要求されるあらゆるユーザー情報およびサードパーティー・サービス１９０によって要求されるトークンを管理する。
【０１１９】
Ｂ．統合の第２型：ICEクラウドによって管理される統合
【０１２０】
先の統合実施形態と同様に、ICEクラウド・アプリケーションはMFPのようなエンドユーザー装置と複数のSIクラウド・アプリケーションとの間の仲介役としてはたらく。しかしながら、いったんICEクラウド・アプリケーションがSIクラウド・アプリケーションを呼び出したらあらゆるその後の処理はSIクラウド・アプリケーションによって扱われる上記の第一の統合手法とは異なり、この統合手法によれば、ICEクラウド・アプリケーションは複数のSIクラウド・アプリケーションおよびもしあればサードパーティー・サービスによる処理を管理する。
【０１２１】
ICEクラウド・アプリケーションは、ユーザーが、データを処理するためにSIクラウド・アプリケーションによって必要とされる設定を指定することを許容するユーザー・インターフェースを提供するとともに、SIクラウド・アプリケーションのAPIを実装する。ICEクラウド・アプリケーションはデータおよびユーザー指定の設定をSIクラウド・アプリケーションに提供する。SIクラウド・アプリケーションは、ユーザー指定された設定を使って前記データを処理し、SIクラウド・アプリケーションがSIクラウド・コンポーネントを使う限りにおいて、SIクラウド・アプリケーションはSIクラウド・コンポーネントのAPIを実装し、ICEクラウド・アプリケーションおよびエンドユーザー装置のためにSIクラウド・コンポーネントとのあらゆる対話を扱う。ICEクラウド・アプリケーションは複数のSIクラウド・アプリケーションを使い、それぞれのSIクラウド・アプリケーションと個別に対話してもよい。これは、一つのSIクラウド・アプリケーションからの出力として処理結果を受領し、該処理結果を別のSIクラウド・アプリケーションへの入力として提供することを含む。ICEクラウド・アプリケーションは、サードパーティー・サービスによって要求されるアクセスおよび認証情報をも管理する。これはたとえば、サードパーティー・サービス１９０によって要求されるトークンを含んでいてもよい。サードパーティー・サービスによって要求されるアクセスおよび認証情報をICEクラウド１２０において維持することは、サードパーティー・サービスをサポートするためにSIクラウド１５０を修正する必要を回避する。
【０１２２】
図８Ａは、ある実施形態に基づく、二つの異なるクラウド環境を統合するための構成８００を描くブロック図である。図１Ａの要素のいくつかは、単に説明の目的のため、図８Ａには描かれていない。
【０１２３】
図８Ａの構成８００では、ICEクラウド・アプリケーションはデータ・ストレージ・アプリケーション１３８である。該データ・ストレージ・アプリケーション１３８は任意的に、光学式文字認識を使って画像データをテキストに変換し、データに三つの異なる型のスタンプ／マークを加え、次いでスタンプ付け／マーク付けされたデータをサードパーティーのクラウド・ストレージ・サービスにおいて記憶する。この例では、三つの異なる型のスタンプ／マークは、ベイツ・スタンプ、タイムスタンプおよび透かし〔ウォーターマーク〕を含み、ベイツ・スタンプ・アプリケーション、タイムスタンプ・アプリケーションおよび透かしアプリケーションを含む三つの別個のSIクラウド・アプリケーション１６０によって実装され、三つの異なる作業フローを表わす。ベイツ・スタンプがデータに加えられ、タイムスタンプ、最後に透かしがこれに続く。こうして、ベイツ・スタンプ・アプリケーション、タイムスタンプ・アプリケーションおよび透かしアプリケーションはそれぞれ、データ・ストレージ・アプリケーション１３８の作業フローの一部を実装する。データ・ストレージ・アプリケーション１３８は、ベイツ・スタンプ・アプリケーション、タイムスタンプ・アプリケーションおよび透かしアプリケーションのAPIを実装し、データを処理するためにそれらの各アプリケーションを別個に呼び出す。透かしアプリケーションから処理結果を受信した後、データ・ストレージ・アプリケーション１３８は結果をサードパーティー・サービス１９０に提供する。
【０１２４】
データ・ストレージ・アプリケーション１３８は、エンドユーザー装置１１０のユーザーにユーザー・インターフェースを提供し、SIクラウド１５０およびサードパーティー・サービス１９０とのあらゆる対話を扱う。データ・ストレージ・アプリケーション１３８は任意的に、画像データをテキスト・データに変換する内部のOCRコンポーネントを使ってエンドユーザー装置１１０から受領された画像データを処理する。しかしながら、実施形態はこの例に限定されず、データ・ストレージ・アプリケーション１３８は他のところで、たとえばSIクラウド・アプリケーション１６０におけるOCRアプリケーションを介してOCR機能を呼び出してもよい。データ・ストレージ・アプリケーション１３８は、透かしアプリケーションから受領された結果を一つまたは複数のサードパーティー・サービス１９０に提供する。今の例では、サードパーティー・サービス１９０はBox、Dropbox、Google  Drive、Apple  iCloud  Drive、Microsoft  OneDriveなどといったクラウド・ストレージ・サービスを含み、スタンプを含む結果として得られるデータはクラウド・ストレージ・サービスに記憶される。
【０１２５】
図８Ｂ〜８Ｄは、それぞれベイツ・スタンプ・アプリケーション、タイムスタンプ・アプリケーションおよび透かしアプリケーションによって実行される、ベイツ・スタンプ付け、タイムスタンプ付けおよび透かし入れを含む三つの異なるスタンプ付け／マーク付け作業フローを描いているブロック図である。
【０１２６】
図９は、データにマークを加え、次いでマーク付けされたデータをクラウド・ストレージに記憶するコンテキストにおいて、二つの異なるクラウド環境を統合するための手法を描く流れ図  ９００である。段階９０２では、エンドユーザー装置１１０のユーザーは、本稿で先に述べたように、ICEクライアント・アプリケーション１１２またはウェブ・ブラウザー１１４を介してICEクラウド１２０におけるデータ・ストレージ・アプリケーション１３８にアクセスする。先の例のように、これは、ユーザーがたとえばドロップダウンメニューからユーザーを選択することによって自らを同定すること、たとえばエンドユーザー装置１１０に付随するスキャナーを介して身分証カードをスキャンして認証を完了すること、ユーザーIDおよびパスワードのようなユーザー・クレデンシャルを入力することなどを含んでいてもよい。ユーザー・クレデンシャルの検証は、エンドユーザー装置１１０上でローカルになされてもよく、あるいはユーザー検証サービス、ICEクラウド・マネージャ１２２、ICEクラウド・アプリケーション１３０などといったリモート・サービスに関わってもよい。
【０１２７】
段階９０４では、データ・ストレージ・アプリケーション１３８は、本稿で先に述べたユーザー・インターフェースを提供する。図８Ｅ〜８Ｉは、データ・ストレージ・アプリケーション１３８によって提供されるサービスに関するユーザー設定を指定するためのICEクライアント・アプリケーション１１２またはウェブ・ブラウザー１１４によって提供される例示的なユーザー・インターフェース画面を描いている。図８Ｅは、ユーザーが、最終文書のための宛先、スタンプ型、出力フォーマット、用紙サイズ、OCR、カラーおよび両面オプションを有効にするか否かおよびファイル名を指定できるようにするユーザー・インターフェース画面を描いている。図８Ｆは、ユーザーが、データに加えられるスタンプの型を指定できるようにするユーザー・インターフェース画面を描いている。利用可能な選択はタイムスタンプ、ベイツ・スタンプおよび透かしであるが、実施形態はこれらの例に限定されず、他の型のスタンプ／マークが使われてもよい。さらに、複数のスタンプおよびマークが選択されてもよい。図８Ｇは、ユーザーが、標準時ゾーン、垂直方向位置および水平方向位置およびフォント設定を含む高度なタイムスタンプ設定を指定できるようにするユーザー・インターフェース画面を描く。図８Ｈは、ユーザーが、高度なベイツ・スタンプ設定を指定できるようにするユーザー・インターフェース画面を描く。図８Ｉは、ユーザーが、高度な透かし設定を指定できるようにするユーザー・インターフェース画面を描く。
【０１２８】
段階９０６では、ユーザーは、データ・ストレージ・アプリケーション１３８に提供され、最終的にデータ・ストレージ・アプリケーション１３８およびSIクラウド・アプリケーション１６０によってデータを処理するために使われる設定を指定する。
【０１２９】
段階９０８では、ユーザーが、たとえば図８Ｅにおいて＜Scan＞〔スキャン〕ボタンを選択することによって、データ・ストレージ・アプリケーション１３８による処理を開始する。＜Scan＞ボタンのユーザー選択に応答して、文書がスキャンされ、スキャン・データが生成される。
【０１３０】
段階９１０では、スキャン・データおよび設定がデータ・ストレージ・アプリケーション１３８に提供される。たとえば、ICEクライアント・アプリケーション１１２は、スキャン・データもしくは該スキャン・データが記憶されている場所へのリンクおよびユーザーによって選択された設定を示す設定データを含むメッセージを、データ・ストレージ・アプリケーション１３８に送信してもよい。あるいはまた、ウェブ・ブラウザー１１４が、スキャン・データおよび設定データをデータ・ストレージ・アプリケーション１３８に提供してもよい。
【０１３１】
段階９１２では、データ・ストレージ・アプリケーション１３８は、ユーザーによって指定された設定に基づいて、SIクラウド１５０におけるスタンプ付けまたはマーク付けアプリケーションを呼び出す。これはたとえば、図８Ａに描かれたベイツ・スタンプ・アプリケーション、タイムスタンプ・アプリケーションおよび／または透かしアプリケーションを含んでいてもよい。データ・ストレージ・アプリケーション１３８は、要求を生成し、これらのアプリケーションのうちの一つに送信する。要求は、該要求において指定されているデータに対応するスタンプまたは透かし〔ウォーターマーク〕を加える要求である。要求は、前記データまたは前記データへのリンクを含んでいてもよい。要求は、たとえば一つまたは複数のRESTコールによって実装されてもよい。
【０１３２】
段階９１４では、SIクラウド・アプリケーション、たとえばベイツ・スタンプ・アプリケーション、タイムスタンプ・アプリケーションおよび／または透かしアプリケーションは、データにスタンプまたはマークを加えて、スタンプ付け／マーク付けされたデータをデータ・ストレージ・アプリケーション１３８に返す。
【０１３３】
段階９１２および９１４は、任意の数のスタンプ付け／マーク付けアプリケーションについて何度か繰り返されてもよい。今の例では、データ・ストレージ・アプリケーション１３８はまずベイツ・スタンプ・アプリケーションを使ってデータにベイツ・スタンプを加える。これは、データ・ストレージ・アプリケーション１３８がデータにベイツ・スタンプを加える要求を生成して、ベイツ・スタンプ・アプリケーションに送信することを含んでいてもよい。要求は、ベイツ・スタンプ・アプリケーションのAPIに準拠し、ベイツ・スタンプのためのユーザー設定、たとえば図８Ｈに描かれるユーザー設定を指定する設定データを含む。ベイツ・スタンプ・アプリケーションは要求を処理し、データにベイツ・スタンプを加える。ベイツ・スタンプ・アプリケーションは、次いで、処理されたデータをデータ・ストレージ・アプリケーション１３８に返す。
【０１３４】
データ・ストレージ・アプリケーション１３８はベイツ・スタンプ・アプリケーションから結果を受信し、データにタイムスタンプを加える要求を生成して、タイムスタンプ・アプリケーションに送信する。要求は、タイムスタンプ・アプリケーションのAPIに準拠し、タイムスタンプのためのユーザー設定、たとえば図８Ｇに描かれるユーザー設定を指定する設定データを含む。APIはアプリケーションによって異なっていてもよく、データ・ストレージ・アプリケーション１３８は、使用される各アプリケーションのAPIを満たす要求を準備することを扱う。かかる準備は、データを、使用されるべき次のアプリケーションによって要求される異なるフォーマットに整形することを含んでいてもよい。タイムスタンプ・アプリケーションは要求を処理し、データにタイムスタンプを加える。タイムスタンプ・アプリケーションは、次いで、データをデータ・ストレージ・アプリケーション１３８に返す。
【０１３５】
タイムスタンプ・アプリケーションから処理されたデータを受信した後、データ・ストレージ・アプリケーション１３８はスタンプ付け／マーク付けされたデータを一つまたは複数のサードパーティー・サービス１９０に処理のために提供する。たとえば、データ・ストレージ・アプリケーション１３８はスタンプ付け／マーク付けされたデータをクラウド・ストレージ・サービスに提供してもよい。これは、記憶されたデータの完全性（integrity）を維持する要求を満たすために有用でありうる。これは、データ・ストレージ・アプリケーション１３８が、サードパーティー・サービス１９０のAPIに準拠する一つまたは複数の要求を生成し、送信することを含んでいてもよい。ある実施形態によれば、データ・ストレージ・アプリケーション１３８は、サードパーティー・サービス１９０によって要求されるアクセスおよび認証情報があればそれを管理する。これはたとえば、サードパーティー・サービス１９０を使うために要求される、アクセスおよびリフレッシュ・トークンのようなトークンを含んでいてもよい。たとえば、データ・ストレージ・アプリケーション１３８は、ユーザー、認可およびトークン・データ１４４から有効なトークンを取得し、クラウド記憶サービスにトークンを提供するためにユーザーIDを使う。
【０１３６】
このように、この統合手法では、エンドユーザー装置、すなわちエンドユーザー装置１１０は、どのSIクラウド・アプリケーションまたはSIクラウド・コンポーネントのAPIも実装する必要がない。さらに、本稿で論じられるウェブ・ブラウザー・ベースの実装では、エンドユーザー装置は、データ・ストレージ・アプリケーション１３８のAPIを実装する必要がない。エンドユーザー装置は、サードパーティー・アプリケーション１９０によって要求されるアクセスおよび認証情報があったとしてもそれを管理する必要がない。これは、データ・ストレージ・アプリケーション１３８によって管理されるからである。
【０１３７】
Ｃ．統合の第３型：コンフリクト検査のあるICEクラウドによって管理される統合
【０１３８】
本稿で先に述べた第２型統合の手法では、ICEクラウド・アプリケーションは、作業フローの各段階において、それぞれのSIクラウド・アプリケーションと直接対話し、それぞれのSIクラウド・アプリケーションから処理結果を受信する。よって、ICEクラウド・アプリケーションは、作業フローにおける各段階が実行された後、作業フローにおけるその後の段階を実行する前に、作業フローにおける各段階の結果を評価することができる。これにより、あるSIクラウド・アプリケーションから受領された処理結果を、別のSIクラウド・アプリケーションへの入力として使われるよう準備するための必要な処理があれば、ICEクラウド・アプリケーションは自分でそれを実行できる。各SIクラウド・アプリケーションは一般に、一つまたは二つの段階のみをもつ単純な作業フローを実行するので、ICEクラウド・アプリケーションは、コンフリクトを避けるために、作業フローにおける各段階において、データを適正に管理することができる。
【０１３９】
しかしながら、いくつかの状況では、ある種のSIクラウド・アプリケーションによって実装される作業フローまたは作業フローの諸部分は、多数の段階を含み、より複雑である。たとえば、のちにより詳細に述べるように、特定のSIクラウド・アプリケーションは二つ以上のスタンプまたはマークを、エンドユーザー装置から受領されたデータに加えてもよく、それらのスタンプまたはマークは、少なくとも部分的に重なり合って、該スタンプまたはマークによって提供される情報の一部または全部をはっきりしないようにする位置にされることがある。一つの例は、透かしがベイツ・スタンプに重ねて加えられて、ベイツ番号の一部を隠蔽するというものである。
【０１４０】
SIクラウドおよびICEクラウドを統合するためのもう一つの実施形態によれば、作業フローを実装するために複数のSIクラウド・コンポーネントを使う、より複雑なSIクラウド・アプリケーションにおいて潜在的なコンフリクトを避けるために、コンフリクト検査が実行される。図１０Ａは、ある実施形態に基づく、コンフリクト検査を使う、二つの異なるクラウド環境を統合するための構成１０００を描くブロック図である。図１Ａの要素のいくつかは、単に説明の目的のため、図１０Ａには描かれていない。図１０Ａに描かれる手法は、データ・ストレージ・アプリケーション１３８が、エンドユーザー装置１１０から受信したデータを、ベイツ・スタンプ付け、タイムスタンプ付けおよび透かし入れによって処理させるという点で、図８Ａに描かれた手法と同様である。しかしながら、スタンプ付けおよびマーク付けを実行するために三つの別個のSIクラウド・アプリケーション１６０を呼び出す代わりに、データ・ストレージ・アプリケーション１３８は、スタンプ付けおよびマーク付けを実行するために、単一のSIクラウド・アプリケーション１６０、つまりスタンプ付け／マーク付けアプリケーション１６６を呼び出す。図１０Ｂは、スタンプ付け／マーク付けアプリケーション１６６によって実装されるスタンプ付け／マーク付け作業フローを描くブロック図である。スタンプ付け／マーク付け作業フローは、ベイツ・スタンプ付け、タイムスタンプ付けおよび透かし入れ〔ウォーターマーク付け〕を含む。図１０Ａに描かれるように、スタンプ付け／マーク付けは、それぞれスタンプ付け／マーク付けアプリケーション１６６によって呼び出される、三つのSIクラウド・コンポーネント１７０、つまりベイツ・スタンプ付け１７６コンポーネント、タイムスタンプ付け１７８コンポーネントおよび透かし１８０コンポーネントによって実行される。データ・ストレージ・アプリケーション１３８は、スタンプ付け／マーク付けアプリケーション１６６によって実行される処理の最終結果を受信し、サードパーティー・サービス１９０によるその後の処理を直接管理する。
【０１４１】
ある実施形態によれば、潜在的なコンフリクトに対処するために、SIクラウド１５０によって実行された処理との潜在的なコンフリクトを回避するようコンフリクト検査が実行される。コンフリクト検査は、具体的な実装に依存して変わりうる種々の仕方で実装されうる。ある実施形態によれば、コンフリクト検査は、エンドユーザー装置１１０のユーザーによって指定されたユーザー設定に対して実行される。これはたとえば、エンドユーザー装置１１０のユーザーによって指定された設定を解析して、文書データに加えられようとしている何らかの型のデータが少なくとも部分的に重なり合うかどうかを判定することを含んでいてもよい。データは、いかなる型のデータを含んでいてもよく、実施形態は、コンフリクト検査について、いかなる型のデータにも限定されない。データの例は、限定なしに、テキスト・データ、スタンプ、たとえばタイムスタンプ、ベイツ・スタンプ、他のスタンプなど、マーク、たとえば透かし〔ウォーターマーク〕など、コード、たとえばバーコード、QRコード（登録商標）、署名などならびに画像データを含む。たとえば、データ・ストレージ・アプリケーション１３８は、加えられようとしている二つのデータ項目の位置が距離基準を満たすかどうかを判定してもよい。距離基準は、スタンプまたはマークの間に重なりがないことを保証するためのデータ項目間の最小距離を指定してもよい。二つのデータ項目の位置の間の差が距離基準未満であるとき、コンフリクトが存在する。距離基準は、データ項目の型および／またはサイズに依存して変わりうる。たとえば、スタンプまたはマークのようなある種の型のデータ項目は、少なくともある指定された距離離れていることが要求されてもよい。もう一つの例として、スタンプまたはマークのようなある種の型のデータ項目は、文書の別個のエリアに、たとえば文書の反対の側またはコーナーにあることが要求されてもよい。たとえば、ユーザーが文書にベイツ・スタンプおよび透かしの両方を加えることを選択する場合、ベイツ・スタンプおよび透かしは、文書の反対のコーナーに位置することが要求されてもよい。
【０１４２】
コンフリクト検査は、ICEアプリケーション、たとえばデータ・ストレージ・アプリケーション１３８によって、エンドユーザー装置１１０から設定データが受信された後だがデータ・ストレージ・アプリケーション１３８がスタンプ付け／マーク付けアプリケーション１６６を呼び出す前に、実行されてもよい。コンフリクトを識別することに応答して、データ・ストレージ・アプリケーション１３８は種々のアクションを実行しうる。データ・ストレージ・アプリケーション１３８は、検出されたコンフリクトを、たとえばスタンプまたはマークの位置を変更することによって、自分で解決してもよい。たとえば、二つのマークが文書の右上コーナーのために指定されており重なり合うとする。データ・ストレージ・アプリケーション１３８はそれらのマークの一方の位置を文書の左下コーナーに変更して、二つのマークが重なり合わないようにしてもよい。データ・ストレージ・アプリケーション１３８は、エンドユーザー装置１１０で表示されるユーザー・インターフェース上に表示される一つまたは複数のメッセージを生成して送信してもよい。メッセージは、コンフリクトを同定して、たとえばスタンプまたはマークの位置を変更することによってコンフリクトを解消するようユーザーに尋ねてもよい。ユーザーが設定を変更した後、修正された設定データがデータ・ストレージ・アプリケーション１３８に送信され、コンフリクトがあるかどうか再試験される。このプロセスは、すべてのコンフリクトが解決されるまで繰り返されてもよい。
【０１４３】
コンフリクト検査はデータ・ストレージ・アプリケーション１３８によって供給されるユーザー・インターフェースによってエンドユーザー１１０において実行されてもよい。たとえば、データ・ストレージ・アプリケーション１３８によってエンドユーザー装置１１０に提供されるユーザー・インターフェースは、コンフリクト検査を実行する論理を含んでいてもよい。ウェブ・ベースのユーザー・インターフェースのコンテキストでは、論理はたとえば、一つまたは複数のスクリプトによって実装されてもよい。
【０１４４】
図１１は、コンフリクト検査を使う、二つの異なるクラウド環境を統合するための手法を描く流れ図  １１００である。流れ図  １１００によって描かれる手法は、データにマークを加え、次いでマークされたデータをクラウド・ストレージに記憶することを背景としている。段階１１０２では、本稿で先に述べたように、エンドユーザー装置１１０のユーザーは、ICEクライアント・アプリケーション１１２またはウェブ・ブラウザー１１４を介してICEクラウド１２０におけるデータ・ストレージ・アプリケーション１３８にアクセスする。これは、ユーザーが、たとえばドロップダウンメニューからユーザーを選択することによって自らを同定すること、たとえばエンドユーザー装置１１０に付随するスキャナーを介して身分証カードをスキャンして認証を完了すること、ユーザーIDおよびパスワードのようなユーザー・クレデンシャルを入力することなどを含んでいてもよい。ユーザー・クレデンシャルの検証は、エンドユーザー装置１１０上でローカルになされてもよく、あるいはユーザー検証サービス、ICEクラウド・マネージャ１２２、ICEクラウド・アプリケーション１３０などといったリモート・サービスに関わってもよい。
【０１４５】
段階１１０４では、データ・ストレージ・アプリケーション１３８は、本稿で先に述べたようにユーザー・インターフェースを提供する。図８Ｅ〜図８Ｉは、データ・ストレージ・アプリケーション１３８によって提供されるサービスに関するユーザー設定を指定するための、ICEクライアント・アプリケーション１１２またはウェブ・ブラウザー１１４によって提供される例示的ユーザー・インターフェース画面を描いている。図８Ｅのユーザー・インターフェース画面は、ユーザーが、最終文書のための宛先、スタンプ型、出力フォーマット、用紙サイズ、OCR、カラーおよび両面オプションを有効にするか否かおよびファイル名を指定できるようにする。図８Ｆのユーザー・インターフェース画面は、ユーザーがデータに加えられるスタンプ付けの型を指定できるようにする。利用可能な選択肢は、タイムスタンプ、ベイツ・スタンプおよび透かしであるが、実施形態はこれらの例に限定されず、他の型のスタンプ／マークが使われてもよい。さらに、複数のスタンプおよびマークが選択されてもよい。図８Ｇのユーザー・インターフェースは、ユーザーが、標準時ゾーン、垂直方向位置および水平方向位置およびフォント設定を含む高度なタイムスタンプ設定を指定できるようにする。図８Ｈのユーザー・インターフェースは、ユーザーが高度なベイツ・スタンプ設定を指定できるようにする。図８Ｉのユーザー・インターフェースは、ユーザーが高度な透かし設定を指定できるようにする。
【０１４６】
段階１１０６では、ユーザーは、データ・ストレージ・アプリケーション１３８に提供され、最終的にデータ・ストレージ・アプリケーション１３８およびSIクラウド・アプリケーション１６０によってデータを処理するために使われる設定を指定する。ユーザーが設定を指定した後、ユーザー・インターフェースによって、ユーザー指定された設定に対して、コンフリクト検査が実行されてもよい。たとえば、エンドユーザー装置１１０に提供されたユーザー・インターフェースにおいて実装される論理が、設定データを解析して、コンフリクトがあればそれを検出してもよい。コンフリクトが検出される場合、ユーザー・インターフェースはユーザーに通知し、ユーザーにコンフリクトを解消するよう求める。あるいはまた、コンフリクト検査は、データ・ストレージ・アプリケーション１３８によって段階１１１０において実行されてもよい。
【０１４７】
段階１１０８では、ひとたびコンフリクトが解決されたら、ユーザーが、たとえば図８Ｅにおいて＜Scan＞〔スキャン〕ボタンを選択することによって、データ・ストレージ・アプリケーション１３８による処理を開始する。＜Scan＞〔スキャン〕ボタンのユーザー選択に応答して、文書がスキャンされ、スキャン・データが生成される。
【０１４８】
段階１１１０では、ユーザー識別データ、スキャン・データおよび設定がデータ・ストレージ・アプリケーション１３８に提供される。たとえば、ICEクライアント・アプリケーション１１２は、スキャン・データもしくは該スキャン・データが記憶されている場所へのリンクおよびユーザーによって選択された設定を示す設定データを含むメッセージを、データ・ストレージ・アプリケーション１３８に送信してもよい。あるいはまた、ウェブ・ブラウザー１１４がスキャン・データおよび設定データをデータ・ストレージ・アプリケーション１３８に提供してもよい。データ・ストレージ・アプリケーション１３８は任意的に、本稿で先に述べたように、ユーザー設定に基づいてコンフリクト検査を、もし段階１１０６でユーザー・インターフェースによって実装される論理によってすでに実行されているのでなければ、実行してもよい。
【０１４９】
段階１１１２では、データ・ストレージ・アプリケーション１３８は、SIクラウド１５０におけるスタンプ付け／マーク付けアプリケーション１６６を呼び出し、設定データをスタンプ付け／マーク付けアプリケーション１６６に提供する。これはたとえば、データ・ストレージ・アプリケーション１３８が、一つまたは複数のRESTコールをスタンプ付け／マーク付けアプリケーション１６６に対して行なうことによって実行されてもよい。
【０１５０】
段階１１１４では、スタンプ付け／マーク付けアプリケーション１６６は、ベイツ・スタンプ付け１７６コンポーネント、タイムスタンプ付け１７８コンポーネントおよび透かし１８０コンポーネントを使ってデータにベイツ・スタンプ、タイムスタンプおよび透かしを加え、スタンプ付け／マーク付けされたデータをデータ・ストレージ・アプリケーション１３８に返す。本稿で先に述べたように、スタンプ付け／マーク付けアプリケーション１６６は、ベイツ・スタンプ付け１７６コンポーネント、タイムスタンプ付け１７８コンポーネントおよび透かし１８０コンポーネントのAPIをサポートする。
【０１５１】
タイムスタンプ・アプリケーションから処理されたデータを受信した後、段階１１１６において、データ・ストレージ・アプリケーション１３８はスタンプ付け／マーク付けされたデータを一つまたは複数のサードパーティー・サービス１９０に処理のために提供する。たとえば、データ・ストレージ・アプリケーション１３８はスタンプ付け／マーク付けされたデータをクラウド・ストレージ・サービスに提供してもよい。これは、記憶されたデータの完全性（integrity）を維持する要求を満たすために有用でありうる。これは、データ・ストレージ・アプリケーション１３８が、サードパーティー・サービス１９０のAPIに準拠する一つまたは複数の要求を生成し、送信することを含んでいてもよい。ある実施形態によれば、データ・ストレージ・アプリケーション１３８は、サードパーティー・サービス１９０によって要求されるアクセスおよび認証情報があればそれを管理する。これはたとえば、サードパーティー・サービス１９０への有効なトークンを提供することを含んでいてもよい。
【０１５２】
Ｄ．統合の第４型：直接リンク
【０１５３】
もう一つの実施形態によれば、SIクラウドおよびICEクラウドは直接リンクを使って統合される。すなわち、エンドユーザー装置をSIクラウド１５０に直接的にリンクする。この手法によれば、ICEクラウド・マネージャ１２２または諸ICEクラウド・アプリケーション１３０のうちの一つのようなICEクラウド・アプリケーションがエンドユーザー装置のためのユーザー・インターフェースを提供する。ユーザー・インターフェースは、SIクラウド１５０への埋め込まれたリンクをもつ、アイコン、サムネイル画像、シンボルなどといったユーザー・インターフェース・オブジェクトを含む。埋め込まれたリンクはたとえば、SIクラウド・マネージャ１５２またはSIクラウド・アプリケーション１６０の一つをポイントしてもよい。エンドユーザー装置のユーザーは、該ユーザー・インターフェース・オブジェクトを選択して、エンドユーザー装置を、SIクラウド１５０と、より特定的にはたとえばSIクラウド・マネージャ１５２またはSIクラウド・アプリケーション１６０のうちの一つと直接的に接続する。
【０１５４】
ICEクラウド・アプリケーションによってエンドユーザー装置に提供されるユーザー・インターフェースは、たとえばウェブ・ベースのユーザー・インターフェースによって実装されてもよい。図１２Ａは、さまざまなクラウド・サービスについてのアイコン、特にICEクラウド・アプリケーション１３０についてのアイコンを表示するエンドユーザー装置のための例示的なユーザー・インターフェース画面１２００である。たとえば、ユーザー・インターフェース画面１２００は、ベイツ・スタンプ付けアプリケーション１３４、法廷電子提出準備アプリケーション１３６、データ・ストレージ・アプリケーション１３８などに対応するアイコンを含んでいる。これらのアイコンのそれぞれは、対応するICEクラウド・アプリケーション１３０をポイントするリンクを含んでおり、リンクを選択すると、対応するICEクラウド・アプリケーション１３０が呼び出される。あるいはまた、リンクはICEクラウド・マネージャ１２２をポイントしていて、リンクを選択するとICEクラウド・マネージャ１２２が呼び出されて、該ICEクラウド・マネージャ１２２が、たとえば対応するICEクラウド・アプリケーション１３０を同定する要求に含まれる情報に基づいて、対応するICEクラウド・アプリケーションを呼び出すのでもよい。
【０１５５】
ユーザー・インターフェース画面１２００は、SIクラウド１５０へのアクセスを提供する。ある実施形態によれば、ユーザー・インターフェース画面１２００は、SIクラウド・マネージャ１５２に対応する特定のアイコン１２０２を含む。特定のアイコン１２０２は、SIクラウド・マネージャ１５２をポイントする埋め込まれたURLを有する。埋め込まれたリンクを選択すると、ウェブ・ページの要求が生成されて、SIクラウド・マネージャ１５２に送信される。要求は、エンドユーザー装置のユーザーを有効確認するためにSIクラウド・マネージャ１５２が使う情報を含んでいる。要求に含まれる情報の型は、具体的な実装に依存して変化してもよく、実施形態はいかなる特定の型の情報にも限定されない。情報の例は、限定なしに、エンドユーザー装置のユーザーのユーザーID、エンドユーザー装置を一意的に同定する装置識別情報、たとえばシリアル番号、MACアドレスなど、一つまたは複数のトークンまたはユーザーID、装置識別データおよびトークンの任意の組み合わせを含む。情報は、ローカル・キャッシュのようなエンドユーザー装置のローカル記憶に記憶されてもよい。この例では、一つまたは複数のトークンは、アクセスを認可するためにSIクラウド・マネージャ１５２によって使われるので、SIクラウド・マネージャ１５２に固有である。
【０１５６】
前記情報は、一つまたは複数のURLパラメータ、クエリー文字列、クッキーなどを介して、任意の既知の技法を使って、SIクラウド・マネージャ１５２に提供されてもよい。SIクラウド・マネージャ１５２は、前記情報を受信し、ユーザーがエンドユーザー装置から直接SIクラウド・マネージャ１５２にアクセスすることを認可されていることを保証するために、前記情報を検証する。SIクラウド・マネージャ１５２は、ユーザー、装置およびトークンが現在有効であることを保証するために、受領された情報を、SIクラウド・データ１８４に含まれている情報と比較することによって、前記情報を検証してもよい。たとえば、エンドユーザー装置１１０からユーザーID、装置IDおよびトークンを含む情報を受信すると、SIクラウド・マネージャ１５２は、SIクラウド・データ１８４におけるユーザー、認可およびトークン・データ１８８が、同じユーザーID、装置IDおよびトークンをもつエントリーを含んでいるかどうかおよびもし含んでいれば該トークンが現在有効であるかどうかを判定する。
【０１５７】
ユーザーが検証された後、SIクラウド・マネージャ１５２は、ユーザーに、SIクラウド・マネージャ１５２を介したSIクラウド１５０作業フローへのアクセスを含め、SIクラウド機能へのアクセスを承認する。図１２Ｂは、二つのSIクラウド１５０作業フローについてのアイコンを表示するエンドユーザー装置のための例示的なユーザー・インターフェース画面１２２０を描くブロック図である。この例では、二つのSIクラウド１５０作業フローは、SIクラウド・アプリケーション１６０によって実装される。ユーザーは、対応する作業フローについて設定情報を閲覧し、更新するためにアイコンを選択してもよい。図１２Ｃは、図１２Ｂに描かれている「Workflow  1」〔作業フロー１〕についての例示的なユーザー・インターフェース画面１２４０を描くブロック図である。ユーザー・インターフェース画面１２４０はユーザーがWorkflow  1について設定を閲覧し、更新することを許容する。更新された設定はSIクラウド１５０によって保存され、そのユーザーが次にWorkflow  1を呼び出すときにデフォルトとして使われる。これは、ユーザーが、単にエンドユーザー装置１１０に表示される「Start」〔開始〕アイコンを選択することによって、Workflow  1を任意の回数、簡単に繰り返し実行できるようにする。
【０１５８】
SIクラウド・マネージャ１５２への直接アクセスを提供するコンテキストで実施形態が記述されているが、実施形態はこの例に限定されず、本手法は、SIクラウド・アプリケーション１６０にアクセスするために使われてもよい。たとえば、ユーザー・インターフェース画面１２００（図１２Ａ）は、一つまたは複数のSIクラウド・アプリケーション１６０についてのアイコンを提供してもよい。ここで、各アイコンはSIクラウド・アプリケーション１６０の一つをポイントする。この例では、特定のSIクラウド・アプリケーションについての特定のアイコンを選択すると、エンドユーザー装置に記憶されている、その特定のSIクラウド・アプリケーションのための対応するトークンが、その特定のクラウド・アプリケーションに、認証のために送られる。認証は、リンクの選択によって呼び出されるその特定のSIクラウド・アプリケーションによって実行されてもよい。あるいはまた、SIクラウド・アプリケーションのためのアイコンがSIクラウド・マネージャ１５２への埋め込まれたリンクを含んでいてもよく、アイコンが選択されると、SIクラウド・マネージャ１５２に送られる要求が、ユーザーによって選択された該アイコンに対応するSIクラウド・アプリケーションを同定するデータを含む。SIクラウド・マネージャ１５２は、その情報を認証し、成功であれば、選択されたSIクラウド・アプリケーションのためのユーザー・インターフェースを提供するか、あるいは選択されたSIクラウド・アプリケーションに制御をリダイレクトする。
【０１５９】
図１３は、直接リンクを使ってSIクラウドおよびICEクラウドを統合するための手法を描く流れ図  １３００である。段階１３０２では、本稿で先に述べたように、エンドユーザー装置１１０のユーザーは、ICEクライアント・アプリケーション１１２またはウェブ・ブラウザー１１４を介してICEクラウド１２０にアクセスする。たとえば、ユーザー装置１１０のディスプレイが、図１２Ａのユーザー・インターフェース画面１２００を自動的に表示してもよく、あるいは、ユーザーがエンドユーザー装置１１０のディスプレイ上でユーザー・インターフェース・コントロールを選択することに応答して、ユーザー・インターフェース画面１２００が表示されてもよい。先の諸例と同様に、これは、ユーザーが、たとえばドロップダウンメニューからユーザーを選択することによって自らを同定すること、たとえばエンドユーザー装置１１０に付随するスキャナーを介して身分証カードをスキャンして認証を完了すること、ユーザーIDおよびパスワードのようなユーザー・クレデンシャルを入力することなどを含んでいてもよい。ユーザー・クレデンシャルの検証は、エンドユーザー装置１１０上でローカルになされてもよく、あるいはユーザー検証サービス、ICEクラウド・マネージャ１２２、ICEクラウド・アプリケーション１３０などといったリモート・サービスに関わってもよい。
【０１６０】
段階１３０４では、エンドユーザー装置がユーザー・インターフェースを表示する。たとえば、エンドユーザー装置１１０は、ICEクラウド・アプリケーション１３０に対応するアイコンを含む図１２Ａのユーザー・インターフェース画面１２００を表示する。ユーザー・インターフェース画面１２００は、SIクラウド・マネージャ１５２に対応する特定のアイコン１２０２をも含んでおり、SIクラウド・マネージャ１５２をポイントする埋め込まれたURLをもつ。
【０１６１】
段階１３０６では、ユーザーは、SIクラウド・アプリケーションのアイコンを選択する。たとえば、エンドユーザー装置１１０がタッチスクリーン・ディスプレイを含んでいるとして、ユーザーは、指またはスタイラスを使って、SIクラウド・マネージャ１５２に対応する特定のアイコン１２０２を選択してもよい。
【０１６２】
段階１３０８では、特定のアイコン１２０２の選択に応答して、特定のアイコン１２０２における埋め込まれたリンクに基づいて要求が生成され、SIクラウド・マネージャ１５２に送信される。本稿で先に述べたように、この要求は、ユーザーID、装置IDおよびトークンのような情報を含んでいてもよい。
【０１６３】
段階１３１０では、SIクラウド・アプリケーションは、要求に含まれていた情報を使って、エンドユーザー装置のユーザーを有効確認する。たとえば、SIクラウド・マネージャ１５２は、要求に含まれているまたは要求によって参照されているトークンが現在有効なトークンであるかどうかを、前記ユーザーID、装置IDおよびトークンを、ユーザー、認可およびトークン・データ１４４に含まれている情報と比較することによって判定することによって、ユーザーを確認する。
【０１６４】
段階１３１０においてユーザーが成功裏に確認された場合、段階１３１２において、ユーザー・インターフェースがエンドユーザー装置に提供される。たとえば、それぞれ図１２Ｂおよび図１２Ｃのユーザー・インターフェース画面１２２０および１２４０を提供するために、SIクラウド・マネージャ１５２は、一つまたは複数のウェブ・ページを生成して、エンドユーザー装置１１０に送信してもよい。段階１３１４では、エンドユーザー装置のユーザーは、SIクラウド・アプリケーションによって提供されるユーザー・インターフェースを介して、SIクラウド・アプリケーションの機能にアクセスする。たとえば、エンドユーザー装置１１０のユーザーは、それぞれ図１２Ｂおよび図１２Ｃのユーザー・インターフェース画面１２２０および１２４０を使って、SIクラウド・マネージャ１５２によって提供される機能にアクセスする、つまりWorkflow  1およびWorkflow  2にアクセスする。
【０１６５】
上述した手法は、ユーザーフレンドリーな仕方で、たとえばわずらわしく誤りのもとになりうるユーザーが手作業でセキュリティー情報を指定する必要なしに、SIクラウド１５０のセキュリティー要求を満たすエンドユーザー装置を介してSIクラウド１５０における機能への直接ユーザー・アクセスを提供する。他の統合手法と同様、本アプローチは、エンドユーザー装置上でSIクラウド１５０の特定のAPIを実装する必要を回避する。さらに、本手法は、SIクラウド・アプリケーション１６０の機能へのアクセスを提供するが、特定のエンドユーザー装置と一緒に機能するようSIクラウド・アプリケーション１６０を修正する必要なく、たとえばSIクラウド・アプリケーション１６０と一緒に動作するようICEクラウド・アプリケーション１３０を作成または修正することによってICEクラウド１２０において該機能を実装する必要もない。これは、SIクラウド・アプリケーション１６０によって提供される機能にアクセスするために一つまたは複数のICEクラウド・アプリケーション１３０の実行を回避することによって、計算および記憶資源をも削減する。
【０１６６】
ＩＶ．ユーザーおよび加入のプロビジョニング
【０１６７】
ICEクラウド１２０は、ユーザーおよび加入を生成するための機能を含んでおり、ある実施形態によれば、ICEクラウド１２０およびSIクラウド１５０の両方における対応するユーザーおよび加入の生成を自動的に扱う。これは、ライセンシング要求を満たすようICEクラウド１２０およびSIクラウド１５０の両方において諸装置を登録することをも含んでいてもよい。
【０１６８】
図１４Ａ〜図１４Ｅは、本稿で「ユーザー・プロビジョニング・ユーザー・インターフェース」とも称されるユーザー・インターフェース画面を描いている。これは、管理ユーザーがユーザーおよび加入をプロビジョニングすることを許容する。ある実施形態によれば、ユーザー・インターフェース画面は、ICEクラウド・マネージャ１２２によって生成される。ユーザー・インターフェース画面は、ウェブ・ベースのユーザー・インターフェースとして実装されてもよい、すなわち、ICEクラウド・マネージャ１２２によって生成されクライアント装置またはエンドユーザー装置１１０に送信される一つまたは複数のウェブ・ページによって実装されてもよい。図１４Ａ〜図１４Ｅのユーザー・インターフェース画面は、図２Ａの組織リスト画面における追加アイコン２０２のユーザー選択によってアクセスされる。図１４Ａ〜図１４Ｅに描かれる例では、各ユーザー・インターフェース画面は、図２Ａ〜図２Ｉと同様のユーザー・インターフェース上に表示されるタブを選択することによってアクセスされる。
【０１６９】
図１４Ａは、管理ユーザーが、図１４Ａにおいて「organization」〔組織〕と称される新たなユーザーを追加、すなわち生成することを許容するユーザー・インターフェース画面１４００を描いている。実施形態はここでは組織のコンテキストで記載されるが、実施形態は組織に限定されず、任意の型のユーザーに適用可能である。ユーザー・インターフェース画面１４００は、管理ユーザーが、組織ID、名前、消費者の型、たとえば加入者、説明および住所情報を含む、該新たな組織のためのさまざまな情報を指定することを許容する。
【０１７０】
図１４Ｂは、管理ユーザーが、該新たな組織についての管理ユーザーを生成することを許容するユーザー・インターフェース画面１４２０を描いている。ユーザー・インターフェース画面１４２０は、管理ユーザーが、ログインID、パスワード、名前および電子メール・アドレスを含む、該新たな管理ユーザーについてのさまざまな情報を指定することを許容する。
【０１７１】
図１４Ｃは、管理ユーザーが、該新たな組織についての一つまたは複数のパッケージへの加入を生成することを許容するユーザー・インターフェース画面１４４０を描いている。ここでの用法では、用語「パッケージ（package）」とは、一つまたは複数のICEクラウド・アプリケーション１３０を指し、用語「加入（subscription）」とは、使用権を指す。このように、パッケージへの加入とは、そのパッケージに属するICEクラウド・アプリケーション１３０を使う権利である。ユーザー・インターフェース画面１４４０は、管理ユーザーが、パッケージ加入についての期間および／または有効期限日を指定することを許容する。
【０１７２】
図１４Ｄは、管理ユーザーが、該新たな組織についての管理者情報を指定することを許容するユーザー・インターフェース画面１４６０を描いている。顧客管理者情報は、ログインID、名前および電子メール・アドレスを含む。
【０１７３】
図１４Ｅは、管理ユーザーが、該組織についての会社プロファイルを指定することを許容するユーザー・インターフェース画面１４８０を描いている。ユーザー・インターフェース画面１４８０は、管理ユーザーが、顧客連絡担当者名、顧客連絡担当者電子メール・アドレス、販売注文番号、顧客アカウント番号、業種、部署、会社／部署ごとの従業員数および装置の総数を指定することを許容する。
【０１７４】
先述したように新規ユーザーまたは新規加入を追加するためのプロセスを完了すると、ユーザー、認可およびトークン・データ１４４が、該新規ユーザーおよび／または加入を指定するよう更新される。たとえば、ICEクラウド・マネージャ１２２は、ユーザー・データ・テーブルにおいて行を追加しうる。ある実施形態によれば、新規ユーザーおよび／または加入がICEクラウド１２０において生成されるとき、対応する新規ユーザーおよび／または加入がSIクラウド１５０において生成される。これは、ICEクラウド・マネージャ１２２が、たとえばSIクラウド・マネージャ１５２のAPIに準拠する一つまたは複数のRESTコールをすることによって、SIクラウド・マネージャ１５２に対応するユーザーおよび／または加入を生成するよう命令することによって、達成されてもよい。RESTコールは、SIクラウド１５０においてユーザーおよび／または新規加入を生成するようSIクラウド・マネージャ１５２に命令する一つまたは複数のコマンドを指定してもよい。コールに応答して、SIクラウド・マネージャ１５２は、新規ユーザーおよび／または加入を含めるよう、ユーザー、認可およびトークン・データを更新する。
【０１７５】
ある実施形態によれば、ICEクラウド１２０およびSIクラウド１５０両方において新規ユーザーが生成された後、本稿で先に述べたようにICEクラウド１２０およびSIクラウド１５０を統合するために使われる、ユーザー間の対応を指定するマッピング・データ１９２が更新される。たとえば、ICEクラウド・マネージャ１２２からの要求に応答してSIクラウド・マネージャ１５２が新規ユーザーを生成した後、SIクラウド・マネージャ１５２は新規ユーザー情報をICEクラウド・マネージャ１２２に返して、ICEクラウド・マネージャ１５２がマッピング・データ１９２を更新できるようにする。この手法は、ユーザーが、ICEクラウド・マネージャ１５２によって提供されるユーザー・インターフェースを使って、新規ユーザーおよび／または加入を生成できるようにし、その後、ICEクラウド１２０における新規ユーザーおよび／または加入に対応するSIクラウド１５０における新規ユーザーおよび／または加入を自動的に生成するという恩恵を提供する。これはシームレスに実行され、ユーザーのクライアント装置がSIクラウド１５０のAPIを実装することを要求せず、あるいはユーザーがSIクラウド１５０のユーザー・インターフェースを学習することを要求しない。
【０１７６】
Ｖ．実装例。
【０１７７】
ある実施形態によれば、本稿に記載される技法は、少なくとも一つのコンピューティング装置によって実装される。本技法は、全体的にまたは部分的に、パケット・データ・ネットワークのようなネットワークを使って結合されている少なくとも一つのサーバー・コンピュータおよび／または他のコンピューティング装置の組み合わせを使って実装されてもよい。コンピューティング装置は、本技法を実行するよう固定構成とされていてもよいし、あるいは本技法を実行するよう持続的にプログラムされた、少なくとも一つの特定用途向け集積回路（ASIC）またはフィールド・プログラマブル・ゲート・アレイ（FPGA）のようなデジタル電子デバイスを含んでいてもよいし、あるいはファームウェア、メモリ、他の記憶または組み合わせにおけるプログラム命令に従って本技法を実行するようプログラムされた少なくとも一つの汎用ハードウェア・プロセッサを含んでいてもよい。そのようなコンピューティング装置は、カスタムの固定構成論理、ASICまたはFPGAをカスタムのプログラミングと組み合わせて、記載されている技法を達成してもよい。コンピューティング装置はサーバー・コンピュータ、ワークステーション、パーソナル・コンピュータ・システム、ポータブル・コンピュータ・システム、ハンドヘルド装置、モバイル・コンピューティング装置、ウェアラブル装置、身体取り付けまたは埋め込み可能な装置、スマートフォン、スマート機器、インターネットワーキング装置、自律的もしくは半自律的装置、たとえばロボットまたは無人地上または航空機、記載される技法を実装するために固定構成論理および／またはプログラム論理を組み込んでいる他の任意の装置、一つまたは複数の仮想コンピューティング・マシンまたはデータ・センターにおけるインスタンスおよび／またはサーバー・コンピュータおよび／またはパーソナル・コンピュータのネットワークであってもよい。
【０１７８】
図１５は、実施形態が実装されうる例示的なコンピュータ・システムを示すブロック図である。図１５の例では、開示される技術をハードウェア、ソフトウェアまたはハードウェアとソフトウェアの組み合わせにおいて実装するためのコンピュータ・システム１５００および命令は概略的に、たとえば四角および円で表現されている。これは、コンピュータ・アーキテクチャーおよびコンピュータ・システム実装について伝えるために本開示が関係する分野の当業者によって普通に使用されるのと同じ詳細さのレベルである。
【０１７９】
コンピュータ・システム１５００は、コンピュータ・システム１５００のコンポーネント間で電子信号経路を通じて情報および／または命令を通信するためのバスおよび／または他の通信機構を含んでいてもよい入出力（I/O）サブシステム１５０２を含む。I/Oサブシステム１５０２は、I/Oコントローラ、メモリ・コントローラおよび少なくとも一つのI/Oポートを含んでいてもよい。電子信号経路は図面において概略的に、たとえば線、単方向矢印または双方向矢印として表現される。
【０１８０】
少なくとも一つのハードウェア・プロセッサ１５０４が、情報および命令を処理するために、I/Oサブシステム１５０２に結合されている。ハードウェア・プロセッサ１５０４は、たとえば、汎用マイクロプロセッサまたはマイクロコントローラおよび／または特殊目的マイクロプロセッサ、たとえば埋め込みシステムまたはグラフィック処理ユニット（GPU）またはデジタル信号プロセッサまたはARMプロセッサを含んでいてもよい。プロセッサ１５０４は、統合された算術論理ユニット（ALU）を有していてもよく、あるいは別個のALUに結合されていてもよい。
【０１８１】
コンピュータ・システム１５００は、プロセッサ１５０４によって実行される命令およびデータを電子的にデジタル的に記憶するために、I/Oサブシステム１５０２に結合されている、メイン・メモリのようなメモリ１５０６の一つまたは複数のユニットを含む。メモリ１５０６は、さまざまな形のランダム・アクセス・メモリ（RAM）または他の動的記憶装置のような揮発性メモリを含んでいてもよい。メモリ１５０６はまた、一時変数または他の中間的な情報を、プロセッサ１５０４によって実行されるべき命令の実行の間、記憶しておくために使われてもよい。そのような命令は、プロセッサ１５０４にとってアクセス可能な非一時的なコンピュータ可読記憶媒体に記憶されるとき、コンピュータ・システム１５００を、該命令において指定される動作を実行するようカスタマイズされた特殊目的機械にすることができる。
【０１８２】
コンピュータ・システム１５００はさらに、I/Oサブシステム１５０２に結合された、プロセッサ１５０４のための情報および命令を記憶するための読み出し専用メモリ（ROM）１５０８または他の静的記憶装置のような不揮発性メモリを含む。ROM  １５０８はさまざまな形のプログラム可能ROM（PROM）、たとえば消去可能なPROM（EPROM）または電気的に消去可能なPROM（EEPROM）を含んでいてもよい。持続的記憶のユニット１５１０は、さまざまな形の不揮発性RAM（NVRAM）、たとえばフラッシュメモリまたは半導体記憶、磁気ディスクまたは光ディスク、たとえばCD-ROMもしくはDVD-ROMを含んでいてもよく、情報および命令を記憶するためにI/Oサブシステム１５０２に結合されていてもよい。記憶１５１０は、プロセッサ１５０４によって実行されたときに本稿の技法を実行するコンピュータ実装方法の実行を引き起こす命令およびデータを記憶するために使われてもよい非一時的なコンピュータ可読媒体の例である。
【０１８３】
メモリ１５０６、ROM  １５０８または記憶１５１０における命令は、モジュール、メソッド、オブジェクト、関数、ルーチンまたはコールとして編成された命令の一つまたは複数の集合を含んでいてもよい。命令は、一つまたは複数のコンピュータ・プログラム、オペレーティング・システム・サービスまたはモバイル・アプリを含むアプリケーション・プログラムとして編成されうる。命令は、オペレーティング・システムおよび／またはシステム・ソフトウェア；マルチメディア、プログラミングもしくは他の機能をサポートするための一つまたは複数のライブラリ；TCP/IP、HTTPまたは他の通信プロトコルを実装するためのデータ・プロトコル命令またはスタック；HTML、XML、JPEG、MPEGもしくはPNGを使ってコーディングされたファイルをパースまたはレンダリングするファイル・フォーマット処理命令；グラフィカル・ユーザー・インターフェース（GUI）、コマンドライン・インターフェースまたはテキスト・ユーザー・インターフェースのための命令をレンダリングまたは解釈するユーザー・インターフェース命令；オフィス・スイート、インターネット・アクセス・アプリケーション、設計および製造アプリケーション、グラフィック・アプリケーション、オーディオ・アプリケーション、ソフトウェア・エンジニアリング・アプリケーション、教育アプリケーション、ゲームまたはその他のアプリケーションのようなアプリケーション・ソフトウェアを含んでいてもよい。命令は、ウェブ・サーバー、ウェブ・アプリケーション・サーバーまたはウェブ・クライアントを実装してもよい。  命令は、プレゼンテーション層、アプリケーション層およびデータ記憶層、たとえば構造化照会言語（SQL）を使用するかまたはSQLを使用しないリレーショナルデータベースシステム、オブジェクトストア、グラフデータベース、フラットファイルシステムまたは他のデータ記憶として編成されてもよい。
【０１８４】
コンピュータ・システム１５００は、I/Oサブシステム１５０２を介して少なくとも一つの出力装置１５１２に結合されてもよい。ある実施形態では、出力装置１５１２はデジタル・コンピュータ・ディスプレイである。さまざまな実施形態において使用されうるディスプレイの例は、タッチスクリーン・ディスプレイまたは発光ダイオード（LED）ディスプレイまたは液晶ディスプレイ（LCD）または電子ペーパー・ディスプレイを含む。コンピュータ・システム１５００は、ディスプレイ装置の代わりに、またはディスプレイ装置に加えて、他の型の出力装置１５１２を含んでいてもよい。他の出力装置１５１２の例には、プリンター、チケットプリンター、プロッター、プロジェクター、サウンドカードまたはビデオカード、スピーカー、ブザーまたは圧電デバイスまたは他の可聴デバイス、ランプまたはLEDまたはLCDインジケーター、触覚デバイス、アクチュエーターまたはサーボを含む。
【０１８５】
信号、データ、コマンド選択またはジェスチャーをプロセッサ１５０４に伝えるために、少なくとも一つの入力装置１５１４がI/Oサブシステム１５０２に結合される。入力装置１５１４の例は、タッチスクリーン、マイクロフォン、静止およびビデオ・デジタルカメラ、英数字および他のキー、キーパッド、キーボード、グラフィックスタブレット、イメージスキャナー、ジョイスティック、クロック、スイッチ、ボタン、ダイヤル、スライドおよび／またはさまざまな型のセンサー、たとえば力センサー、モーションセンサー、熱センサー、加速度計、ジャイロスコープおよび慣性測定ユニット（IMU）センサーおよび／またはさまざまな型のトランシーバー、たとえばセルラーもしくはWi-Fiのようなワイヤレスの無線周波数（RF）または赤外線（IR）トランシーバーおよび全地球測位システム（GPS）トランシーバーを含む。
【０１８６】
もう一つの型のユーザー入力装置は、入力機能の代わりにまたは入力機能に加えて、表示画面上でのグラフィカル・インターフェースにおけるナビゲーションのような、カーソル制御または他の自動化された制御を実行しうる制御装置１５１６である。制御装置１５１６は、方向情報およびコマンド選択をプロセッサ１５０４に通信し、ディスプレイ１５１２上のカーソル移動を制御するためのタッチパッド、マウス、トラックボールまたはカーソル方向キーであってもよい。入力装置は、少なくとも、第一軸（たとえばx）および第二軸（たとえばy）の二つの軸方向において二つの自由度を有していてもよく、これにより該装置は平面内での位置を指定できる。もう一つの型の入力装置は、ジョイスティック、ワンド、コンソール、ステアリングホイール、ペダル、ギアシフト機構または他の型の制御装置といった、有線、無線または光学式の制御装置である。入力装置１５１４は、ビデオカメラおよび奥行きセンサーのような複数の異なる入力装置の組み合わせを含ンでいてもよい。
【０１８７】
もう一つの実施形態では、コンピュータ・システム１５００は、出力装置１５１２、入力装置１５１４および制御装置１５１６のうちの一つまたは複数が省略されているIoT（internet  of  things）装置を有していてもよい。あるいは、そのような実施形態では、入力装置１５１４は、一つまたは複数のカメラ、動き検出器、温度計、マイクロフォン、振動検出器、他のセンサーまたは検出器、測定装置またはエンコーダを有していてもよく、出力装置１５１２は、単一ラインLEDまたはLCDディスプレイ、一つまたは複数のインジケーター、ディスプレイ・パネル、メーター、バルブ、ソレノイド、アクチュエーターまたはサーボのような特殊目的ディスプレイを有していてもよい。
【０１８８】
コンピュータ・システム１５００がモバイル・コンピューティング装置であるとき、入力装置１５１４は、複数のGPS衛星に対して三角測量し、コンピュータ・システム１５００の地球物理学的な位置について緯度‐経度値のような位置情報提供または位置データを生成することができるGPSモジュールに結合された全地球測位システム（GPS）受信機を有していてもよい。出力装置１５１２は、位置報告パケット、通知、パルスまたはハートビート信号、あるいは単独でもしくは他の特定用途向けデータと組み合わせてコンピュータ・システム１５００の位置を指定する、ホスト１５２４またはサーバー１５３０に向けられる他の反復的なデータ送信を生成するためのハードウェア、ソフトウェア、ファームウェアおよびインターフェースを含んでいてもよい。
【０１８９】
コンピュータ・システム１５００は、本稿に記載される技法を実施するのに、カスタマイズされた固定構成論理、少なくとも一つのASICもしくはFPGA、ロードされて使用もしくは実行されたときにコンピュータ・システムと組み合わさってコンピュータ・システムを特殊目的機械として動作するようにするまたはプログラムするファームウェアおよび／またはプログラム命令または論理を使ってもよい。ある実施形態によれば、本稿の技法は、プロセッサ１５０４がメイン・メモリ１５０６に含まれている少なくとも一つの命令の少なくとも一つのシーケンスを実行するのに応答して、コンピュータ・システム１５００によって実行される。そのような命令は、記憶装置１５１０のような別の記憶媒体からメイン・メモリ１５０６に読み込まれてもよい。メイン・メモリ１５０６に含まれている命令のシーケンスの実行により、プロセッサ１５０４が本稿に記載されるプロセス段階が実行する。代替的な実施形態では、ソフトウェア命令の代わりにまたはソフトウェア命令と組み合わせて固定構成の回路が使用されてもよい。
【０１９０】
本稿で用いられるところの用語「記憶媒体」は、機械に特定の仕方で動作させるデータおよび／または命令を記憶する任意の非一時的な媒体を指す。そのような媒体は、不揮発性媒体および揮発性媒体を含みうる。不揮発性媒体は、たとえば、記憶装置１５１０のような光学式または磁気ディスクを含む。揮発性媒体は、メイン・メモリ１５０６のような動的メモリを含む。記憶媒体の一般的な形は、たとえば、ハードディスク、半導体ドライブ、フラッシュドライブ、磁気データ記憶媒体、任意の光学式もしくは物理的データ記憶媒体、メモリ・チップなどを含む。
【０１９１】
記憶媒体は、伝送媒体とは異なるが、伝送媒体と連携して使用されてもよい。  伝送媒体は、記憶媒体の間で情報を転送することに関与する。たとえば、伝送媒体は、I/Oサブシステム１５０２のバスを含むワイヤを含む、同軸ケーブル、銅線および光ファイバーを含む。伝送媒体は、電波および赤外データ通信の間に生成されるような音響波または光波の形態をとることもできる。
【０１９２】
さまざまな形の媒体が、実行のために少なくとも一つの命令の少なくとも一つのシーケンスをプロセッサ１５０４に搬送することに関わることがある。たとえば、命令は、初期にはリモート・コンピュータの磁気ディスクまたは半導体ドライブ上で搬送されてもよい。リモート・コンピュータは、その動的メモリに命令をロードし、モデムを使用して光ファイバーまたは同軸ケーブルまたは電話回線などの通信リンクを通じて命令を送信することができる。コンピュータ・システム１５００にローカルなモデムまたはルータは、通信リンク上でデータを受信し、そのデータをコンピュータ・システム１５００が読むことができるフォーマットに変換することができる。たとえば、無線周波数アンテナまたは赤外線検出器などの受信機は、無線または光信号で搬送されるデータを受信でき、適切な回路が、データをバス上に置くなど、I/Oサブシステム１５０２にデータを提供することができる。I/Oサブシステム１５０２は、データをメモリ１５０６に搬送し、そこからプロセッサ１５０４が命令を取り出して実行する。メモリ１５０６によって受領された命令は、任意的に、プロセッサ１５０４による実行の前または後のいずれかに、記憶装置１５１０に格納されてもよい。
【０１９３】
コンピュータ・システム１５００は、バス１５０２に結合された通信インターフェース１５１８をも含む。通信インターフェース１５１８は、ネットワーク１５２２またはインターネット上の公共もしくは私設クラウドのような少なくとも一つの通信ネットワークに直接的または間接的に接続されているネットワーク・リンク１５２０への双方向のデータ通信結合を提供する。たとえば、通信インターフェース１５１８は、イーサネット（登録商標）ネットワーキング・インターフェース、統合サービスデジタルネットワーク（ISDN）カード、ケーブルモデム、衛星モデムまたはモデムであって、対応する型の通信回線、たとえばイーサネット・ケーブルまたは任意の種類の金属ケーブルまたは光ファイバー回線または電話回線へのデータ通信接続を提供してもよい。ネットワーク１５２２は、ローカルエリアネットワーク（LAN）、広域ネットワーク（LAN）、広域ネットワーク（WAN）、キャンパス・ネットワーク、インターネットワークまたはそれらの任意の組み合わせを広く表わす。通信インターフェース１５１８は、互換なLANへのデータ通信接続を提供するためのLANカード、またはセルラー無線電話ワイヤレス・ネットワーキングの諸規格に従ってセルラー・データを送信または受信するように配線されたセルラー無線電話インターフェース、または衛星ワイヤレス・ネットワーキングの諸規格に従ってデジタル・データを送信または受信するよう配線された衛星無線インターフェースを含みうる。そのようないずれかの実装では、通信インターフェース１５１８は、さまざまな型の情報を表わすデジタル・データ・ストリームを搬送する信号経路を通じて、電気信号、電磁信号または光信号を送信および受信する。
【０１９４】
ネットワーク・リンク１５２０は典型的には、たとえば衛星、セルラー、Wi-Fiまたはブルートゥース（登録商標）技術を使って、直接的なまたは少なくとも一つのネットワークを通じた他のデータ装置への電気的、電磁的または光学式のデータ通信を提供する。たとえば、ネットワーク・リンク１５２０は、ネットワーク１５２２を通じてホスト・コンピュータ１５２４への接続を提供してもよい。
【０１９５】
さらに、ネットワーク・リンク１５２０は、ネットワーク１５２２を通じて、あるいはインターネットワーキング装置および／またはコンピュータを介してインターネット・サービス・プロバイダー（ISP）１５２６によって運営される他のコンピューティング装置への接続を提供してもよい。ISP  １５２６は、インターネット１５２８として表現されている世界規模のパケット・データ通信網を通じたデータ通信サービスを提供する。サーバー・コンピュータ１５３０は、インターネット１５２８に結合されていてもよい。サーバー１５３０は、任意のコンピュータ、データ・センター、ハイパーバイザーを有するまたは有さない仮想マシンまたは仮想コンピューティング・インスタンス、あるいはDOCKERまたはKUBERNETESなどのコンテナ化されたプログラム・システムを実行するコンピュータを広義に表わす。サーバー１５３０は、二つ以上のコンピュータまたはインスタンスを使って実装され、ウェブ・サービス要求、HTTPペイロードにおいてパラメータをもつ一様資源位置指定子（URL）ストリング、APIコール、アプリケーション・サービス・コールまたは他のサービス・コールを送信することによってアクセスされ、使用される電子的なデジタル・サービスを表わしうる。コンピュータ・システム１５００およびサーバー１５３０は、他のコンピュータ、処理クラスター、サーバーファームまたはタスクを実行するかまたはアプリケーションもしくはサービスを実行するために協働するコンピュータの他の組織を含む分散式コンピューティング・システムの要素をなしてもよい。サーバー１５３０は、モジュール、メソッド、オブジェクト、関数、ルーチンまたはコールとして編成された命令の一つまたは複数のセットを有していてもよい。命令は、一つまたは複数のコンピュータ・プログラム、オペレーティング・システム・サービスまたはモバイル・アプリを含むアプリケーション・プログラムとして編成されてもよい。命令は、オペレーティング・システムおよび／またはシステム・ソフトウェア；マルチメディア、プログラミングもしくは他の機能をサポートするための一つまたは複数のライブラリ；TCP/IP、HTTPまたは他の通信プロトコルを実装するためのデータ・プロトコル命令またはスタック；HTML、XML、JPEG、MPEGもしくはPNGを使ってコーディングされたファイルをパースまたはレンダリングするファイル・フォーマット処理命令；グラフィカル・ユーザー・インターフェース（GUI）、コマンドライン・インターフェースまたはテキスト・ユーザー・インターフェースのための命令をレンダリングまたは解釈するユーザー・インターフェース命令；オフィス・スイート、インターネット・アクセス・アプリケーション、設計および製造アプリケーション、グラフィック・アプリケーション、オーディオ・アプリケーション、ソフトウェア・エンジニアリング・アプリケーション、教育アプリケーション、ゲームまたはその他のアプリケーションのようなアプリケーション・ソフトウェアを含んでいてもよい。サーバー１５３０は、プレゼンテーション層、アプリケーション層およびデータ記憶層、たとえば構造化照会言語（SQL）を使用するかまたはSQLを使用しないリレーショナルデータベースシステム、オブジェクトストア、���ラフデータベース、フラットファイルシステムまたは他のデータ記憶をホストするウェブ・アプリケーション・サーバーを含んでいてもよい。
【０１９６】
コンピュータ・システム１５００は、ネットワーク（単数または複数）、ネットワーク・リンク１５２０および通信インターフェース１５１８を通じて、メッセージを送り、プログラム・コードを含めデータおよび命令を受信することができる。インターネットの例では、サーバー１５３０は、インターネット１５２８、ISP  １５２６、ローカル・ネットワーク１５２２および通信インターフェース１５１８を通じて、アプリケーション・プログラムのための要求されたコードを送信してもよい。受信されたコードは、受信される際にプロセッサ１５０４によって実行されても、および／または、のちの実行のために記憶１５１０または他の不揮発性記憶に記憶されてもよい。
【０１９７】
本節に記載される命令の実行は、プログラム・コードおよびその現在の活動からなる、実行されているコンピュータ・プログラムのインスタンスの形でプロセスを実装してもよい。オペレーティング・システム（OS）に依存して、プロセスは、命令を同時に実行する複数の実行スレッドで構成されていてもよい。この文脈において、コンピュータ・プログラムは命令の受動的な集合であり、一方、プロセスはそれらの命令の実際の実行であってもよい。いくつかのプロセスが同じプログラムに関連付けられていてもよい；たとえば、同じプログラムのいくつかのインスタンスを開くことは、二つ以上のプロセスが実行されることを意味する。複数のプロセスがプロセッサ１５０４を共有することを許容するためにマルチタスクが実装されてもよい。各プロセッサ１５０４または該プロセッサのコアは一度に一つのタスクを実行するが、各プロセッサが、各タスクが終了するのを待つ必要なく、実行されているタスクの間で切り換えられるようにするよう、コンピュータ・システム１５００はマルチタスクを実装するようにプログラムされてもよい。ある実施形態では、タスクが入出力動作を実行するとき、タスクが該タスクが切り換えられることができることを指示するとき、またはハードウェア割り込みの際に、切り換えが実行されてもよい。複数のプロセスの同時実行の様相を同時に提供するコンテキスト切り換えを迅速に実行することによって、対話型ユーザー・アプリケーションのための高速応答を可能にするために、時分割が実装されてもよい。ある実施形態では、セキュリティーおよび信頼性のために、オペレーティング・システムは、独立したプロセス間の直接通信を防止し、厳密に仲介され制御されたプロセス間通信機能を提供してもよい。
【符号の説明】
【０１９８】
１１０  エンドユーザー装置
１１２  ICEクライアント・アプリケーション
１１４  ウェブ・ブラウザー
１２０  統合クラウド環境（ICE）クラウド
１２２  ICEクラウド・マネージャ
１３０  ICEクラウド・アプリケーション
１３２  OCRアプリケーション
１３４  ベイツ・スタンプ付けアプリケーション
１３６  法廷電子提出準備アプリケーション
１３８  データ・ストレージ・アプリケーション
１４０  ICEクラウド・データ
１４２  管理および構成設定データ
１４４  ユーザー、認可およびトークン・データ
１５０  スマート統合（SI）クラウド
１５２  SIクラウド・マネージャ
１６０  SIクラウド・アプリケーション
１６２  ベイツ・スタンプ付けアプリケーション
１６４  法廷電子提出準備アプリケーション
１７０  SIクラウド・コンポーネント
１７２  OCR
１７４  ファイル分割
１７６  ベイツ・スタンプ付け
１７８  タイムスタンプ付け
１８０  透かし
１８４  SIクラウド・データ
１８６  管理および構成設定データ
１８８  ユーザー、認可およびトークン・データ
１９０  サードパーティー・サービス
１９２  マッピング・データ
５０２  エンドユーザー装置のユーザーがICEクラウド・アプリケーションにアクセス
５０４  法廷電子提出準備アプリケーションが、エンドユーザー装置にユーザー・インターフェースを提供
５０６  ユーザーが、データを処理するための設定を指定
５０８  ユーザーがスキャンを開始し、文書がスキャンされ、スキャン・データが生成される
５１０  スキャン・データおよび設定が法廷電子提出準備アプリケーションに提供される
５１２  法廷電子提出準備アプリケーションが、SIクラウドの法廷電子提出準備アプリケーションを呼び出す
５１４  SIクラウドの法廷電子提出準備アプリケーションが、ユーザーによって指定された設定を使ってスキャン・データを処理する
７０２  MFPのユーザーがICEクラウド・アプリケーションにアクセス
７０４  ベイツ・スタンプ付けアプリケーションがエンドユーザー装置にユーザー・インターフェースを提供
７０６  ユーザーがデータを処理するための設定を指定
７０８  ユーザーがスキャンを開始し、文書がスキャンされ、スキャン・データが生成される
７１０  スキャン・データおよび設定がベイツ・スタンプ付けアプリケーションに提供される
７１２  ベイツ・スタンプ付けアプリケーションがSIクラウドのベイツ・スタンプ付けアプリケーションを呼び出す
７１４  SIクラウドのベイツ・スタンプ付けアプリケーションが設定を使ってスキャン・データを処理する
９０２  エンドユーザー装置のユーザーがICEクラウド・アプリケーションにアクセス
９０４  データ・ストレージ・アプリケーションがエンドユーザー装置にユーザー・インターフェースを提供
９０６  ユーザーがスタンプ付け／マーク付け作業フローを選択して、データを処理するための設定を指定
９０８  ユーザーがスキャンを開始し、文書がスキャンされ、スキャン・データが生成される
９１０  スキャン・データおよび設定がデータ・ストレージ・アプリケーションに提供される
９１２  データ・ストレージ・アプリケーションがSIクラウドのスタンプ／マーク付けアプリケーションを呼び出す
９１４  スタンプ／マーク付けアプリケーションがデータにスタンプまたはマークを加え、スタンプ／マーク付けされたデータをデータ・ストレージ・アプリケーションに返す
９１６  データ・ストレージ・アプリケーションがスタンプ／マーク付けされたデータを一つまたは複数のサードパーティー・サービスに提供
１１０２  エンドユーザー装置のユーザーがICEクラウド・アプリケーションにアクセス
１１０４  データ・ストレージ・アプリケーションがエンドユーザー装置にユーザー・インターフェースを提供
１１０６  ユーザーがデータを処理するための設定を指定し、コンフリクト検査が実行される
１１０８  ユーザーがスキャンを開始し、文書がスキャンされ、スキャン・データが生成される
１１１０  スキャン・データおよび設定がデータ・ストレージ・アプリケーションに提供され、コンフリクト検査が実行される
１１１２  データ・ストレージ・アプリケーションがSIクラウドのスタンプ／マーク付けアプリケーションを呼び出す
１１１４  スタンプ／マーク付けアプリケーションが、SIクラウド・コンポーネントを使ってデータにベイツ・スタンプ、タイムスタンプおよび透かしを加える
１１１６  データ・ストレージ・アプリケーションがスタンプ／マーク付けされたデータを一つまたは複数のサードパーティー・サービスに提供
１３０２  エンドユーザー装置のユーザーがICEクラウド・アプリケーションにアクセス
１３０４  エンドユーザー装置がユーザー・インターフェースを表示
１３０６  ユーザーがSIクラウド・アプリケーションのアイコンを選択
１３０８  要求が生成されてSIクラウド・アプリケーションに送信される
１３１０  SIクラウド・アプリケーションが要求に含まれる情報を使って、エンドユーザー装置のユーザーを有効確認
１３１２  有効確認が成功であれば、ユーザー・インターフェースがエンドユーザー装置に提供される
１３１４  ユーザーがSIクラウド・アプリケーションの機能にアクセス
【図１Ａ】
2019185755.tif 000003
【図１Ｂ】
2019185755.tif 000004
【図１Ｃ】
2019185755.tif 000005
【図１Ｄ】
2019185755.tif 000006
【図２Ａ】
2019185755.tif 000007
【図２Ｂ】
2019185755.tif 000008
【図２Ｃ】
2019185755.tif 000009
【図２Ｄ】
2019185755.tif 000010
【図２Ｅ】
2019185755.tif 000011
【図２Ｆ】
2019185755.tif 000012
【図２Ｇ】
2019185755.tif 000013
【図２Ｈ】
2019185755.tif 000014
【図２Ｉ】
2019185755.tif 000015
【図２Ｊ】
2019185755.tif 000016
【図２Ｋ】
2019185755.tif 000017
【図２Ｌ】
2019185755.tif 000018
【図３Ａ】
2019185755.tif 000019
【図３Ｂ】
2019185755.tif 000020
【図３Ｃ】
2019185755.tif 000021
【図３Ｄ】
2019185755.tif 000022
【図４Ａ】
2019185755.tif 000023
【図４Ｂ】
2019185755.tif 000024
【図４Ｃ】
2019185755.tif 000025
【図５】
2019185755.tif 000026
【図６Ａ】
2019185755.tif 000027
【図６Ｂ】
2019185755.tif 000028
【図６Ｃ】
2019185755.tif 000029
【図６Ｄ】
2019185755.tif 000030
【図７】
2019185755.tif 000031
【図８Ａ】
2019185755.tif 000032
【図８Ｂ】
2019185755.tif 000033
【図８Ｃ】
2019185755.tif 000034
【図８Ｄ】
2019185755.tif 000035
【図８Ｅ】
2019185755.tif 000036
【図８Ｆ】
2019185755.tif 000037
【図８Ｇ】
2019185755.tif 000038
【図８Ｈ】
2019185755.tif 000039
【図８Ｉ】
2019185755.tif 000040
【図９】
2019185755.tif 000041
【図１０Ａ】
2019185755.tif 000042
【図１０Ｂ】
2019185755.tif 000043
【図１１】
2019185755.tif 000044
【図１２Ａ】
2019185755.tif 000045
【図１２Ｂ】
2019185755.tif 000046
【図１２Ｃ】
2019185755.tif 000047
【図１３】
2019185755.tif 000048
【図１４Ａ】
2019185755.tif 000049
【図１４Ｂ】
2019185755.tif 000050
【図１４Ｃ】
2019185755.tif 000051
【図１４Ｄ】
2019185755.tif 000052
【図１４Ｅ】
2019185755.tif 000053
【図１５】
2019185755.tif 000054