JP2013543604A - サービス又は処理プロバイダの自動選択及び半自動選択 - Google Patents
サービス又は処理プロバイダの自動選択及び半自動選択 Download PDFInfo
- Publication number
- JP2013543604A JP2013543604A JP2013511442A JP2013511442A JP2013543604A JP 2013543604 A JP2013543604 A JP 2013543604A JP 2013511442 A JP2013511442 A JP 2013511442A JP 2013511442 A JP2013511442 A JP 2013511442A JP 2013543604 A JP2013543604 A JP 2013543604A
- Authority
- JP
- Japan
- Prior art keywords
- service provider
- user
- computer
- job
- service
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5015—Service provider selection
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Entrepreneurship & Innovation (AREA)
- Strategic Management (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Quality & Reliability (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Development Economics (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
- Telephone Function (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
サービス又は処理プロバイダの自動選択、又は半自動選択のためのシステム及び方法を開示する。本発明の一実施例は、ユ―ザが選好の組を入力し、その入力から、入力された選好から導き出されたような、ユーザにとって重要な属性に一致するサービス又は処理プロバイダを自動選択することを可能にする。別の実施例では、処理は、ユーザが選好の組を提供するという点で半自動であり、本発明はサービス又は処理プロバイダをフィルタリングし、ユーザの選好に一致し、特定のタスクの処理のためにユーザが1つを選択することが可能な限定数のものを提示する。
Description
本発明は、携帯用計算装置、及び電子文書のワークフロー処理に関し、特に、本発明は、処理プロバイダの自動選択又は半自動選択のシステム及び方法に関する。
携帯用計算装置の使用は、多くのユーザにとって珍しくなくなっている。従来のデスクトップ型コンピュータを保有することに加え、多くのユーザは、特定のタイプの携帯用計算装置も保有している。現代の計算装置の例には、ソニー社のリーダー(Reader)、アマゾン(Amazon)社のキンドル(Kindle)、及びバーンズ・アンド・ノーブル(Barnes & Noble)社のヌック(Nook)が含まれる。より小型の携帯用計算装置には、アップル・コンピュータ(Apple Computer)社のアイフォン(iPhone)、リサーチ・イン・モーション(Research In Motion)社のブラックベリー(Blackberry)、パーム(Palm)社のプレ(Pre)などを含む多くのスマートフォンが含まれる。各種のレベルの処理機能及びサイズを提供するノートブック型ラップトップ及びタブレット型コンピュータの売上の増加もみられる。
前述の従来技術の装置の特定の問題点の1つは、多くの場合、携帯用計算装置の計算機能が限定的であるという点である。複雑かつ高度ないくつかのタスクを行うことができるために、従来技術により、携帯用計算装置を「クラウド」(相互接続されたサービス又は処理プロバイダのネットワーク)に結合する方法が開発されている。携帯用計算装置のクラウドへの結合により、多くの複雑な計算、及び計算量上集約的な他の動作を携帯用計算装置及びクラウドの両方を使用するワークフローにおいて分けることが可能になる。例えば、多くの場合、ワークフローは、携帯用計算装置の使用が、データの提示のためと、入力及び命令の受信のためとの間で分けられる一方、システム/クラウドの他の部分は、電子文書を操作し、他の複雑な計算を行うために使用される。
前述の従来技術の装置の特定の問題点の1つは、多くの場合、携帯用計算装置の計算機能が限定的であるという点である。複雑かつ高度ないくつかのタスクを行うことができるために、従来技術により、携帯用計算装置を「クラウド」(相互接続されたサービス又は処理プロバイダのネットワーク)に結合する方法が開発されている。携帯用計算装置のクラウドへの結合により、多くの複雑な計算、及び計算量上集約的な他の動作を携帯用計算装置及びクラウドの両方を使用するワークフローにおいて分けることが可能になる。例えば、多くの場合、ワークフローは、携帯用計算装置の使用が、データの提示のためと、入力及び命令の受信のためとの間で分けられる一方、システム/クラウドの他の部分は、電子文書を操作し、他の複雑な計算を行うために使用される。
携帯用計算装置をサービス又は処理プロバイダと関連付ける前述の処理は、携帯用計算装置のユーザにとって、複雑であり、わずらわしく、困難であり得る。上記処理は、種々のサービス・プロバイダ又は処理プロバイダが、携帯用計算装置のユーザに対してそれらのサービス(多くの場合、同じサービス)を通知するか、又は提供するエコシステムの作成によって複雑になる。例えば、個々のユーザは、テキストをサーチ可能にするために、電子文書に対して光学式文字認識(OCR)を行いたいことがあり得る。前述のサービスを提供するサービス・プロバイダ又は処理プロバイダは数多く存在する。しかし、種々のプライズ、種々の品質レベル、種々の応答性のレベル、及び種々の他の要因を有する。携帯用計算装置の個々のユーザにとって、特定の機能を行うことができる、考えられる、さまざまのサービス・プロバイダ又は処理プロバイダから選択することは多くの場合、難しい。
サービス又は処理プロバイダを選択する処理は、種々のサービス又は処理プロバイダを評価するために使用されるさまざまな属性又は要因によって更に複雑にされる。サービス又は処理プロバイダの選択において別々のユーザに重要であり得る別々の数十の要因が存在し得る。更に、別々のユーザにとって別々の要因が重要である。多くの場合、従来技術は、サービス又は処理プロバイダの属性を評価するためのやり方が非常に限られているか、又はない。
サービス又は処理プロバイダを選択する処理は、種々のサービス又は処理プロバイダを評価するために使用されるさまざまな属性又は要因によって更に複雑にされる。サービス又は処理プロバイダの選択において別々のユーザに重要であり得る別々の数十の要因が存在し得る。更に、別々のユーザにとって別々の要因が重要である。多くの場合、従来技術は、サービス又は処理プロバイダの属性を評価するためのやり方が非常に限られているか、又はない。
本発明の実施例は、サービス又は処理プロバイダの自動選択又は半自動選択のためのシステム及び方法を提供することにより、従来技術の欠点及び制限を解消する。特に、本発明の一実施例は、ユーザが選好の組を入力することを可能にし、その入力から、入力された選好から導き出されるようにユーザにとって重要な属性に一致するサービス又は処理プロバイダを自動選択する。本発明の別の実施例では、処理は、ユーザが選好の組を提供するという点で半自動的であり、本発明はサービス又は処理プロバイダをフィルタリングし、ユーザの選好に一致し、特定のタスクの処理のためにユーザが1つを選択することが可能ないくつかのものを提示する。
システムの一実施例は、サービス・プロバイダ選択モジュールを備え、前記サービス・プロバイダ選択モジュールは、ユーザ選好収集器及びグラフィカル・ユーザ・インタフェース(GUI)、ユーザ選好記憶装置、サービス・プロバイダ利用可能性検出器、サービス・プロバイダ属性収集器、サービス・プロバイダ選択エンジン、及びサービス・プロバイダ属性記憶装置を含む。ユーザ選好収集器及びGUIは、サービス・プロバイダに関するユーザの選好についての情報を収集するために使用される。ユーザ選好収集器は、ユ―ザからの情報を捕捉し、これをユーザ選好記憶装置に記憶する。サービス・プロバイダ利用可能性検出器は、サービス・プロバイダがネットワーク上で現在利用可能か否か、及びどのサービス・プロバイダがネットワーク上で現在利用可能かを判定するために使用される。サービス・プロバイダ属性収集器は、種々のサービス・プロバイダの特性に関する情報を収集する。この情報の収集は、a)ネットワークから捕捉された統計及び他のデータに基づいて部分的に自動であり、b)部分的に、サービス・プロバイダの特性に基づいてユーザから求められるか、又は部分的に手動であり、c)種々の証明などの、サービス・プロバイダが有し得る特定の基準に関してサービス・プロバイダから自ら提供される。サービス・プロバイダ属性記憶装置は、サービス・プロバイダ属性収集器によって獲得されたデータを記憶するために使用される。サービス・プロバイダ選択エンジンは、サービス・プロバイダ属性記憶装置、ユーザ選好記憶装置、及びサービス・プロバイダ利用可能性検出器に結合される。ユーザの選好、プロバイダの利用可能性、及びプロバイダ属性に基づいて、サービス・プロバイダ選択エンジンは、ユーザによって入力されている基準に基づいてサービスを提供するための1つの最善の一致、又は最善の一致のリストを求める。一実施例では、これは自動的に行われ、タスクは、処理するために、識別された最善のサービス・プロバイダに渡される。別の実施例では、これは半自動的に行われ、ユーザの要件の最も一致するサービス・プロバイダのリストがサ―ビス・プロバイダ選択エンジンによって提示され、タスクは、ユーザによって選択されたプロバイダに渡される。
本発明は更に、サービス・プロバイダの自動選択及び半自動選択のための新規な方法、ユーザ選好を入力する方法、及びサービス・プロバイダについての属性を収集する方法も含む。
本明細書及び特許請求の範囲記載の構成及び効果は網羅的でなく、図及び明細書に鑑みて、更なる多くの構成及び効果が当業者に明らかになるであろう。更に、本明細書において使用する文言は、本発明の主題の範囲を制限するためでなく、主に読みやすさ及び教育の目的で選択している。
本発明は更に、サービス・プロバイダの自動選択及び半自動選択のための新規な方法、ユーザ選好を入力する方法、及びサービス・プロバイダについての属性を収集する方法も含む。
本明細書及び特許請求の範囲記載の構成及び効果は網羅的でなく、図及び明細書に鑑みて、更なる多くの構成及び効果が当業者に明らかになるであろう。更に、本明細書において使用する文言は、本発明の主題の範囲を制限するためでなく、主に読みやすさ及び教育の目的で選択している。
本発明は、添付図面の図における制限でなく、例示によって示し、同じ参照符号は、同様な構成要素を表すために使用される。
(参照符号の説明)
100 システム
102 携帯用計算装置
104 ネットワーク
106 ストローク及び画像ワークフロー・サーバ
108 コンピュータ
110 データ記憶装置
112 結合
116 信号ライン
118 信号ライン
120 信号ライン
122a−122n コンピュータ
124a−124n 信号ライン
202 携帯用計算装置
204 スタイラス
206 ディスプレイ装置
208 ストローク捕捉装置(モジュール)
210 入力装置
212 入力装置
214 入力装置
216 入力装置
218 カメラ
220 出力装置
302 プロセッサ
304 メモリ
306 通信装置
308 一意の装置識別子の記憶装置
310 クロック
312 メタデータ・モジュール
314 ロギング・モジュール
316 文書転送モジュール
318 文書作成モジュール
320 バス
322 提示モジュール
324 他のアプリケーション
326 他のI/O装置
328 位置バー及びブックマーク・モジュール
402 プロセッサ
404 メモリ
406 通信装置
408 文書転送モジュール
410 クロック
412 ワークフロー・モジュール
416 ロギング・モジュール
418 他のアプリケーション
420 バス
422 ディスプレイ装置
424 出力装置
426 一意装置ID
428 入力装置
432 サービス・プロバイダ選択モジュール
502 インボックス
504 文書
510 クロック
512 バックアップ・サーバ
602 ユーザ選好収集器及びGUI
604 ユーザ選好記憶装置
606 サービス・プロバイダ利用可能性検出器
608 サービス・プロバイダ属性収集器
610 サービス・プロバイダ選択エンジン
612 サービス・プロバイダ属性記憶装置
800 ユーザ・インタフェース
802 ラベル
804 ラベル
806 ラベル
808 ラベル
810 ボタン
812 ラベル
850 ユーザ・インタフェース
852 属性
854 スライダ・バー
856 位置表示子
858 位置表示子
860 位置表示子
862 ボタン
864 ボタン
866 位置表示子
サービス又は処理プロバイダの自動選択又は半自動選択のためのシステムを以下に説明する。以下の説明では、説明の目的で、本発明の詳細な理解を得るために数多くの具体的な詳細を記載している。しかし、前述の具体的な詳細なしで本発明を実施することが可能であることは当業者に明らかとなるであろう。他の場合には、本発明を不必要に分かりにくくすることを避けるために構造及び装置をブロック図で示す。例えば、本発明は、携帯用計算装置を参照して以下に一実施例において説明する。上記携帯用計算装置は、電子ペーパー、eペーパー、又は電子インク・ディスプレイを利用する、アマゾン(Amazon)社のキンドル(Kindle)のようなハードウェア及びソフトウェア・プラットフォームにおいて例示される。しかし、本発明は、インク、データ、及びコマンドを捕捉し、電子的に文書を送出することが可能な何れかのタイプの携帯用計算装置に適用される。
本明細書において、「一実施例」又は「実施例」に言及されていることは、実施例に関して説明した特定の構成、構造、又は特性が、本発明の少なくとも1つの実施例に含まれているということを意味する。本明細書の随所に「一実施例において」の句が存在していることは、必ずしも、全て、同じ実施例を参照している訳でない。特に、本発明は別個の2つのアーキテクチャの内容において以下に説明し、構成部分の一部は、両方のアーキテクチャで動作可能である一方、他の構成部分はそうでない。
以下に続く詳細な説明の特定の部分は、コンピュータ・メモリ内のデータ・ビットに対する動作の記号表現及びアルゴリズムによって示す。前述のアルゴリズム記述及び表現は、当業者に向けてその作品の本質を最も効果的に伝えるために当業者によって使用される手段である。アルゴリズムは本明細書及び特許請求の範囲では、かつ、一般には、所望の結果につながる首尾一貫した一連の工程であると理解される。工程は、物理的数量の物理的操作を必要とするものである。必ずしもそうでないが通常は、前述の数量は、記憶し、転送し、合成し、比較し、その他のやり方で操作することが可能な電気信号又は磁気信号の形態をとる。主に慣用の理由で前述の信号をビット、値、要素、記号、文字、項、数字等として表すことが時には便利であることが明らかになっている。
しかし、前述及び同様な項は全て、適切な物理的数量と関連付けられるものであり、前述の数量に付される便利なラベルに過ぎないということを念頭におくべきである。以下の記載から明らかであるように、別途明記していない限り、「処理」、「計算」、「算出」、「判定」、「表示」等などの用語を利用する記載は、コンピュータ・システム、又は同様な電子計算装置の動作及び処理を表す。上記コンピュータ・システム、又は同様な電子計算装置の動作及び処理は、コンピュータ・システムのレジスタ内及びメモリ内の物理的(電子的)数量として表されるデータを他のデータに操作し、変換する。上記他のデータは、コンピュータ・システムのレジスタ内若しくはメモリ内、又は、他の当該情報記憶装置内、送信装置内、又は表示装置内の物理的数量として同様に表される。
100 システム
102 携帯用計算装置
104 ネットワーク
106 ストローク及び画像ワークフロー・サーバ
108 コンピュータ
110 データ記憶装置
112 結合
116 信号ライン
118 信号ライン
120 信号ライン
122a−122n コンピュータ
124a−124n 信号ライン
202 携帯用計算装置
204 スタイラス
206 ディスプレイ装置
208 ストローク捕捉装置(モジュール)
210 入力装置
212 入力装置
214 入力装置
216 入力装置
218 カメラ
220 出力装置
302 プロセッサ
304 メモリ
306 通信装置
308 一意の装置識別子の記憶装置
310 クロック
312 メタデータ・モジュール
314 ロギング・モジュール
316 文書転送モジュール
318 文書作成モジュール
320 バス
322 提示モジュール
324 他のアプリケーション
326 他のI/O装置
328 位置バー及びブックマーク・モジュール
402 プロセッサ
404 メモリ
406 通信装置
408 文書転送モジュール
410 クロック
412 ワークフロー・モジュール
416 ロギング・モジュール
418 他のアプリケーション
420 バス
422 ディスプレイ装置
424 出力装置
426 一意装置ID
428 入力装置
432 サービス・プロバイダ選択モジュール
502 インボックス
504 文書
510 クロック
512 バックアップ・サーバ
602 ユーザ選好収集器及びGUI
604 ユーザ選好記憶装置
606 サービス・プロバイダ利用可能性検出器
608 サービス・プロバイダ属性収集器
610 サービス・プロバイダ選択エンジン
612 サービス・プロバイダ属性記憶装置
800 ユーザ・インタフェース
802 ラベル
804 ラベル
806 ラベル
808 ラベル
810 ボタン
812 ラベル
850 ユーザ・インタフェース
852 属性
854 スライダ・バー
856 位置表示子
858 位置表示子
860 位置表示子
862 ボタン
864 ボタン
866 位置表示子
サービス又は処理プロバイダの自動選択又は半自動選択のためのシステムを以下に説明する。以下の説明では、説明の目的で、本発明の詳細な理解を得るために数多くの具体的な詳細を記載している。しかし、前述の具体的な詳細なしで本発明を実施することが可能であることは当業者に明らかとなるであろう。他の場合には、本発明を不必要に分かりにくくすることを避けるために構造及び装置をブロック図で示す。例えば、本発明は、携帯用計算装置を参照して以下に一実施例において説明する。上記携帯用計算装置は、電子ペーパー、eペーパー、又は電子インク・ディスプレイを利用する、アマゾン(Amazon)社のキンドル(Kindle)のようなハードウェア及びソフトウェア・プラットフォームにおいて例示される。しかし、本発明は、インク、データ、及びコマンドを捕捉し、電子的に文書を送出することが可能な何れかのタイプの携帯用計算装置に適用される。
本明細書において、「一実施例」又は「実施例」に言及されていることは、実施例に関して説明した特定の構成、構造、又は特性が、本発明の少なくとも1つの実施例に含まれているということを意味する。本明細書の随所に「一実施例において」の句が存在していることは、必ずしも、全て、同じ実施例を参照している訳でない。特に、本発明は別個の2つのアーキテクチャの内容において以下に説明し、構成部分の一部は、両方のアーキテクチャで動作可能である一方、他の構成部分はそうでない。
以下に続く詳細な説明の特定の部分は、コンピュータ・メモリ内のデータ・ビットに対する動作の記号表現及びアルゴリズムによって示す。前述のアルゴリズム記述及び表現は、当業者に向けてその作品の本質を最も効果的に伝えるために当業者によって使用される手段である。アルゴリズムは本明細書及び特許請求の範囲では、かつ、一般には、所望の結果につながる首尾一貫した一連の工程であると理解される。工程は、物理的数量の物理的操作を必要とするものである。必ずしもそうでないが通常は、前述の数量は、記憶し、転送し、合成し、比較し、その他のやり方で操作することが可能な電気信号又は磁気信号の形態をとる。主に慣用の理由で前述の信号をビット、値、要素、記号、文字、項、数字等として表すことが時には便利であることが明らかになっている。
しかし、前述及び同様な項は全て、適切な物理的数量と関連付けられるものであり、前述の数量に付される便利なラベルに過ぎないということを念頭におくべきである。以下の記載から明らかであるように、別途明記していない限り、「処理」、「計算」、「算出」、「判定」、「表示」等などの用語を利用する記載は、コンピュータ・システム、又は同様な電子計算装置の動作及び処理を表す。上記コンピュータ・システム、又は同様な電子計算装置の動作及び処理は、コンピュータ・システムのレジスタ内及びメモリ内の物理的(電子的)数量として表されるデータを他のデータに操作し、変換する。上記他のデータは、コンピュータ・システムのレジスタ内若しくはメモリ内、又は、他の当該情報記憶装置内、送信装置内、又は表示装置内の物理的数量として同様に表される。
本発明は更に、本明細書及び特許請求の範囲記載の動作を行う装置に関する。前述の装置は、所要の目的のために特別に構成し得るか、又は、コンピュータに記憶されたコンピュータ・プログラムによって選択的に起動又は再構成された汎用コンピュータを含み得る。前述のコンピュータ・プログラムは、何れかのタイプのディスク、又は、電子的命令を記憶するのに適した何れかのタイプの媒体であって、それぞれがコンピュータ・システム・バスに結合されたものなどのコンピュータ読み取り可能な記憶媒体に記憶し得る。上記媒体は、限定列挙でないが、ランダム・アクセス・メモリ(RAM)、リード・オンリ・メモリ(ROM)、EPROM、EEPROM、磁気又は光カード、光磁気ディスク、CD−ROM、光ディスク、フロッピー(登録商標)・ディスクを含む。
本発明は、全面的にハードウェアの実施例の形態、全面的にソフトウェアの実施例の形態、又はハードウェア構成要素及びソフトウェア構成要素を含む実施例の形態をとり得る。好ましい実施例では、本発明は、限定列挙でないが、ファームウェア、常駐ソフトウェア、マイクロコード等を含むソフトウェアで実現される。
更に、本発明は、プログラム・コードを提供するコンピュータ使用可能な媒体又はコンピュータ読み取り可能な媒体によってアクセス可能なコンピュータ・プログラム・プロダクトの形態をとり得る。上記プログラム・コードは、コンピュータ又は何れかの命令実行システムによる、若しくは、コンピュータ又は何れかの命令実行システムに関する使用のためである。本明細書の目的では、コンピュータ使用可能な媒体又はコンピュータ読み取り可能な媒体は、プログラムを含め、記憶し、通信し、伝搬させ、若しくは伝送することがあり得る何れかの装置であり得る。上記プログラムを含め、記憶し、通信し、伝搬させ、若しくは伝送することは、命令実行システム、装置、又はデバイスによる、又は命令実行システム、装置、又はデバイスに関する使用のためである。
更に、本発明は、プログラム・コードを提供するコンピュータ使用可能な媒体又はコンピュータ読み取り可能な媒体によってアクセス可能なコンピュータ・プログラム・プロダクトの形態をとり得る。上記プログラム・コードは、コンピュータ又は何れかの命令実行システムによる、若しくは、コンピュータ又は何れかの命令実行システムに関する使用のためである。本明細書の目的では、コンピュータ使用可能な媒体又はコンピュータ読み取り可能な媒体は、プログラムを含め、記憶し、通信し、伝搬させ、若しくは伝送することがあり得る何れかの装置であり得る。上記プログラムを含め、記憶し、通信し、伝搬させ、若しくは伝送することは、命令実行システム、装置、又はデバイスによる、又は命令実行システム、装置、又はデバイスに関する使用のためである。
媒体は、電子的、磁気的、光学的、電磁的、赤外、若しくは半導体システム(若しくは装置若しくはデバイス)又は伝搬媒体であり得る。コンピュータ読み取り可能な媒体の例には、半導体又はソリッドステートメモリ、磁気テープ、着脱可能なコンピュータ・ディスケット、ランダム・アクセス・メモリ(RAM)、リード・オンリ・メモリ(ROM)、リジッド磁気ディスク、及び光ディスクを含む。光ディスクの現在の例には、コンパクト・ディスク リード・オンリ・メモリ(CD−ROM)、コンパクト・ディスク リード/ライト(CD−R/W)、及びDVDが含まれる。
プログラム・コードを記憶し、かつ/又は実行するのに適したデータ処理システムは、システム・バスを介してメモリ要素に直接又は間接に結合された少なくとも1つのプロセッサを含む。メモリ要素は、キャッシュ・メモリ、大容量記憶装置、プログラム・コードの実際の実行中に使用される局所メモリを含み得る。キャッシュ・メモリは、実行中にコードを大容量記憶装置から取り出さなければならない回数を削減するために少なくとも一部のプログラム・コードの一時記憶装置を提供する。
入出力又はI/Oデバイス(限定列挙でないが、キーボード、ディスプレイ、ポインティング・デバイス等を含む)は、直接、又は介在するI/Oコントローラを介してシステムと結合し得る。
ネットワーク・アダプタは、データ処理システムが、介在するプライベート・ネットワーク又はパブリック・ネットワークを介して他のデータ処理システムあるいは遠隔プリンタあるいは記憶デバイスに結合されることを可能にし得る。モデム、ケーブル・モデム、及びイーサネット(登録商標)カードは、現在入手可能なタイプのネットワーク・アダプタのうちのわずか少しに過ぎない。
最後に、本明細書及び特許請求の範囲に示すアルゴリズム及びディスプレイは、何れかの特定のコンピュータ又は他の装置に固有に関連しているものでない。本明細書及び特許請求の範囲記載の教示に応じて種々の汎用システムをプログラムとともに使用し得るか、又は、所要の方法工程を行うよう更に専門化された装置を構成することが便利でありことが明らかになり得る。前述の種々のシステムに必要な構造は、以下の説明から分かるであろう。更に、本発明は、特定のプログラミング言語を参照して説明する。本明細書及び特許請求の範囲記載の本発明の教示を実現するために、種々のプログラミング言語を使用し得るということが分かる。
システム概要
図1は、自動ストローク及び画像ベースのワークフロー用のシステム100の実施例を示す。次に図1を参照するに、システム100のこの実施例は、複数の携帯用計算装置102a乃至102nと、ネットワーク104と、コンピュータ108と、ストローク及び画像ワークフロー・サーバ106と、データ記憶装置110と、1つ又は複数のサービス・プロバイダのコンピュータ122a乃至122nとを含む。複数の携帯用計算装置102a乃至102nは、それぞれの結合112a乃至112nを介してネットワーク104に無線結合される。一実施例では、携帯用計算装置102a乃至102nは、ディスプレイ、ストローク捕捉機能、及び無線通信機能を含む携帯用計算装置である。携帯用計算装置102a乃至102nは、画像(例えば、フォーム又は文書)を受け取り、受け取られた画像にストローク注釈を付し、注釈を付した受け取られた画像を送出するよう適合される。携帯用計算装置102a乃至102nの実施例は、図2及び図3を参照して以下に更に詳細に説明する。
ネットワーク104は、有線又は無線の通常のタイプのものであり、スター構成、トークン・リング構成、又は当業者に知られている他の構成などの何れかの数の構成を有し得る。更に、ネットワーク104は、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)(例えば、インターネット)、及び/又は、複数の装置が通信し得る何れかの他の相互接続されたデータ経路を含み得る。更に別の実施例では、ネットワーク104はピアツーピア・ネットワークであり得る。ネットワーク104は更に、各種通信プロトコルでデータを送出するために、電気通信ネットワークの部分に結合し得るか、又は上記部分を含む。更に別の実施例では、ネットワーク104は、ショート・メッセージング・サービス(SMS)、マルチメディア・メッセージング・サービス(MMS)、ハイパーテキスト転送プロトコル(HTTP)、直接データ変換、WAP、電子メール等経由などでデータを送出し、受け取るために、ブルートゥース(登録商標)通信ネットワーク又はセルラー通信ネットワークを含む。
コンピュータ108は、パソコンやハードウェア・サーバなどの通常のタイプのものである。コンピュータ108は、信号ライン118により、ネットワーク104に結合される。一実施例では、コンピュータは、ストローク及び画像ワークフロー・サーバ106にアクセスし、ストローク及び画像ワークフロー・サーバ106と通信することが可能である。ワークフローに応じて、特定のフォームの処理を検証し、又は特定のフォームを処理するためにフォームを当初、入力するためである。例えば、ユーザは、コンピュータ108を使用して、更なる処理のためにPDFファイルなどの文書をストローク及び画像ワークフロー・サーバ106に入力することができる。同様に、コンピュータ108は、そのワークフローによる処理全てが完了した後の完了フォームの受け手であり得る。コンピュータ108は、ストローク及び画像ワークフロー・サーバ106の検証モジュール430(図4参照)と通信して、特定のフォームの処理の完了又はステータスを検証し得る。最後に、コンピュータ108は、ワークフローの中間段階として電子文書に対して処理し、又は、更に、ストローク及び画像ワークフロー・サーバ106の機能の一部を含み、携帯用計算装置102a乃至102nと直接通信し得る。
ストローク及び画像ワークフロー・サーバ106は、携帯用計算装置102a乃至102nと通信するために信号ライン116を介してネットワーク104に結合される。ストローク及び画像ワークフロー・サーバ106は、文書伝送モジュール408、ワークフロー・モジュール412、ロギング・モジュール416、及び検証モジュール430を含む(図4参照)。ストローク及び画像ワークフロー・サーバ106は、携帯用計算装置102a乃至102nとの間で文書を送出し、受け取り、検証のために、ログを維持し、ペーパーのようなワークフローを実現し、文書を処理する。これは特に効果的である。ストローク及び画像ワークフロー・サーバ106が、携帯用装置のユーザのためにペーパーに似たワークフローを実現し、ユーザに処理が見えないように電子文書の処理のオーバヘッドを扱う。
データ記憶装置110は、信号ライン120を介してストローク及び画像ワークフロー・サーバ106に結合される。別の実施例では、データ記憶装置110は、ネットワーク104により、ストローク及び画像ワークフロー・サーバ106に結合される。例えば、前述の別の実施例では、データ記憶装置110は、アマゾンS3などのオンライン・ストレージ・ウェブ・サービスである。データ記憶装置110は、不揮発性メモリ装置又は同様な永久的な記憶装置及び媒体である。データ記憶装置110は、プロセッサ302用のデータ及び命令を記憶し、フラッシュ・メモリ装置、DVD−RW装置、DVD−RAM装置、DVD−ROM装置、CD−ROM装置、フロッピー(登録商標)・ディスク・ドライブ、ハード・ディスク・ドライブを含む1つ又は複数の装置を含む。データ記憶装置110は、処理ログなどのワークフロー処理についての情報を記憶するために使用される。
サービス・プロバイダのコンピュータ122a乃至122nは、パソコンやハードウェア・サーバなどの一般的なタイプのものである。サービス・プロバイダ・コンピュータ122a乃至122nは、それぞれ、信号ライン124a乃至124nにより、ネットワーク104に結合される。一実施例では、サービス・プロバイダ・コンピュータ122a乃至122nは、ストローク及び画像ワークフロー・サーバ106にアクセスし、ストローク及び画像ワークフロー・サーバ106と通信して、より大きなワークフローの一部である部分又はタスクを行う。一実施例では、サービス・プロバイダ・コンピュータ122a乃至122nはワークフローの一部分又はタスクを行うのに必要な文書及び他の情報を受け取るようストローク及び画像ワークフロー・サーバ106と対話するクライアント・アプリケーションを含む。クライアント・アプリケーションは更に、ストローク及び画像ワークフロー・サーバ106に、処理済文書、他の処理済情報、又は結果を返信する役割も果たす。クライアント・アプリケーションは更に、制御、エラー処理、及び他の機能のために、サービス・プロバイダ・コンピュータ122a乃至122nと、ストローク及び画像ワークフロー・サーバ106との間の通信を制御し、処理する。例えば、クライアント・アプリケーションは、特定のジョブの実行に関する統計を処理するためにサービス・プロバイダ属性収集器608(図6)と通信し得る。あるいは、クライアント・アプリケーションは、特定の形態の処理のステータス又は完了を検証するために、ストローク及び画像ワークフロー・サーバ106の検証モジュール430(図4参照)と通信し得る。
サービス・プロバイダ・コンピュータ122a乃至122nは、種々の機能の何れかを行うよう構成される。上記種々の機能は、限定列挙でないが、テキスト対音声変換、言語変換、フォーマット変換、スペルチェック、フォーマッティング、OCR、プルーフリーディング、サード・パーティー・システムへの入力、画像抽出、文書記憶及び保存等などである。サービス・プロバイダ・コンピュータ122a乃至122nは、ワークフローの中間段階として電子文書を処理するよう構成される。一実施例では、サービス・プロバイダ・コンピュータ122a乃至122nそれぞれは別個のエンティティによって所有され、操作され、サービス・プロバイダ・コンピュータ122a乃至122nそれぞれは各種機能を提供する。種々の属性で、同じサービス又は機能を提供する複数のサービス・プロバイダ・コンピュータ122a乃至122nが存在し得るということを当業者は認識するであろう。その結果、サービス・プロバイダ・コンピュータ122a乃至122nは、ストローク及び画像ワークフロー・サーバ106によって割り当てられたタスク又はジョブをプロバイダが争う市場を提供する。最後に、他の実施例では、サービス・プロバイダ・コンピュータ122a乃至122nは、ストローク及び画像ワークフロー・サーバ106の機能の一部を含み、携帯用計算装置102a乃至102nと直接、通信する。以下の多くの場合では、「サービス・プロバイダ」の語は、前述のサービス・プロバイダ・コンピュータ122a乃至122nを表すよう同義に使用される。
図1のシステムは、1つのストローク画像ワークフロー・サーバ106のみを示すが、例えば、他の機能、企業、機関、組織構造に特化した何れかの数の更なるワークフロー・サーバが存在し得るということを理解すべきである。計算パッド202(図2)は、2つ以上のストローク及び画像ワークフロー・サーバ106と通信し得る。特定のページ、又は文書のうちの部分は、別々のワークフロー・サーバに関連付け得る。更に、複合文書の一部を、複合文書全部を送出するのでなく、転送することが可能である。
ネットワーク・アダプタは、データ処理システムが、介在するプライベート・ネットワーク又はパブリック・ネットワークを介して他のデータ処理システムあるいは遠隔プリンタあるいは記憶デバイスに結合されることを可能にし得る。モデム、ケーブル・モデム、及びイーサネット(登録商標)カードは、現在入手可能なタイプのネットワーク・アダプタのうちのわずか少しに過ぎない。
最後に、本明細書及び特許請求の範囲に示すアルゴリズム及びディスプレイは、何れかの特定のコンピュータ又は他の装置に固有に関連しているものでない。本明細書及び特許請求の範囲記載の教示に応じて種々の汎用システムをプログラムとともに使用し得るか、又は、所要の方法工程を行うよう更に専門化された装置を構成することが便利でありことが明らかになり得る。前述の種々のシステムに必要な構造は、以下の説明から分かるであろう。更に、本発明は、特定のプログラミング言語を参照して説明する。本明細書及び特許請求の範囲記載の本発明の教示を実現するために、種々のプログラミング言語を使用し得るということが分かる。
システム概要
図1は、自動ストローク及び画像ベースのワークフロー用のシステム100の実施例を示す。次に図1を参照するに、システム100のこの実施例は、複数の携帯用計算装置102a乃至102nと、ネットワーク104と、コンピュータ108と、ストローク及び画像ワークフロー・サーバ106と、データ記憶装置110と、1つ又は複数のサービス・プロバイダのコンピュータ122a乃至122nとを含む。複数の携帯用計算装置102a乃至102nは、それぞれの結合112a乃至112nを介してネットワーク104に無線結合される。一実施例では、携帯用計算装置102a乃至102nは、ディスプレイ、ストローク捕捉機能、及び無線通信機能を含む携帯用計算装置である。携帯用計算装置102a乃至102nは、画像(例えば、フォーム又は文書)を受け取り、受け取られた画像にストローク注釈を付し、注釈を付した受け取られた画像を送出するよう適合される。携帯用計算装置102a乃至102nの実施例は、図2及び図3を参照して以下に更に詳細に説明する。
ネットワーク104は、有線又は無線の通常のタイプのものであり、スター構成、トークン・リング構成、又は当業者に知られている他の構成などの何れかの数の構成を有し得る。更に、ネットワーク104は、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)(例えば、インターネット)、及び/又は、複数の装置が通信し得る何れかの他の相互接続されたデータ経路を含み得る。更に別の実施例では、ネットワーク104はピアツーピア・ネットワークであり得る。ネットワーク104は更に、各種通信プロトコルでデータを送出するために、電気通信ネットワークの部分に結合し得るか、又は上記部分を含む。更に別の実施例では、ネットワーク104は、ショート・メッセージング・サービス(SMS)、マルチメディア・メッセージング・サービス(MMS)、ハイパーテキスト転送プロトコル(HTTP)、直接データ変換、WAP、電子メール等経由などでデータを送出し、受け取るために、ブルートゥース(登録商標)通信ネットワーク又はセルラー通信ネットワークを含む。
コンピュータ108は、パソコンやハードウェア・サーバなどの通常のタイプのものである。コンピュータ108は、信号ライン118により、ネットワーク104に結合される。一実施例では、コンピュータは、ストローク及び画像ワークフロー・サーバ106にアクセスし、ストローク及び画像ワークフロー・サーバ106と通信することが可能である。ワークフローに応じて、特定のフォームの処理を検証し、又は特定のフォームを処理するためにフォームを当初、入力するためである。例えば、ユーザは、コンピュータ108を使用して、更なる処理のためにPDFファイルなどの文書をストローク及び画像ワークフロー・サーバ106に入力することができる。同様に、コンピュータ108は、そのワークフローによる処理全てが完了した後の完了フォームの受け手であり得る。コンピュータ108は、ストローク及び画像ワークフロー・サーバ106の検証モジュール430(図4参照)と通信して、特定のフォームの処理の完了又はステータスを検証し得る。最後に、コンピュータ108は、ワークフローの中間段階として電子文書に対して処理し、又は、更に、ストローク及び画像ワークフロー・サーバ106の機能の一部を含み、携帯用計算装置102a乃至102nと直接通信し得る。
ストローク及び画像ワークフロー・サーバ106は、携帯用計算装置102a乃至102nと通信するために信号ライン116を介してネットワーク104に結合される。ストローク及び画像ワークフロー・サーバ106は、文書伝送モジュール408、ワークフロー・モジュール412、ロギング・モジュール416、及び検証モジュール430を含む(図4参照)。ストローク及び画像ワークフロー・サーバ106は、携帯用計算装置102a乃至102nとの間で文書を送出し、受け取り、検証のために、ログを維持し、ペーパーのようなワークフローを実現し、文書を処理する。これは特に効果的である。ストローク及び画像ワークフロー・サーバ106が、携帯用装置のユーザのためにペーパーに似たワークフローを実現し、ユーザに処理が見えないように電子文書の処理のオーバヘッドを扱う。
データ記憶装置110は、信号ライン120を介してストローク及び画像ワークフロー・サーバ106に結合される。別の実施例では、データ記憶装置110は、ネットワーク104により、ストローク及び画像ワークフロー・サーバ106に結合される。例えば、前述の別の実施例では、データ記憶装置110は、アマゾンS3などのオンライン・ストレージ・ウェブ・サービスである。データ記憶装置110は、不揮発性メモリ装置又は同様な永久的な記憶装置及び媒体である。データ記憶装置110は、プロセッサ302用のデータ及び命令を記憶し、フラッシュ・メモリ装置、DVD−RW装置、DVD−RAM装置、DVD−ROM装置、CD−ROM装置、フロッピー(登録商標)・ディスク・ドライブ、ハード・ディスク・ドライブを含む1つ又は複数の装置を含む。データ記憶装置110は、処理ログなどのワークフロー処理についての情報を記憶するために使用される。
サービス・プロバイダのコンピュータ122a乃至122nは、パソコンやハードウェア・サーバなどの一般的なタイプのものである。サービス・プロバイダ・コンピュータ122a乃至122nは、それぞれ、信号ライン124a乃至124nにより、ネットワーク104に結合される。一実施例では、サービス・プロバイダ・コンピュータ122a乃至122nは、ストローク及び画像ワークフロー・サーバ106にアクセスし、ストローク及び画像ワークフロー・サーバ106と通信して、より大きなワークフローの一部である部分又はタスクを行う。一実施例では、サービス・プロバイダ・コンピュータ122a乃至122nはワークフローの一部分又はタスクを行うのに必要な文書及び他の情報を受け取るようストローク及び画像ワークフロー・サーバ106と対話するクライアント・アプリケーションを含む。クライアント・アプリケーションは更に、ストローク及び画像ワークフロー・サーバ106に、処理済文書、他の処理済情報、又は結果を返信する役割も果たす。クライアント・アプリケーションは更に、制御、エラー処理、及び他の機能のために、サービス・プロバイダ・コンピュータ122a乃至122nと、ストローク及び画像ワークフロー・サーバ106との間の通信を制御し、処理する。例えば、クライアント・アプリケーションは、特定のジョブの実行に関する統計を処理するためにサービス・プロバイダ属性収集器608(図6)と通信し得る。あるいは、クライアント・アプリケーションは、特定の形態の処理のステータス又は完了を検証するために、ストローク及び画像ワークフロー・サーバ106の検証モジュール430(図4参照)と通信し得る。
サービス・プロバイダ・コンピュータ122a乃至122nは、種々の機能の何れかを行うよう構成される。上記種々の機能は、限定列挙でないが、テキスト対音声変換、言語変換、フォーマット変換、スペルチェック、フォーマッティング、OCR、プルーフリーディング、サード・パーティー・システムへの入力、画像抽出、文書記憶及び保存等などである。サービス・プロバイダ・コンピュータ122a乃至122nは、ワークフローの中間段階として電子文書を処理するよう構成される。一実施例では、サービス・プロバイダ・コンピュータ122a乃至122nそれぞれは別個のエンティティによって所有され、操作され、サービス・プロバイダ・コンピュータ122a乃至122nそれぞれは各種機能を提供する。種々の属性で、同じサービス又は機能を提供する複数のサービス・プロバイダ・コンピュータ122a乃至122nが存在し得るということを当業者は認識するであろう。その結果、サービス・プロバイダ・コンピュータ122a乃至122nは、ストローク及び画像ワークフロー・サーバ106によって割り当てられたタスク又はジョブをプロバイダが争う市場を提供する。最後に、他の実施例では、サービス・プロバイダ・コンピュータ122a乃至122nは、ストローク及び画像ワークフロー・サーバ106の機能の一部を含み、携帯用計算装置102a乃至102nと直接、通信する。以下の多くの場合では、「サービス・プロバイダ」の語は、前述のサービス・プロバイダ・コンピュータ122a乃至122nを表すよう同義に使用される。
図1のシステムは、1つのストローク画像ワークフロー・サーバ106のみを示すが、例えば、他の機能、企業、機関、組織構造に特化した何れかの数の更なるワークフロー・サーバが存在し得るということを理解すべきである。計算パッド202(図2)は、2つ以上のストローク及び画像ワークフロー・サーバ106と通信し得る。特定のページ、又は文書のうちの部分は、別々のワークフロー・サーバに関連付け得る。更に、複合文書の一部を、複合文書全部を送出するのでなく、転送することが可能である。
携帯用計算装置 102
次に図2A、図2B、及び図3を参照すれば、携帯用計算装置102の実施例を更に詳細に説明する。携帯用計算装置102は計算パッド202及びスタイラス204を備える。計算パッド202は、画像を表示し、画像上に書き込まれた何れかのストロークを記録する。ストロークは、通常、紙上にペンで書かれたかのように画像上に直ちに表示される。ストロークは更に、通常、一連の点又はセグメントとして捕捉される。通常、特定のタイミング情報がストロークによって捕捉され、時には、圧力情報が捕捉される。パッドとの至近性に対する、パッドとの接触を示す「ペン・アップ」及び「ペン・ダウン」も、ストロークによって記録し得る。一部の場合には、スタイラス204は、識別子あるいはボタンあるいは別々の「端部」を有し得、これも、ストロークにより、記録することが可能である。
計算パッド202は、ディスプレイ装置206と、ストローク捕捉装置及びモジュール208と、複数の入力装置210乃至216と、カメラ218と、出力装置220と、プロセッサ302と、メモリ304と、通信装置306と、一意の装置識別子の記憶装置308とを備える。計算パッド202は、更に、クロック310と、メタデータ・モジュール312と、ロギング・モジュール314と、文書転送モジュール316と、文書作成モジュール318と、バス320と、提示モジュール322と、他のアプリケーション324と、位置バー及びブックマーク・モジュール328とを備える。
次に図2A及び図2Bを参照するに、計算パッド202の一実施例を示す。本実施例では、ディスプレイ装置206は、イーインク(E−ink)社によって製造・販売されるものなどの電子ペーパー・ディスプレイである。他の実施例では、ディスプレイ装置206は、液晶ディスプレイ(LCD)又は何れかの他の同様に装備されたディスプレイ装置、画面、又はモニタである。ディスプレイ装置206は、本明細書及び特許請求の範囲記載の電子画像及びデータを表示するよう装備された何れかの装置を表す。ディスプレイ装置206は、少なくとも小さな情報「ページ」を示すために十分なサイズに設定される。別々の実施例では、ディスプレイは2値であり(画素の場合、別々の2つの値のみ)であるか、モノクロ(一色の複数の色合い)であるか、又は複数の色及び色合いを可能にする。ディスプレイ装置206は好ましくは、軽量の低電力ディスプレイである。一実施例では、ディスプレイ装置206は、屋外での使用のための発光でなく反射光を使用し、使用する電力は少ない。ディスプレイ装置206は、更に、上記ディスプレイ装置がない場合には紙上に表示され得る情報を表示するために高解像度を有する。しかし、ディスプレイ装置206は、LCDディスプレイに共通の60Hzのリフレッシュ・レートよりもずっと低い更新速度を許容する。
次に図2A、図2B、及び図3を参照すれば、携帯用計算装置102の実施例を更に詳細に説明する。携帯用計算装置102は計算パッド202及びスタイラス204を備える。計算パッド202は、画像を表示し、画像上に書き込まれた何れかのストロークを記録する。ストロークは、通常、紙上にペンで書かれたかのように画像上に直ちに表示される。ストロークは更に、通常、一連の点又はセグメントとして捕捉される。通常、特定のタイミング情報がストロークによって捕捉され、時には、圧力情報が捕捉される。パッドとの至近性に対する、パッドとの接触を示す「ペン・アップ」及び「ペン・ダウン」も、ストロークによって記録し得る。一部の場合には、スタイラス204は、識別子あるいはボタンあるいは別々の「端部」を有し得、これも、ストロークにより、記録することが可能である。
計算パッド202は、ディスプレイ装置206と、ストローク捕捉装置及びモジュール208と、複数の入力装置210乃至216と、カメラ218と、出力装置220と、プロセッサ302と、メモリ304と、通信装置306と、一意の装置識別子の記憶装置308とを備える。計算パッド202は、更に、クロック310と、メタデータ・モジュール312と、ロギング・モジュール314と、文書転送モジュール316と、文書作成モジュール318と、バス320と、提示モジュール322と、他のアプリケーション324と、位置バー及びブックマーク・モジュール328とを備える。
次に図2A及び図2Bを参照するに、計算パッド202の一実施例を示す。本実施例では、ディスプレイ装置206は、イーインク(E−ink)社によって製造・販売されるものなどの電子ペーパー・ディスプレイである。他の実施例では、ディスプレイ装置206は、液晶ディスプレイ(LCD)又は何れかの他の同様に装備されたディスプレイ装置、画面、又はモニタである。ディスプレイ装置206は、本明細書及び特許請求の範囲記載の電子画像及びデータを表示するよう装備された何れかの装置を表す。ディスプレイ装置206は、少なくとも小さな情報「ページ」を示すために十分なサイズに設定される。別々の実施例では、ディスプレイは2値であり(画素の場合、別々の2つの値のみ)であるか、モノクロ(一色の複数の色合い)であるか、又は複数の色及び色合いを可能にする。ディスプレイ装置206は好ましくは、軽量の低電力ディスプレイである。一実施例では、ディスプレイ装置206は、屋外での使用のための発光でなく反射光を使用し、使用する電力は少ない。ディスプレイ装置206は、更に、上記ディスプレイ装置がない場合には紙上に表示され得る情報を表示するために高解像度を有する。しかし、ディスプレイ装置206は、LCDディスプレイに共通の60Hzのリフレッシュ・レートよりもずっと低い更新速度を許容する。
ディスプレイ装置206に合わせて、ディジタル化タブレット又はグラフィクス・パッドなどのストローク捕捉装置208が存在している。ストローク捕捉装置208は、ディスプレイの上方、下方又は周辺にあり得る受信器を備えた電磁検出装置、若しくは光検出装置、又は接触検出装置である。ストローク捕捉装置208は、スタイラス204、又は指又は他の手段からのストロークを受け付けることができる。ストローク捕捉装置208は、スタイラス204のセンサであり、認識可能な手書き、印刷、及び他の図を捕捉するのに十分な解像度を有する。一実施例では、ディスプレイ装置206には、透明のタッチ感応パネルがディスプレイ装置206の画面を覆うタッチ画面が装備される。一実施例では、ストローク捕捉装置208は、ワコム(Wacom)社によって製造し、販売されるディジタイザである。別の実施例では、ストローク捕捉装置208は、単一の接触点の水平位置及び垂直位置を返す単純なセンサである。更に別の実施例では、圧力、位置、時間の示度を返し、(例えば、消去するために)スタイラスが反転しているか、又は、ボタンがスタイラス上で押されているかのスタイラス204のID番号若しくはタイプも返す複雑な複数のセンサである。一部のセンサは複数の接触点を返し得る。ストローク捕捉装置208は、ストローク捕捉装置208の一部であるか、又は、ストローク捕捉モジュール208と通信するよう適合される。
スタイラス204に加えて、計算パッド202は、コマンドを入力するために複数の入力装置210乃至216を提供する。図2Aに示すように、計算パッド202の上端上の第1の入力装置210(ボタン)は、選択されると、計算パッド202をオン/オフにする。一実施例では、第1の入力装置210(ボタン)は、計算パッド20をスリープ・モードに入れるよう、短い持続時間の間、選択し、計算パッド202をオフにするよう、長い持続時間の間、押し下げることが可能である。第2の入力装置212(ボタン)は、カメラ218の動作を制御し、選択されると、カメラ218に画像を捕捉させる。第3の入力装置214(ボタン)は、選択されると、文書の注釈が完了しており、文書は計算パッド202によって送出される。第4の入力装置216(ボタン)の対は、ユーザが文書の次のページ又は先行ページに移行することを可能にする。当業者は、ボタンとしての前述の入力装置が複数の入力装置210乃至216の一実施例に過ぎないことを認識するであろう。又、当業者は、本発明の本実施例の範囲内に、より少ない数のボタン若しくは入力装置、又はより多い数のボタン若しくは入力装置の種々の他の構成が存在しているということを認識するであろう。特に、別の実施例では、計算パッド202は非常に少ない数のボタンを有する(か、又はボタンを有しない)。ボタンが、紙に似ていると認識されている装置を妨げ得るからである。
前述の実施例では、ネットワーク接続性が存在している限り、ストローク及び他のメタデータが連続して送信される。ページ、又はページの組の完了は、パッド上の「送出」ボタン又は「リジェクト」ボタンを押すことによって示し得るか、又は、表示されたページ上に領域が存在し得、上記領域にストロークを加えることにより、適切なデータの送出をもたらし得る。複数の入力装置210乃至216について各種の数及び構成が存在しているということを当業者は認識するであろう。例えば、別の構成は、電源用に1つのボタンを含み、送出用に1つのボタンを含む。第2の例では、1つ又は複数のボタン、及び指の位置に応じて多数のページのうちのページを選ぶためのスライダを有する。
次に図2Bを参照すれば、計算パッド202の裏側を示す。計算パッド202は、裏面側にカメラ218を含み、表面側に出力装置220を含む。図2Bに示すように、カメラ218は、上部の左隅部の、計算パッド202の裏面側でそのレンズが外側を向いて配置される。カメラ218は、携帯電話機上、又はノートブック型コンピュータ上で利用可能なものなどの通常のタイプのものである。出力装置220は、図2Aに示し、計算パッド202の表面側にある。出力装置220は、小さな画像を表示する装置であり、カメラのビューファインダーとして使用される。一実施例では、出力装置220は、有機発光ダイオード(OLED)であり、カメラが動作状態にある場合にのみ、動作状態にある。別の実施例では、出力装置220は、装置のステータスを示すために使用される。装置のステータスは、1)計算パッド202に電源があって、動作状態にあるか否か、2)計算パッド202にネットワーク接続性があるか否か、3)計算パッド202が、複合文書を送受信するか否か等などである。出力装置220の一部であり得る、上記のものを越える更なる各種のステータス表示子が存在し得るか、又はそのステータスがディスプレイ装置206(主ディスプレイ)を介して供給され得るということを当業者は認識するであろう。
次に更に図3を参照すれば、計算パッド202の残りの構成部分を説明する。
スタイラス204に加えて、計算パッド202は、コマンドを入力するために複数の入力装置210乃至216を提供する。図2Aに示すように、計算パッド202の上端上の第1の入力装置210(ボタン)は、選択されると、計算パッド202をオン/オフにする。一実施例では、第1の入力装置210(ボタン)は、計算パッド20をスリープ・モードに入れるよう、短い持続時間の間、選択し、計算パッド202をオフにするよう、長い持続時間の間、押し下げることが可能である。第2の入力装置212(ボタン)は、カメラ218の動作を制御し、選択されると、カメラ218に画像を捕捉させる。第3の入力装置214(ボタン)は、選択されると、文書の注釈が完了しており、文書は計算パッド202によって送出される。第4の入力装置216(ボタン)の対は、ユーザが文書の次のページ又は先行ページに移行することを可能にする。当業者は、ボタンとしての前述の入力装置が複数の入力装置210乃至216の一実施例に過ぎないことを認識するであろう。又、当業者は、本発明の本実施例の範囲内に、より少ない数のボタン若しくは入力装置、又はより多い数のボタン若しくは入力装置の種々の他の構成が存在しているということを認識するであろう。特に、別の実施例では、計算パッド202は非常に少ない数のボタンを有する(か、又はボタンを有しない)。ボタンが、紙に似ていると認識されている装置を妨げ得るからである。
前述の実施例では、ネットワーク接続性が存在している限り、ストローク及び他のメタデータが連続して送信される。ページ、又はページの組の完了は、パッド上の「送出」ボタン又は「リジェクト」ボタンを押すことによって示し得るか、又は、表示されたページ上に領域が存在し得、上記領域にストロークを加えることにより、適切なデータの送出をもたらし得る。複数の入力装置210乃至216について各種の数及び構成が存在しているということを当業者は認識するであろう。例えば、別の構成は、電源用に1つのボタンを含み、送出用に1つのボタンを含む。第2の例では、1つ又は複数のボタン、及び指の位置に応じて多数のページのうちのページを選ぶためのスライダを有する。
次に図2Bを参照すれば、計算パッド202の裏側を示す。計算パッド202は、裏面側にカメラ218を含み、表面側に出力装置220を含む。図2Bに示すように、カメラ218は、上部の左隅部の、計算パッド202の裏面側でそのレンズが外側を向いて配置される。カメラ218は、携帯電話機上、又はノートブック型コンピュータ上で利用可能なものなどの通常のタイプのものである。出力装置220は、図2Aに示し、計算パッド202の表面側にある。出力装置220は、小さな画像を表示する装置であり、カメラのビューファインダーとして使用される。一実施例では、出力装置220は、有機発光ダイオード(OLED)であり、カメラが動作状態にある場合にのみ、動作状態にある。別の実施例では、出力装置220は、装置のステータスを示すために使用される。装置のステータスは、1)計算パッド202に電源があって、動作状態にあるか否か、2)計算パッド202にネットワーク接続性があるか否か、3)計算パッド202が、複合文書を送受信するか否か等などである。出力装置220の一部であり得る、上記のものを越える更なる各種のステータス表示子が存在し得るか、又はそのステータスがディスプレイ装置206(主ディスプレイ)を介して供給され得るということを当業者は認識するであろう。
次に更に図3を参照すれば、計算パッド202の残りの構成部分を説明する。
プロセッサ302は、計算を行い、電子表示信号をディスプレイ装置206に供給し、ストローク入力を検出し、処理するために算術論理装置、マイクロプロセッサ、汎用コントローラ、又は特定の他のプロセッサ・アレイを含む。プロセッサ302は、計算パッド202の他の構成部分と通信するためにバス320に結合される。プロセッサ302は、データ信号を処理し、高度命令セットコンピュータ(CISC)アーキテクチャ、縮小命令セットコンピュータ(RISC)アーキテクチャ、又は命令セットの組み合わせを実現するアーキテクチャを含む種々の計算アーキテクチャを含み得る。単一のプロセッサのみを図3に示しているが、複数のプロセッサを含み得る。計算パッド202の処理機能は、ストロークの伝送、記録ストローク、及び画像の表示のサポートに制限され得る。処理機能は、各種画像処理、ストローク処理、又は認識タスクを含む高度なタスクを行うのに十分であり得る。他のプロセッサ、オペレーティング・システム、センサ、ディスプレイ、及び物理的な構成が考えられるということが当業者に明らかになるであろう。計算パッド202は、限定列挙でないが、ウィンドウズ(登録商標)、MacOS X、アンドロイド、又はUNIX(登録商標)ベースのオペレーティング・システムなどの、プロセッサによって実行可能なオペレーティング・システムも含む。
メモリ304は、プロセッサ302によって実行され得るデータ及び/又は命令を記憶する。命令及び/又はデータは、本明細書及び特許請求の範囲記載の手法の何れか、及び/又は全てを行うためのコードを含み得る。メモリ304は、ダイナミック・ランダム・アクセス・メモリ(DRAM)装置、スタティック・ランダム・アクセス・メモリ(SRAM)装置、フラッシュ・メモリ、又は当技術分野において知られている特定の他のメモリ装置であり得る。一実施例では、メモリ304は、より恒久的にログ情報を記憶するためのフラッシュ・ドライブ又はハード・ディスク・ドライブなどの不揮発性メモリも含む。メモリ304は、計算パッド202の他の構成部分と通信するためにバス320によって結合される。
通信装置306はアンテナ及びバス320に結合される。別の実施例では、通信装置306は、ネットワーク104に対する直接の物理的接続のためのポートを提供し得る。通信装置306は、複合文書を送受信するためのトランシーバを含む。一実施例では、通信装置306は、アクセス・ポイントとの無線通信のためのワイファイ(Wi−Fi)トランシーバを含む。別の実施例では、通信装置306は、他の装置と無線通信するためにブルートゥース(登録商標)トランシーバを含む。更に別の実施例では、通信装置306は、セルラー通信ネットワークを介してデータを送受信するセルラー通信トランシーバを含む。上記データは、ショート・メッセージング・サービス(SMS)、マルチメディア・メッセージング・サービス(MMS)、ハイパーテキスト転送プロトコル(HTTP)、直接データ接続、WAP、電子メール等などである。更に別の実施例では、通信装置306は、限定列挙でないが、USB、SD、CAT−5等などの、有線の接続性のためのポートを含む。通信装置306は、複数の処理システムを含み得るネットワーク104にプロセッサ302をつなぐ。処理システムのネットワークは、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)(例えば、インターネット)、及び/又は複数の装置が通信し得る相互接続された何れかの他のデータ経路を含み得る。通信装置306は更に、当業者が分かるように、TCP/IP、HTTP、HTTPS、及びSMTPなどの標準ネットワーク・プロトコルを使用してファイル(メディア・オブジェクト)を配信するためにネットワーク104との他の通常の接続も提供する。
計算パッド202は、一意の装置識別子の記憶装置308を含む。計算パッド202は、必要に応じて他の構成部分に、上記一意の識別子を供給するためにバス320に結合される。一実施例では、記憶装置は、一意の装置識別子を記憶するためのリード・オンリ・メモリである。別の実施例では、一意の装置識別子の記憶装置308は、公開鍵・秘密鍵の対を記憶する不揮発性の記憶装置である。種々の通信プロトコルのために、又はストロークが記録された場所を示すために使用される一意の識別子を計算パッド202が有することは有用である。一実施例では、一意の識別子は、計算パッド202内のネットワーク・チップのハードウェアMACアドレスである。一意の識別子は、メモリ304内の不揮発性記憶装置内にあるか、又は通信装置306などの別の機能ブロックの内部部分であり得る。別の実施例では、計算パッド202上のメモリ・カードに関連付けられた一意のIDであり、それにより、特定の装置との関連付けは、メモリ・カードが移動した場合に、別の装置に移動することになる。これは、予期される挙動であり得る。一意の識別子は、種々の動作に有用であるが、通常、提供されるセキュリティはあまりない。ハードウェアMACアドレスは例えば、他の装置によって模倣することが可能である。よって、RSA(登録商標)などの公開鍵暗号システムからの鍵の対と装置を関連付けることが時には有意義である。一実施例では、計算パッド202は、配布される公開鍵及び秘密鍵によって製造されるか、又は構成される。次いで、計算パッド202は、装置上で生じるストローク、画像、ログ、又は他の媒体のディジタル署名のためにその秘密鍵を使用することが可能である。前述の媒体を検証するために公開鍵が使用される場合もある。更に、公開鍵は、装置との秘密通信を提供するために使用することができる。暗号化のために装置の公開鍵を使用することにより、単に特定の計算パッド202を目的とするページ画像又はメタデータへの他者のアクセスが制限される。
クロック310は、通常タイプのものであり、計算パッド202の局所時間の示度を提供する。特に、クロック310は、複合文書が処理される局所時間を提供するために使用される。この時間値は、ロギング・モジュール314を使用して局所ログ・ファイル内のデータとともに記憶される。クロック310は、バス320(システム・バス)を使用してロギング・モジュール314及びプロセッサにこの情報を通信するよう適合される。
メモリ304は、プロセッサ302によって実行され得るデータ及び/又は命令を記憶する。命令及び/又はデータは、本明細書及び特許請求の範囲記載の手法の何れか、及び/又は全てを行うためのコードを含み得る。メモリ304は、ダイナミック・ランダム・アクセス・メモリ(DRAM)装置、スタティック・ランダム・アクセス・メモリ(SRAM)装置、フラッシュ・メモリ、又は当技術分野において知られている特定の他のメモリ装置であり得る。一実施例では、メモリ304は、より恒久的にログ情報を記憶するためのフラッシュ・ドライブ又はハード・ディスク・ドライブなどの不揮発性メモリも含む。メモリ304は、計算パッド202の他の構成部分と通信するためにバス320によって結合される。
通信装置306はアンテナ及びバス320に結合される。別の実施例では、通信装置306は、ネットワーク104に対する直接の物理的接続のためのポートを提供し得る。通信装置306は、複合文書を送受信するためのトランシーバを含む。一実施例では、通信装置306は、アクセス・ポイントとの無線通信のためのワイファイ(Wi−Fi)トランシーバを含む。別の実施例では、通信装置306は、他の装置と無線通信するためにブルートゥース(登録商標)トランシーバを含む。更に別の実施例では、通信装置306は、セルラー通信ネットワークを介してデータを送受信するセルラー通信トランシーバを含む。上記データは、ショート・メッセージング・サービス(SMS)、マルチメディア・メッセージング・サービス(MMS)、ハイパーテキスト転送プロトコル(HTTP)、直接データ接続、WAP、電子メール等などである。更に別の実施例では、通信装置306は、限定列挙でないが、USB、SD、CAT−5等などの、有線の接続性のためのポートを含む。通信装置306は、複数の処理システムを含み得るネットワーク104にプロセッサ302をつなぐ。処理システムのネットワークは、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)(例えば、インターネット)、及び/又は複数の装置が通信し得る相互接続された何れかの他のデータ経路を含み得る。通信装置306は更に、当業者が分かるように、TCP/IP、HTTP、HTTPS、及びSMTPなどの標準ネットワーク・プロトコルを使用してファイル(メディア・オブジェクト)を配信するためにネットワーク104との他の通常の接続も提供する。
計算パッド202は、一意の装置識別子の記憶装置308を含む。計算パッド202は、必要に応じて他の構成部分に、上記一意の識別子を供給するためにバス320に結合される。一実施例では、記憶装置は、一意の装置識別子を記憶するためのリード・オンリ・メモリである。別の実施例では、一意の装置識別子の記憶装置308は、公開鍵・秘密鍵の対を記憶する不揮発性の記憶装置である。種々の通信プロトコルのために、又はストロークが記録された場所を示すために使用される一意の識別子を計算パッド202が有することは有用である。一実施例では、一意の識別子は、計算パッド202内のネットワーク・チップのハードウェアMACアドレスである。一意の識別子は、メモリ304内の不揮発性記憶装置内にあるか、又は通信装置306などの別の機能ブロックの内部部分であり得る。別の実施例では、計算パッド202上のメモリ・カードに関連付けられた一意のIDであり、それにより、特定の装置との関連付けは、メモリ・カードが移動した場合に、別の装置に移動することになる。これは、予期される挙動であり得る。一意の識別子は、種々の動作に有用であるが、通常、提供されるセキュリティはあまりない。ハードウェアMACアドレスは例えば、他の装置によって模倣することが可能である。よって、RSA(登録商標)などの公開鍵暗号システムからの鍵の対と装置を関連付けることが時には有意義である。一実施例では、計算パッド202は、配布される公開鍵及び秘密鍵によって製造されるか、又は構成される。次いで、計算パッド202は、装置上で生じるストローク、画像、ログ、又は他の媒体のディジタル署名のためにその秘密鍵を使用することが可能である。前述の媒体を検証するために公開鍵が使用される場合もある。更に、公開鍵は、装置との秘密通信を提供するために使用することができる。暗号化のために装置の公開鍵を使用することにより、単に特定の計算パッド202を目的とするページ画像又はメタデータへの他者のアクセスが制限される。
クロック310は、通常タイプのものであり、計算パッド202の局所時間の示度を提供する。特に、クロック310は、複合文書が処理される局所時間を提供するために使用される。この時間値は、ロギング・モジュール314を使用して局所ログ・ファイル内のデータとともに記憶される。クロック310は、バス320(システム・バス)を使用してロギング・モジュール314及びプロセッサにこの情報を通信するよう適合される。
メタデータ・モジュール312は、文書からメタデータを抽出し、文書の一部としてメタデータを記憶するためのルーチンを含むソフトウェアである。一実施例では、メタデータ・モジュール312は、画像/ページ・メタデータ及び文書メタデータにアクセスするために、下記の機能を提供する旨の、プロセッサ302によって実行可能な命令である。別の実施例では、メタデータ・モジュール312は、ユーザ・インタフェースを提示し、ストローク情報を捕捉し、ワークフローに応じて文書をルーティングする(携帯用計算装置102との間で文書を送受信する)ためのソフト・ルーチンである。一実施例では、メタデータ・モジュール312は、メモリ304に記憶され、プロセッサ302によってアクセス可能であり、実行可能である。いずれにせよ、メタデータ・モジュール312は、プロセッサ302、及び計算パッド202の他の構成部分と協調し、通信するよう適合される。
ロギング・モジュール314は、メモリ304内に(特に、メモリ304の不揮発性記憶部分内に)局所ログを作成し、記憶するためのルーチンを含むソフトウェアである。一実施例では、ロギング・モジュール314は、ストローク及び画像ワークフロー・サーバ106及び計算パッド202において、もつれたハッシュ連鎖ログにメタデータを記憶するために、プロセッサ302によって実行可能なルーチンの組である。ロギング・モジュール314は、トランザクションにおけるワーフフロー完了の検証を提供するうえで特に重要である。一実施例では、ロギング・モジュール314は、その特定の計算パッド202のログをネットワーク上の公に利用可能な場所で公表又は記憶するためのルーチンも含む。ロギング・モジュール314は、プロセッサ302、メモリ304、及び通信装置306にバス320によって結合される。
文書転送モジュール316は、ストローク及び画像ワークフロー・サーバ106との間で文書を送受信するためのソフトウェア及びルーチンである。他の実施例では、限定列挙でないが、コンピュータ108、ストローク及び画像ワークフロー・サーバ106、又は他の携帯用計算装置102などの何れかの他の計算装置との間で、フォーマッティングされたメッセージなどの文書を送受信する。文書転送モジュール316は、プロセッサ302及び通信装置306との通信のためにバス320に結合される。文書転送モジュール316は、電子メール、ファイル転送、XMPP、又は専用アプリケーションなどにより、計算パッド202との間で文書、又はフォーマッティングされたメッセージを送受信する役割を果たす。
第1の実施例では、文書転送モジュール316は、インデクスとしての役目を担うディレクトリ構造を維持する、計算パッド202上で動作するクライアント・ソフトウェアである。文書転送モジュール316は、文書を、ストローク及び画像ワークフロー・サーバ106上の対応するインボックスからこのディレクトリに移動させる。計算パッド202のインボックス内の文書に注釈が付され、ユーザが送出命令を入力すると、文書転送モジュール316は、ディレクトリ構造から文書を除去し、更に処理するためにストローク及び画像ワークフロー・サーバ106に転送する。
第2の実施例では、文書転送モジュール316は、添付ファイルがある電子メールを受け取り、送出することができる電子メール・クライアントである。電子メール・クライアントは、プロセッサ302上で動作可能である。メール・サーバは通常、メール・クライアントにデータを伝送するためにPOPプロトコル又はIMAPプロトコルを使用し、計算パッド202は、何れかを使用するよう構成される。メッセージは、計算パッド202が直接使用可能なフォーマット(例えば、画像ファイルのアタッチメント)を有する。メッセージは、計算パッド202上の変換を必要とするフォーマット(例えば、pdf文書)を有する。あるいは、特別なメール・サーバは、パッドが複数のフォーマットをサポートする必要がないようにメッセージの変換を提供することが可能である。例えば、上述の部門内のインボックスなど、一度しか行ってはならないワークを配分するためにワークフローにおいて複数の装置が使用される場合、IMAPの使用が効果的である。複数の装置102a乃至nは、同じIMAPサーバ及び「ユーザ名」を有するクライアントとして構成し得る。装置102a乃至nの群は、形態全てを「インボックス」に表示し得る。何れかの装置102a乃至n上の何れかのユーザが、「処理済」としてフォームにマーキングすると、装置はそのメッセージをインボックスから出し、場合によっては、IMAPサーバ上の「処理済」ボックスに入れる。他の装置102a乃至nは、IMAPサーバ上の「インボックス」を検査すると、ページがもう存在しておらず、それをもう表示しないと判定する。パッドがページ若しくはストローク又は複数のページ及びストロークを送出する必要があると、パッドは、電子メール・クライアントとしてふるまい得る。パッドは、圧縮され、場合によっては、単一のファイルに合成されたディレクトリ構造のページを伴ってメールを送出し得る。
ロギング・モジュール314は、メモリ304内に(特に、メモリ304の不揮発性記憶部分内に)局所ログを作成し、記憶するためのルーチンを含むソフトウェアである。一実施例では、ロギング・モジュール314は、ストローク及び画像ワークフロー・サーバ106及び計算パッド202において、もつれたハッシュ連鎖ログにメタデータを記憶するために、プロセッサ302によって実行可能なルーチンの組である。ロギング・モジュール314は、トランザクションにおけるワーフフロー完了の検証を提供するうえで特に重要である。一実施例では、ロギング・モジュール314は、その特定の計算パッド202のログをネットワーク上の公に利用可能な場所で公表又は記憶するためのルーチンも含む。ロギング・モジュール314は、プロセッサ302、メモリ304、及び通信装置306にバス320によって結合される。
文書転送モジュール316は、ストローク及び画像ワークフロー・サーバ106との間で文書を送受信するためのソフトウェア及びルーチンである。他の実施例では、限定列挙でないが、コンピュータ108、ストローク及び画像ワークフロー・サーバ106、又は他の携帯用計算装置102などの何れかの他の計算装置との間で、フォーマッティングされたメッセージなどの文書を送受信する。文書転送モジュール316は、プロセッサ302及び通信装置306との通信のためにバス320に結合される。文書転送モジュール316は、電子メール、ファイル転送、XMPP、又は専用アプリケーションなどにより、計算パッド202との間で文書、又はフォーマッティングされたメッセージを送受信する役割を果たす。
第1の実施例では、文書転送モジュール316は、インデクスとしての役目を担うディレクトリ構造を維持する、計算パッド202上で動作するクライアント・ソフトウェアである。文書転送モジュール316は、文書を、ストローク及び画像ワークフロー・サーバ106上の対応するインボックスからこのディレクトリに移動させる。計算パッド202のインボックス内の文書に注釈が付され、ユーザが送出命令を入力すると、文書転送モジュール316は、ディレクトリ構造から文書を除去し、更に処理するためにストローク及び画像ワークフロー・サーバ106に転送する。
第2の実施例では、文書転送モジュール316は、添付ファイルがある電子メールを受け取り、送出することができる電子メール・クライアントである。電子メール・クライアントは、プロセッサ302上で動作可能である。メール・サーバは通常、メール・クライアントにデータを伝送するためにPOPプロトコル又はIMAPプロトコルを使用し、計算パッド202は、何れかを使用するよう構成される。メッセージは、計算パッド202が直接使用可能なフォーマット(例えば、画像ファイルのアタッチメント)を有する。メッセージは、計算パッド202上の変換を必要とするフォーマット(例えば、pdf文書)を有する。あるいは、特別なメール・サーバは、パッドが複数のフォーマットをサポートする必要がないようにメッセージの変換を提供することが可能である。例えば、上述の部門内のインボックスなど、一度しか行ってはならないワークを配分するためにワークフローにおいて複数の装置が使用される場合、IMAPの使用が効果的である。複数の装置102a乃至nは、同じIMAPサーバ及び「ユーザ名」を有するクライアントとして構成し得る。装置102a乃至nの群は、形態全てを「インボックス」に表示し得る。何れかの装置102a乃至n上の何れかのユーザが、「処理済」としてフォームにマーキングすると、装置はそのメッセージをインボックスから出し、場合によっては、IMAPサーバ上の「処理済」ボックスに入れる。他の装置102a乃至nは、IMAPサーバ上の「インボックス」を検査すると、ページがもう存在しておらず、それをもう表示しないと判定する。パッドがページ若しくはストローク又は複数のページ及びストロークを送出する必要があると、パッドは、電子メール・クライアントとしてふるまい得る。パッドは、圧縮され、場合によっては、単一のファイルに合成されたディレクトリ構造のページを伴ってメールを送出し得る。
第3の実施例では、文書転送モジュール316は、ファイル転送を行うためのルーチンである。計算パッド202との間で文書を移動させるために種々のファイル転送方法を使用することが可能である。計算パッド202は、ftp、http、又はwebdavサーバを実行させることが可能であり、他の装置は計算パッド202上の文書をプッシュし、又はプルすることが可能である。計算パッド202は更に、やはり、ftp、http、rsync、webdav、又は別のプロトコルを介して新たな文書を得るか、又は外部サーバに新たな文書を送るよう構成することが可能である。
第4の実施例では、文書転送モジュール316は、MMS、又は他の通信プロトコルを介した通信用などのクライアント通信プログラムである。インスタント・メッセージングにおいて使用されるプロトコルであるXMPPは、パッドとの間の文書及びストロークの通信を提供するために使用される。インスタント・メッセージング・プロトコルは有用である。別のメンバーがメッセージを送信している間にも、メッセージング・グループの何れかのメンバーがメッセージを開始することが可能であるからである。計算パッド202にとって、これは、パッドからサーバにストロークが送信されるのと同時にサービスがパッド用の画像を送信することを可能にする。計算パッド202の群がディスプレイ空間を共有しており、よって、上記群のメンバー全てが、新たなストロークについて通知され得る場合に、インスタント・メッセージング・プロトコルは更に有用であり得る。
第5の実施例では、文書転送モジュール316は、カスタム・アプリケーションである。当然、情報は、パッドに特有のAPIを使用してパッドと協働するよう企図された特定用途のアプリケーションにより、計算パッド202に転送し得る。インストラクタは、ファイルを移動させるために使用される特定の方法を知ることなく、パッドの図表表現上にワークシートを「ドラッグ・アンド・ドロップ」したいことがあり得る。
文書作成モジュール318は、新たな文書を作成するためのソフトウェア又はルーチンである。文書作成モジュール318はプロセッサ302上で動作可能であり、計算パッド202の他の構成部分と通信するためにバス320に結合される。文書作成モジュール318は、入力装置210乃至216、又はストローク捕捉装置208からの信号に応答する。文書作成モジュール318は、文書のテンプレート・フォームをメモリ304に記憶する。ユーザ入力に応じて、文書作成モジュール318は、記憶されたテンプレート・フォームにアクセスし、選択されたものを複製して、テンプレート・フォームから、新たな文書を作成する。作成されると、メモリ304に記憶された文書は、提示モジュール322によって維持されるインボックス・リストに加えられ、何れかの他の文書と同様に、他の方法で、編集可能であり、操作可能であり、送信可能である。
バス320は、計算パッド202にわたり、情報及びデータを通信するための共有バスを表す。バス320は、業界標準アーキテクチャ(ISA)バス、周辺装置相互接続(PCI)バス、ユニバーサル・シリアル・バス(USB)、又は同様な機能を提供するために当技術分野において知られている特定の他のバスを含む1つ又は複数のバスを表し得る。バス320を介してプロセッサ302に結合された更なる構成部分には、ディスプレイ装置206、ストローク捕捉装置208(及びモジュール)、複数の入力装置210乃至216、出力装置220、プロセッサ302が含まれる。更に、メモリ304、通信装置306、一意の装置識別子の記憶装置308、クロック310、メタデータ・モジュール312、ロギング・モジュール314、文書転送モジュール316、提示モジュール322、及び他のアプリケーション324が含まれる。更に、機能要素間の最も効率的な通信を提供するよう企図された複数のバスが計算システムにおいて存在し得る。
提示モジュール322は、ディスプレイ装置206上に文書及びインボックスを表示し、入力装置210乃至216からの入力に応じて画像の表示を調節するためのソフトウェア及びルーチンである。提示モジュール322は、図2、図8A、及び図8Bに示すデュアル・モード・ユーザ・インタフェースを生成するルーチンを実行する。提示モジュール322は更に、位置バー及びブックマーク・モジュール328と協調して、新たなグラフィカル・ユーザ・インタフェースを生成する。一実施例では、提示モジュール322は、ディスプレイ装置206上に画像を表示させるためにプロセッサ302によって実行可能なシン・クライアント・ルーチンである。提示モジュール322は、ディスプレイ装置206、プロセッサ302、メモリ304、並びに、位置バー及びブックマーク・モジュール328にバス320によって結合される。
他のアプリケーション324は、他の各種機能のためにプロセッサ302によって実行可能な他のソフトウェア及びルーチンを含む。一実施例では、1つ又は複数のアプリケーション・プログラムがプロセッサ302によって実行される。上記1つ又は複数のアプリケーション・プログラムは、限定列挙でないが、ワード・プロセッシング・アプリケーション、電子メール・アプリケーション、金融アプリケーション、及びウェブ・ブラウザ・アプリケーションを含む。
第4の実施例では、文書転送モジュール316は、MMS、又は他の通信プロトコルを介した通信用などのクライアント通信プログラムである。インスタント・メッセージングにおいて使用されるプロトコルであるXMPPは、パッドとの間の文書及びストロークの通信を提供するために使用される。インスタント・メッセージング・プロトコルは有用である。別のメンバーがメッセージを送信している間にも、メッセージング・グループの何れかのメンバーがメッセージを開始することが可能であるからである。計算パッド202にとって、これは、パッドからサーバにストロークが送信されるのと同時にサービスがパッド用の画像を送信することを可能にする。計算パッド202の群がディスプレイ空間を共有しており、よって、上記群のメンバー全てが、新たなストロークについて通知され得る場合に、インスタント・メッセージング・プロトコルは更に有用であり得る。
第5の実施例では、文書転送モジュール316は、カスタム・アプリケーションである。当然、情報は、パッドに特有のAPIを使用してパッドと協働するよう企図された特定用途のアプリケーションにより、計算パッド202に転送し得る。インストラクタは、ファイルを移動させるために使用される特定の方法を知ることなく、パッドの図表表現上にワークシートを「ドラッグ・アンド・ドロップ」したいことがあり得る。
文書作成モジュール318は、新たな文書を作成するためのソフトウェア又はルーチンである。文書作成モジュール318はプロセッサ302上で動作可能であり、計算パッド202の他の構成部分と通信するためにバス320に結合される。文書作成モジュール318は、入力装置210乃至216、又はストローク捕捉装置208からの信号に応答する。文書作成モジュール318は、文書のテンプレート・フォームをメモリ304に記憶する。ユーザ入力に応じて、文書作成モジュール318は、記憶されたテンプレート・フォームにアクセスし、選択されたものを複製して、テンプレート・フォームから、新たな文書を作成する。作成されると、メモリ304に記憶された文書は、提示モジュール322によって維持されるインボックス・リストに加えられ、何れかの他の文書と同様に、他の方法で、編集可能であり、操作可能であり、送信可能である。
バス320は、計算パッド202にわたり、情報及びデータを通信するための共有バスを表す。バス320は、業界標準アーキテクチャ(ISA)バス、周辺装置相互接続(PCI)バス、ユニバーサル・シリアル・バス(USB)、又は同様な機能を提供するために当技術分野において知られている特定の他のバスを含む1つ又は複数のバスを表し得る。バス320を介してプロセッサ302に結合された更なる構成部分には、ディスプレイ装置206、ストローク捕捉装置208(及びモジュール)、複数の入力装置210乃至216、出力装置220、プロセッサ302が含まれる。更に、メモリ304、通信装置306、一意の装置識別子の記憶装置308、クロック310、メタデータ・モジュール312、ロギング・モジュール314、文書転送モジュール316、提示モジュール322、及び他のアプリケーション324が含まれる。更に、機能要素間の最も効率的な通信を提供するよう企図された複数のバスが計算システムにおいて存在し得る。
提示モジュール322は、ディスプレイ装置206上に文書及びインボックスを表示し、入力装置210乃至216からの入力に応じて画像の表示を調節するためのソフトウェア及びルーチンである。提示モジュール322は、図2、図8A、及び図8Bに示すデュアル・モード・ユーザ・インタフェースを生成するルーチンを実行する。提示モジュール322は更に、位置バー及びブックマーク・モジュール328と協調して、新たなグラフィカル・ユーザ・インタフェースを生成する。一実施例では、提示モジュール322は、ディスプレイ装置206上に画像を表示させるためにプロセッサ302によって実行可能なシン・クライアント・ルーチンである。提示モジュール322は、ディスプレイ装置206、プロセッサ302、メモリ304、並びに、位置バー及びブックマーク・モジュール328にバス320によって結合される。
他のアプリケーション324は、他の各種機能のためにプロセッサ302によって実行可能な他のソフトウェア及びルーチンを含む。一実施例では、1つ又は複数のアプリケーション・プログラムがプロセッサ302によって実行される。上記1つ又は複数のアプリケーション・プログラムは、限定列挙でないが、ワード・プロセッシング・アプリケーション、電子メール・アプリケーション、金融アプリケーション、及びウェブ・ブラウザ・アプリケーションを含む。
位置バー及びブックマーク・モジュール328は、文書のページ間をたどり、ブックマーク機能を提供するために位置バーを提供する新たなグラフィカル・ユーザ・インタフェースを生成するためのソフトウェア及びルーチンである。位置バー及びブックマーク・モジュール328は、文書内のページ間で移動するために、操作可能なページ・ボックスを有する位置バーを提供するグラフィカル・ユーザ・インタフェースを生成する役割を果たす。位置バー及びブックマーク・モジュール328は、ストローク捕捉装置208(モジュール)からペン入力を受け取るよう適合され、ペン入力を命令又はコマンドとして解釈する。位置バーに沿ったページ・ボックスの位置を操作することにより、ユーザは、表示されているページを切り替えることが可能である。一実施例では、位置バー及びブックマーク・モジュール328は更に、ブックマーク又は参照機能を提供する。位置バー及びブックマーク・モジュール328は、ペン入力に応答して、位置バーに沿って参照マークを追加し、移動させ、又は削除する。参照マークがセットされると、位置バー及びブックマーク・モジュール328は、マーキングされた位置に移動させる旨のコマンドとして、参照マーク又はブックマークの近くの入力を解釈する。
最後に、計算パッド202は1つ又は複数の他のI/O装置326を含み得る。例えば、他のI/O装置326には、音を生成するためのスピーカ、音を記録するためのマイクロフォン、文書又は画像を記録するためのスキャナ又はカメラを含み得る。更に、他のI/O装置326には、加速度計、ページャ・モーター、又は触覚フィードバックのような他のセンサ若しくはフィードバック装置を含み得る。任意的には、他のI/O装置326は、オーディオ処理を容易にするために、1つ又は複数のアナログ・ディジタル変換器、若しくはディジタル・アナログ変換器、及び/又は1つ又は複数のディジタル信号プロセッサを含み得る。前述の他のI/O装置326は、プロセッサ302及びメモリ304と通信するためにバス320によって結合される。任意的には、マイクロコントローラは、電源システム制御を容易にし、低速の重要でないタスクからプロセッサ302(主プロセッサ)をオフロードするために、他のI/O装置326の一部として追加し得る。
最後に、計算パッド202は1つ又は複数の他のI/O装置326を含み得る。例えば、他のI/O装置326には、音を生成するためのスピーカ、音を記録するためのマイクロフォン、文書又は画像を記録するためのスキャナ又はカメラを含み得る。更に、他のI/O装置326には、加速度計、ページャ・モーター、又は触覚フィードバックのような他のセンサ若しくはフィードバック装置を含み得る。任意的には、他のI/O装置326は、オーディオ処理を容易にするために、1つ又は複数のアナログ・ディジタル変換器、若しくはディジタル・アナログ変換器、及び/又は1つ又は複数のディジタル信号プロセッサを含み得る。前述の他のI/O装置326は、プロセッサ302及びメモリ304と通信するためにバス320によって結合される。任意的には、マイクロコントローラは、電源システム制御を容易にし、低速の重要でないタスクからプロセッサ302(主プロセッサ)をオフロードするために、他のI/O装置326の一部として追加し得る。
ストローク及び画像ワークフロー・サーバ106
次に図4を参照して、ストローク及び画像ワークフロー・サーバ106の実施例を更に詳細に説明する。ストローク及び画像ワークフロー・サーバ106は、プロセッサ402と、メモリ404と、通信装置406と、文書転送モジュール408と、クロック410と、ワークフロー・モジュール412とを備える。ストローク及び画像ワークフロー・サーバ106は、更に、ロギング・モジュール416と、他のアプリケーション418と、バス420と、検証モジュール430と、サービス・プロバイダ選択モジュール432とを備える。別の実施例では、ストローク及び画像ワークフロー・サーバ106は更に、ディスプレイ装置422、出力装置424、一意の装置識別子の記憶装置426、及び入力装置428を備える。
ストローク及び画像ワークフロー・サーバ106の構成部分の一部が計算パッド202の構成部分と同一又は同様の機能を有するということを当業者は認識するであろう。よって、前述の構成部分の説明はここでは繰り返さないものとする。例えば、プロセッサ402、メモリ404、通信装置406、文書転送モジュール408、ロギング・モジュール416、クロック410は、図3の対応する構成と同様の機能を有する。又、他のアプリケーション418、ディスプレイ装置422、出力装置424、一意の装置識別子の記憶装置426、及び入力装置428は、図3の対応する構成と同様の機能を有する。図3の対応する構成は、プロセッサ302、メモリ304、通信装置306、文書転送モジュール316、ロギング・モジュール314、クロック310である。図3の対応する構成は、又、他のアプリケーション324、ディスプレイ装置206、出力装置220、一意の装置識別子の記憶装置308、入力装置210乃至216である。ストローク及び画像ワークフロー・サーバ106の構成部分と、計算パッド202の構成部分との間の差を一部、以下に記す。例えば、通信装置406は、無線でなく有線でストローク及び画像ワークフロー・サーバ106をネットワーク104に結合し得る。ワークフロー・サーバ106は、数多くの携帯用計算装置102をサービスする可能性が高いので、プロセッサ402は、プロセッサ302よりも計算量的に強力である。文書転送モジュール408は、電子メール・クライアントでなく、電子メール・サーバである。ディスプレイ装置422はCRTであり得、出力装置424はスピーカである。入力装置428は、キーボード、及びマウス型コントローラを含む。ストローク及び画像ワークフロー・サーバ106の構成部分は、遠隔クライアントでなく、ハードウェア・サーバとしてふるまうので、種々の他の差が存在し得るということを当業者は認識するであろう。
ストローク及び画像ワークフロー・サーバ106の検証モジュール430は、文書の処理を検証するためのソフトウェア及びルーチンである。一実施例では、検証モジュール430は、後述する文書処理の検証を行うためにプロセッサ402によって実行可能なルーチンである。検証モジュール430は、プロセッサ402、メモリ404、及び通信装置406にバス420によって結合される。検証モジュール430は、ストローク及び画像ワークフロー・サーバ106と独立して使用し得る。実際に、特定のサーバのトラストの必要なしで文書の独立した検証のためにコンピュータ108上で実行し得る。
ストローク及び画像ワークフロー・サーバ106のワークフロー・モジュール412は、文書、又はフォーマッティングされたメッセージを処理し、ルーティングするためのソフトウェア及びルーチンである。ワークフロー・モジュール412は、文書を作成するか、又はフォーマッティングされたメッセージを作成する。ワークフロー・モジュール412は更に、ロギング・モジュール416と協働して、(ロギング・モジュール416、メモリ404、又はデータ記憶装置110に記憶される)システム・ログを作成し、上記ログを、必要に応じて、公表し、又は利用可能にする。ワークフロー・モジュール412は更に、処理ワークフローの一部として、次の場所に文書、又はフォーマッティングされたメッセージをルーティングする役割も果たす。一実施例では、計算パッド202は、文書を送出することにより、返すか、又は、アタッチメントを含む返信電子メールをストローク及び画像ワークフロー・サーバ106に送出する。ワークフロー・モジュール412は、ルーティング及び次のワークフロー工程を判定する。ワークフロー・モジュール412による、システム・ログを作成する処理により、もつれたログが作成され得る。文書の別個のページをサービスする複数のワークフロー・モジュール412が存在していることは、検知されずに文書をタンパリングすることの困難性を大きく増大させる。
理解を容易にするために、かつ、便宜のために、ワークフロー内の文書の処理及び文書の転送は、以下で、ストローク及び画像ワークフロー・サーバ106のワークフロー・モジュール412によって行われるものとして後述する。しかし、代替的に、同じ動作を計算パッド202によって行い得るということを当業者は認識するであろう。
計算パッド202から受け取られると(計算パッド202によって送出されると)、ストローク及び画像ワークフロー・サーバ106のワークフロー・モジュール412が文書をどうするかを判定する種々のやり方が存在している。一実施例では、計算パッド202は、特定のストローク及び画像ワークフロー・サーバ106と協働し、ストローク及び画像ワークフロー・サーバ106にページを送出するよう構成される。そのページについて、ストローク及び画像ワークフロー・サーバ106は次いで、予めプログラムされたルールに基づいて次の工程を判定する。
別の実施例では、ワークフローは、文書が送出された電子メール(フォーマッティングされたメッセージ)内で、又は文書内で規定される。電子メールにより、文書を受信する単純なケースでは、計算パッド202は、完成した文書をストローク及び画像ワークフロー・サーバ106に返す。ストローク及び画像ワークフロー・サーバ106は次いで、メタデータを、完成したパッドから抽出し、ワークフロー内の次の工程を判定し、次いで、完了した文書を、識別された装置(例えば、コンピュータ108)に送出して、ワークフロー内の次の工程を行う。別の実施例では、計算パッド202は、完成した文書を電子メールにより、ストローク及び画像ワークフロー・サーバ106に戻し、電子メールはワークフローを含む。ストローク及び画像ワークフロー・サーバ106は、完成した文書を含む電子メールから、完成した文書を送出する次の電子メール・アドレスを求める。別の実施例では、HTTPヘッダは、電子メールのヘッダの代わりに、又は電子メールのヘッダに加えて使用することが可能である。ページの画像、ストローク、及びメタデータをサポートするやり方で文書が伝送される場合、メタデータは、ワークフロー命令及びステータスを含み得る。やはり、単純なケースでは、メタデータは電子メール・アドレスのリスト、及びワークフローの現在の工程を含む。
一実施例では、ワークフローは、規定性が高く、ワークフロー内の特定のジョブ、ステップ、又はタスクそれぞれを行うためにどのサービス・プロバイダ(どのサービス・プロバイダ・コンピュータ122a乃至122n)を使用すべきかを規定する。
しかし、別の実施例では、ワークフロー・モジュール412は、サービス・プロバイダ選択モジュール432と協調して、ワークフロー内のジョブ、ステップ、又はタスクを行うためにどのサービス・プロバイダを使用すべきかを自動的に、又は半自動的に判定する。サービス・プロバイダ選択モジュール432は、ストローク及び画像ワークフロー・サ―バ106の他の構成部分と通信するためにバス420に結合される。サービス・プロバイダ選択モジュール432は更に、バス420により、ネットワーク104に結合され、よって、サービス・プロバイダ・コンピュータ122a乃至122n及び携帯用計算装置102a乃至102nに結合される。サービス・プロバイダ選択モジュール432は、ポータル計算装置102a乃至102nを介してユーザとインタフェースする。そして、サービス・プロバイダ選択モジュール432は、自動選択のレベル(例えば、自動、半自動、又は手動)、及び上記ユーザに最も重要なサービス・プロバイダの属性などのユーザ選好を収集する。サービス・プロバイダ選択モジュール432はこの情報を収集し、記憶し、これを使用して、そのユーザに関連付けられたワークフローのタスク、ジョブ又は一部分を行うためにどのサービス・プロバイダを使用すべきかを判定する。サービス・プロバイダ選択モジュール432は更に、どれが利用可能であり、サービスを提供する準備ができているかを判定するために、ネットワーク104上でサービス・プロバイダを監視する。サービス・プロバイダ選択モジュール432、及びその構成部分は、図6を参照して以下に更に詳細に説明する。
次に図4を参照して、ストローク及び画像ワークフロー・サーバ106の実施例を更に詳細に説明する。ストローク及び画像ワークフロー・サーバ106は、プロセッサ402と、メモリ404と、通信装置406と、文書転送モジュール408と、クロック410と、ワークフロー・モジュール412とを備える。ストローク及び画像ワークフロー・サーバ106は、更に、ロギング・モジュール416と、他のアプリケーション418と、バス420と、検証モジュール430と、サービス・プロバイダ選択モジュール432とを備える。別の実施例では、ストローク及び画像ワークフロー・サーバ106は更に、ディスプレイ装置422、出力装置424、一意の装置識別子の記憶装置426、及び入力装置428を備える。
ストローク及び画像ワークフロー・サーバ106の構成部分の一部が計算パッド202の構成部分と同一又は同様の機能を有するということを当業者は認識するであろう。よって、前述の構成部分の説明はここでは繰り返さないものとする。例えば、プロセッサ402、メモリ404、通信装置406、文書転送モジュール408、ロギング・モジュール416、クロック410は、図3の対応する構成と同様の機能を有する。又、他のアプリケーション418、ディスプレイ装置422、出力装置424、一意の装置識別子の記憶装置426、及び入力装置428は、図3の対応する構成と同様の機能を有する。図3の対応する構成は、プロセッサ302、メモリ304、通信装置306、文書転送モジュール316、ロギング・モジュール314、クロック310である。図3の対応する構成は、又、他のアプリケーション324、ディスプレイ装置206、出力装置220、一意の装置識別子の記憶装置308、入力装置210乃至216である。ストローク及び画像ワークフロー・サーバ106の構成部分と、計算パッド202の構成部分との間の差を一部、以下に記す。例えば、通信装置406は、無線でなく有線でストローク及び画像ワークフロー・サーバ106をネットワーク104に結合し得る。ワークフロー・サーバ106は、数多くの携帯用計算装置102をサービスする可能性が高いので、プロセッサ402は、プロセッサ302よりも計算量的に強力である。文書転送モジュール408は、電子メール・クライアントでなく、電子メール・サーバである。ディスプレイ装置422はCRTであり得、出力装置424はスピーカである。入力装置428は、キーボード、及びマウス型コントローラを含む。ストローク及び画像ワークフロー・サーバ106の構成部分は、遠隔クライアントでなく、ハードウェア・サーバとしてふるまうので、種々の他の差が存在し得るということを当業者は認識するであろう。
ストローク及び画像ワークフロー・サーバ106の検証モジュール430は、文書の処理を検証するためのソフトウェア及びルーチンである。一実施例では、検証モジュール430は、後述する文書処理の検証を行うためにプロセッサ402によって実行可能なルーチンである。検証モジュール430は、プロセッサ402、メモリ404、及び通信装置406にバス420によって結合される。検証モジュール430は、ストローク及び画像ワークフロー・サーバ106と独立して使用し得る。実際に、特定のサーバのトラストの必要なしで文書の独立した検証のためにコンピュータ108上で実行し得る。
ストローク及び画像ワークフロー・サーバ106のワークフロー・モジュール412は、文書、又はフォーマッティングされたメッセージを処理し、ルーティングするためのソフトウェア及びルーチンである。ワークフロー・モジュール412は、文書を作成するか、又はフォーマッティングされたメッセージを作成する。ワークフロー・モジュール412は更に、ロギング・モジュール416と協働して、(ロギング・モジュール416、メモリ404、又はデータ記憶装置110に記憶される)システム・ログを作成し、上記ログを、必要に応じて、公表し、又は利用可能にする。ワークフロー・モジュール412は更に、処理ワークフローの一部として、次の場所に文書、又はフォーマッティングされたメッセージをルーティングする役割も果たす。一実施例では、計算パッド202は、文書を送出することにより、返すか、又は、アタッチメントを含む返信電子メールをストローク及び画像ワークフロー・サーバ106に送出する。ワークフロー・モジュール412は、ルーティング及び次のワークフロー工程を判定する。ワークフロー・モジュール412による、システム・ログを作成する処理により、もつれたログが作成され得る。文書の別個のページをサービスする複数のワークフロー・モジュール412が存在していることは、検知されずに文書をタンパリングすることの困難性を大きく増大させる。
理解を容易にするために、かつ、便宜のために、ワークフロー内の文書の処理及び文書の転送は、以下で、ストローク及び画像ワークフロー・サーバ106のワークフロー・モジュール412によって行われるものとして後述する。しかし、代替的に、同じ動作を計算パッド202によって行い得るということを当業者は認識するであろう。
計算パッド202から受け取られると(計算パッド202によって送出されると)、ストローク及び画像ワークフロー・サーバ106のワークフロー・モジュール412が文書をどうするかを判定する種々のやり方が存在している。一実施例では、計算パッド202は、特定のストローク及び画像ワークフロー・サーバ106と協働し、ストローク及び画像ワークフロー・サーバ106にページを送出するよう構成される。そのページについて、ストローク及び画像ワークフロー・サーバ106は次いで、予めプログラムされたルールに基づいて次の工程を判定する。
別の実施例では、ワークフローは、文書が送出された電子メール(フォーマッティングされたメッセージ)内で、又は文書内で規定される。電子メールにより、文書を受信する単純なケースでは、計算パッド202は、完成した文書をストローク及び画像ワークフロー・サーバ106に返す。ストローク及び画像ワークフロー・サーバ106は次いで、メタデータを、完成したパッドから抽出し、ワークフロー内の次の工程を判定し、次いで、完了した文書を、識別された装置(例えば、コンピュータ108)に送出して、ワークフロー内の次の工程を行う。別の実施例では、計算パッド202は、完成した文書を電子メールにより、ストローク及び画像ワークフロー・サーバ106に戻し、電子メールはワークフローを含む。ストローク及び画像ワークフロー・サーバ106は、完成した文書を含む電子メールから、完成した文書を送出する次の電子メール・アドレスを求める。別の実施例では、HTTPヘッダは、電子メールのヘッダの代わりに、又は電子メールのヘッダに加えて使用することが可能である。ページの画像、ストローク、及びメタデータをサポートするやり方で文書が伝送される場合、メタデータは、ワークフロー命令及びステータスを含み得る。やはり、単純なケースでは、メタデータは電子メール・アドレスのリスト、及びワークフローの現在の工程を含む。
一実施例では、ワークフローは、規定性が高く、ワークフロー内の特定のジョブ、ステップ、又はタスクそれぞれを行うためにどのサービス・プロバイダ(どのサービス・プロバイダ・コンピュータ122a乃至122n)を使用すべきかを規定する。
しかし、別の実施例では、ワークフロー・モジュール412は、サービス・プロバイダ選択モジュール432と協調して、ワークフロー内のジョブ、ステップ、又はタスクを行うためにどのサービス・プロバイダを使用すべきかを自動的に、又は半自動的に判定する。サービス・プロバイダ選択モジュール432は、ストローク及び画像ワークフロー・サ―バ106の他の構成部分と通信するためにバス420に結合される。サービス・プロバイダ選択モジュール432は更に、バス420により、ネットワーク104に結合され、よって、サービス・プロバイダ・コンピュータ122a乃至122n及び携帯用計算装置102a乃至102nに結合される。サービス・プロバイダ選択モジュール432は、ポータル計算装置102a乃至102nを介してユーザとインタフェースする。そして、サービス・プロバイダ選択モジュール432は、自動選択のレベル(例えば、自動、半自動、又は手動)、及び上記ユーザに最も重要なサービス・プロバイダの属性などのユーザ選好を収集する。サービス・プロバイダ選択モジュール432はこの情報を収集し、記憶し、これを使用して、そのユーザに関連付けられたワークフローのタスク、ジョブ又は一部分を行うためにどのサービス・プロバイダを使用すべきかを判定する。サービス・プロバイダ選択モジュール432は更に、どれが利用可能であり、サービスを提供する準備ができているかを判定するために、ネットワーク104上でサービス・プロバイダを監視する。サービス・プロバイダ選択モジュール432、及びその構成部分は、図6を参照して以下に更に詳細に説明する。
文書フォーマット
一実施例では、文書の基本フォーマット又は構造は、1つ又は複数のファイル及びディレクトリを含むディレクトリである。ディレクトリ中には、一連のページ画像、及び任意のメタデータがある。メタデータは各ページと別個に関連付け得、かつ/又は、メタデータは、全体としての文書と関連付け得る。前述のメタデータは、更にネスティングされたディレクトリに記憶されており、任意のものである。一実施例では、文書の各ページは画像として記憶される。これは特に効果的である。広範囲にわたる文書フォーマットを計算パッド202がサポートすることを必要とすることが避けられるからである。純粋な画像(すなわち、レンダリングを必要としないファイル)を計算パッド202に供給することにより、一貫したビューが確実にされ、フォントや他のグラフィカル・コマンドをレンダリングすることができないことを伴う問題点がなくなる。一実施例では、画像は、JPEG、JPEG2000、JPM、PNG、PDF、TIFF、及び、単純なPBM(ポータブル・ビット・マップ)ファイル・フォーマットのうちの1つである。文書ディレクトリを標準ZIPフォーマット・アーカイブとして転送し、記憶することが可能であるということを当業者は認識するであろう。
同じ当初ネーム・セグメントを共有する複数のページ画像ファイルは、同等の品質のファイルの別の表現とみなされ、提示モジュール322はその用途に最も便利な表現を選ぶ。よって、例えば、001.pgm、001.png、002.pgm、002.jpg、及び5.pgmのコンテンツを有するディレクトリは、3ページの文書をもたらす。1番目のページは、2つのファイル(001.pgm、及び、001.png)のうちの1つによって表される。2番目のページは、002.jpg、及び、002.pgmのうちの1つによって表され、3番目のページは、5.pgmによって表される。一実施例では、ネームのセグメントは、装置が画像を簡単に選ぶことを可能にするために何れかの画像の解像度又はサイズを規定するために使用することが可能である。例えば、画像page001.600×800.Pgm及び画像page001.cif.pgmが存在し得、600x800又はcif(共通中間フォーマット)は画像の解像度を識別する。
一実施例では、文書の基本フォーマット又は構造は、1つ又は複数のファイル及びディレクトリを含むディレクトリである。ディレクトリ中には、一連のページ画像、及び任意のメタデータがある。メタデータは各ページと別個に関連付け得、かつ/又は、メタデータは、全体としての文書と関連付け得る。前述のメタデータは、更にネスティングされたディレクトリに記憶されており、任意のものである。一実施例では、文書の各ページは画像として記憶される。これは特に効果的である。広範囲にわたる文書フォーマットを計算パッド202がサポートすることを必要とすることが避けられるからである。純粋な画像(すなわち、レンダリングを必要としないファイル)を計算パッド202に供給することにより、一貫したビューが確実にされ、フォントや他のグラフィカル・コマンドをレンダリングすることができないことを伴う問題点がなくなる。一実施例では、画像は、JPEG、JPEG2000、JPM、PNG、PDF、TIFF、及び、単純なPBM(ポータブル・ビット・マップ)ファイル・フォーマットのうちの1つである。文書ディレクトリを標準ZIPフォーマット・アーカイブとして転送し、記憶することが可能であるということを当業者は認識するであろう。
同じ当初ネーム・セグメントを共有する複数のページ画像ファイルは、同等の品質のファイルの別の表現とみなされ、提示モジュール322はその用途に最も便利な表現を選ぶ。よって、例えば、001.pgm、001.png、002.pgm、002.jpg、及び5.pgmのコンテンツを有するディレクトリは、3ページの文書をもたらす。1番目のページは、2つのファイル(001.pgm、及び、001.png)のうちの1つによって表される。2番目のページは、002.jpg、及び、002.pgmのうちの1つによって表され、3番目のページは、5.pgmによって表される。一実施例では、ネームのセグメントは、装置が画像を簡単に選ぶことを可能にするために何れかの画像の解像度又はサイズを規定するために使用することが可能である。例えば、画像page001.600×800.Pgm及び画像page001.cif.pgmが存在し得、600x800又はcif(共通中間フォーマット)は画像の解像度を識別する。
複数の画像はそれぞれ、関連付けられたページ又は画像メタデータを含み得る。ページ又は画像メタデータは、ストローク・データ、他のメタデータ、及びログ・データを含む。例えば、ページ又は画像メタデータは、捕捉画像を埋め込むか、又は配置し得る、画像内の領域を識別するピクチャ矩形も含み得る。更に、文書全体は文書メタデータを含む。文書メタデータは、文書ログ及び他の文書メタデータを含む。
文書のメタデータは、全体としての文書、又は個々のページと関連付けられる、ディレクトリに記憶されたファイルによって表される。一実施例では、メタデータ・ディレクトリは、ディレクトリ・ネームにおける最後の文字対としてサフィックス「.d」を有する。メタデータ・ディレクトリ内の情報は、一意のネーム・セグメントを有することになっているファイル又はサブディレクトリに記憶される。一意の識別子(例えば、伝統的なジャバ(Java(登録商標))リバース・ドメイン名手法)を使用して組織を命名することが奨励される。メタデータ・ディレクトリ自体は、サブディレクトリを含み得、サブディレクトリの内容は、そのディレクトリの作成者によって順序付けられ、定義される。一般的な方針は、メタデータ・ファイル又はディレクトリの内容が分からないアプリケーションが内容を保存すべきであり、変えるべきでないというものである。特定のメタデータ・ファイル又はディレクトリは自己内蔵型であるので、同じディレクトリに含まれていない限り、メタデータのアイテム間の依存関係は何らないものであるべきである。メタデータのアイテムは、全体としての文書、又は特定のページに関係がある。
一実施例では、文書メタデータはグローバル・メタデータであり、「document.d」と命名された1つ又は複数のファイルを含むディレクトリに記憶される。このディレクトリは、トップ・レベル・ディレクトリにおいて含まれる。文書メタデータに、文書に関連付けられた動作のログを記憶することが有用である。一実施例では、システム100は更に、文書メタデータとして「元の」文書のバージョンを記憶する。 例えば、文書がPDF、マイクロソフト(Microsoft)社ワード(Word)、マイクロソフト(Microsoft)社エクセル(Excel)、又は他の文書から形成された場合、元のフォーマットの文書はメタデータ・ディレクトリに保存し得る。
一実施例では、ページ又は画像メタデータは、ページ画像と同じネーム・セグメントによって命名され、拡張子「.d」で終わる。例えば、ページ画像が「page.001.jpg」と命名された場合、そのページに関連付けられている旨を示すよう「page.001. d」と命名すべきである。別の実施例では、ページ又は画像メタデータは、ページ・メタデータ・ディレクトリにおけるページ毎の特定のフォーマットにおける元の画像を含む。このメタデータは、例えば、最上位ディレクトリに、かつ、ページ・メタデータ・ディレクトリにラスタ・フォーマットを記憶することによって文書が作成されると直ちに作成される。又は、元のラスタ・フォーマットの複製をページ画像が最初に変更されると、記憶し得る。他の実施例では、ページ又は画像メタデータはログ・データを含む。このログ・データは、当該ページについて、メタデータ・ディレクトリ内の各ページに施される変更のためのログを表す。他のメタデータは、特定のページ又は画像に関する何れかの他のデータを記憶するために使用される。例えば、画像がページに追加された場合、ページ・メタデータ・ディレクトリに、前述の追加された画像を記憶することが有用である。紙のページに「スタンプ」することと同様な理由で、画像(例えば、「受け取り」又は「送出」)をページに加え、何れかの読み取り装置にページのステータスの視覚的な表示を提供し得る。
文書のメタデータは、全体としての文書、又は個々のページと関連付けられる、ディレクトリに記憶されたファイルによって表される。一実施例では、メタデータ・ディレクトリは、ディレクトリ・ネームにおける最後の文字対としてサフィックス「.d」を有する。メタデータ・ディレクトリ内の情報は、一意のネーム・セグメントを有することになっているファイル又はサブディレクトリに記憶される。一意の識別子(例えば、伝統的なジャバ(Java(登録商標))リバース・ドメイン名手法)を使用して組織を命名することが奨励される。メタデータ・ディレクトリ自体は、サブディレクトリを含み得、サブディレクトリの内容は、そのディレクトリの作成者によって順序付けられ、定義される。一般的な方針は、メタデータ・ファイル又はディレクトリの内容が分からないアプリケーションが内容を保存すべきであり、変えるべきでないというものである。特定のメタデータ・ファイル又はディレクトリは自己内蔵型であるので、同じディレクトリに含まれていない限り、メタデータのアイテム間の依存関係は何らないものであるべきである。メタデータのアイテムは、全体としての文書、又は特定のページに関係がある。
一実施例では、文書メタデータはグローバル・メタデータであり、「document.d」と命名された1つ又は複数のファイルを含むディレクトリに記憶される。このディレクトリは、トップ・レベル・ディレクトリにおいて含まれる。文書メタデータに、文書に関連付けられた動作のログを記憶することが有用である。一実施例では、システム100は更に、文書メタデータとして「元の」文書のバージョンを記憶する。 例えば、文書がPDF、マイクロソフト(Microsoft)社ワード(Word)、マイクロソフト(Microsoft)社エクセル(Excel)、又は他の文書から形成された場合、元のフォーマットの文書はメタデータ・ディレクトリに保存し得る。
一実施例では、ページ又は画像メタデータは、ページ画像と同じネーム・セグメントによって命名され、拡張子「.d」で終わる。例えば、ページ画像が「page.001.jpg」と命名された場合、そのページに関連付けられている旨を示すよう「page.001. d」と命名すべきである。別の実施例では、ページ又は画像メタデータは、ページ・メタデータ・ディレクトリにおけるページ毎の特定のフォーマットにおける元の画像を含む。このメタデータは、例えば、最上位ディレクトリに、かつ、ページ・メタデータ・ディレクトリにラスタ・フォーマットを記憶することによって文書が作成されると直ちに作成される。又は、元のラスタ・フォーマットの複製をページ画像が最初に変更されると、記憶し得る。他の実施例では、ページ又は画像メタデータはログ・データを含む。このログ・データは、当該ページについて、メタデータ・ディレクトリ内の各ページに施される変更のためのログを表す。他のメタデータは、特定のページ又は画像に関する何れかの他のデータを記憶するために使用される。例えば、画像がページに追加された場合、ページ・メタデータ・ディレクトリに、前述の追加された画像を記憶することが有用である。紙のページに「スタンプ」することと同様な理由で、画像(例えば、「受け取り」又は「送出」)をページに加え、何れかの読み取り装置にページのステータスの視覚的な表示を提供し得る。
自動文書処理
図5は、本発明による自動文書処理方法の一実施例を示す。処理は、ストローク及び画像ワークフロー・サーバ106が、携帯用計算装置102aに関連付けられたインボックス502を作成し、確立することから始まる。ストローク及び画像ワークフロー・サーバ106は次いで、携帯用計算装置102aへの配信がスケジューリングされた1つ又は複数の文書504を作成し、インボックス502に入れる。例えば、文書は、携帯用計算装置102aのユーザが記入し、返す必要がある、医療情報フォームなどのフォームであり得る。ストローク及び画像ワークフロー・サーバ106は、インボックス502から、携帯用計算装置102a上の対応するインボックス(図示せず)に文書504を自動転送する(506)。実施例に応じて、文書の転送は、別々のいくつかの時点で行われ得る。別々のいくつかの時点には、1)文書504がインボックス502に入れられ次第、2)携帯用計算装置102aがストローク及び画像ワークフロー・サーバ106と通信するために結合され次第がある。更に、3)15分間隔など周期的に、4)上記の種々の組み合わせがある。文書504が、携帯用計算装置102aに転送される(506)と、携帯用計算装置102aは、文書504に注釈を付し、ストローク及び他の情報を加えるために使用される。注釈が文書504に追加され、文書504がもう一度、線508で表すように携帯用計算装置102a上に記憶される。一実施例では、文書504に追加された注釈及び情報が、携帯用計算装置102aからバックアップ・サーバ512にバックアップされる(510)。上記文書の転送は、上記時点と同様な時点で行われ得る。携帯用計算装置102aによって行われた注釈をバックアップする前述の工程は、携帯用計算装置102aの電源を維持するために10分以上毎などの等間隔で行い得る。更に別の実施例では、バックアップ間隔はユーザによって設定することが可能である。ユーザが、特定の文書504への注釈の追加を完了し、文書504が送出できる状態になり次第、ユーザは送出命令を入力し、注釈を付した文書504は、携帯用計算装置102aからストローク及び画像ワークフロー・サーバ106に転送される(514)。注釈を付けた文書504は、ストローク及び画像ワークフロー・サーバ106において受け取られ次第、記憶され、記録され、ワークフロー処理における次の工程が判定される。文書504を次にどこに送出すべきかの判定に基づいて、ストローク及び画像ワークフロー・サーバ106は文書を、判定された装置(例えば、サービス・プロバイダ・コンピュータ122a乃至122n)に送信する(516)。図5は、複数のコンピュータをサービス・プロバイダ・コンピュータ122a乃至122nとして示している。サービス・プロバイダ・コンピュータ122a乃至122nは、文書504に対する更なる処理又は注釈を行うことができる各種ベンダを表す。
本発明は、フォーム又は文書を自動的に処理し、ワークフローにおいて進めるレベルが理由で特に効果的である。上述の図5は、フォーム又は文書がワークフローにおいて自動的に進められ、ストローク及び画像ワークフロー・サーバ106から携帯用計算装置102a乃至nに送出されるという点で、本発明がどのようにして自動的であるかを示す。フォーム又は文書は、ユーザによって注釈が付けられ次第、もう一度、ストローク及び画像ワークフロー・サーバ106に送出され、ユーザは、単一の「送出」コマンド又は命令を入力するだけでよい。フォーム又は文書のこの自動レベルの処理は、日常の文書処理に携帯用計算装置102aを使用することが十分に簡単かつ単純になるので特に効果的である。更に、本発明では、鉛筆及び紙の使用を非常に厳密に模倣する体験又は相互作用をユーザに提供することに適しており、学習曲線の必要性はほとんどないか、又は全くない。
特に、本発明は、計算パッド202との2つの相互作用モードを提供するユーザ・インタフェースを含む。第1のモード(インボックス・モード)では、ユーザ・インタフェースは、ユ―ザにより、修正可能であるか、編集可能である文書全てを列挙したインボックスを提示する。この第1のモードでは、ユーザは、1)文書が列挙された順序を再ソートする動作、2)編集するための文書を選択する動作、及び、3)編集するために新たな文書を作成する動作の、3つの動作に制限される。第2のモード(文書注釈モード)では、文書の画像を表示するユーザ・インタフェースが提示される。この場合も、ユーザは、1)ストローク及び注釈を文書に追加する動作、2)ピクチャを文書に追加する動作、3)画像の別のページの表示への遷移、又はインボックス・モードに戻る遷移を行う動作の、3つの動作に制限される。本発明は、ユーザが必要とする決定数を制限するので、特に効果的である。文書と相互作用するインタフェースを2つだけ提供し、各モードにおいて行われる動作の数を制限することにより、ユーザ・インタフェースに、洗練された単純さ及び効率性がもたらされる。これにより、ユーザ・インタフェースが、小さな学習曲線を伴って、又は学習曲線なしで簡単に適合することを可能にし、紙との相互作用を模倣するユーザ体験がもたらされ、ワークフロー内の自動処理と、情報収集体の収集体が一体化される。更に、本発明は、単一のコマンド・ワークフロー・ルーティングを提供する。
図5は、本発明による自動文書処理方法の一実施例を示す。処理は、ストローク及び画像ワークフロー・サーバ106が、携帯用計算装置102aに関連付けられたインボックス502を作成し、確立することから始まる。ストローク及び画像ワークフロー・サーバ106は次いで、携帯用計算装置102aへの配信がスケジューリングされた1つ又は複数の文書504を作成し、インボックス502に入れる。例えば、文書は、携帯用計算装置102aのユーザが記入し、返す必要がある、医療情報フォームなどのフォームであり得る。ストローク及び画像ワークフロー・サーバ106は、インボックス502から、携帯用計算装置102a上の対応するインボックス(図示せず)に文書504を自動転送する(506)。実施例に応じて、文書の転送は、別々のいくつかの時点で行われ得る。別々のいくつかの時点には、1)文書504がインボックス502に入れられ次第、2)携帯用計算装置102aがストローク及び画像ワークフロー・サーバ106と通信するために結合され次第がある。更に、3)15分間隔など周期的に、4)上記の種々の組み合わせがある。文書504が、携帯用計算装置102aに転送される(506)と、携帯用計算装置102aは、文書504に注釈を付し、ストローク及び他の情報を加えるために使用される。注釈が文書504に追加され、文書504がもう一度、線508で表すように携帯用計算装置102a上に記憶される。一実施例では、文書504に追加された注釈及び情報が、携帯用計算装置102aからバックアップ・サーバ512にバックアップされる(510)。上記文書の転送は、上記時点と同様な時点で行われ得る。携帯用計算装置102aによって行われた注釈をバックアップする前述の工程は、携帯用計算装置102aの電源を維持するために10分以上毎などの等間隔で行い得る。更に別の実施例では、バックアップ間隔はユーザによって設定することが可能である。ユーザが、特定の文書504への注釈の追加を完了し、文書504が送出できる状態になり次第、ユーザは送出命令を入力し、注釈を付した文書504は、携帯用計算装置102aからストローク及び画像ワークフロー・サーバ106に転送される(514)。注釈を付けた文書504は、ストローク及び画像ワークフロー・サーバ106において受け取られ次第、記憶され、記録され、ワークフロー処理における次の工程が判定される。文書504を次にどこに送出すべきかの判定に基づいて、ストローク及び画像ワークフロー・サーバ106は文書を、判定された装置(例えば、サービス・プロバイダ・コンピュータ122a乃至122n)に送信する(516)。図5は、複数のコンピュータをサービス・プロバイダ・コンピュータ122a乃至122nとして示している。サービス・プロバイダ・コンピュータ122a乃至122nは、文書504に対する更なる処理又は注釈を行うことができる各種ベンダを表す。
本発明は、フォーム又は文書を自動的に処理し、ワークフローにおいて進めるレベルが理由で特に効果的である。上述の図5は、フォーム又は文書がワークフローにおいて自動的に進められ、ストローク及び画像ワークフロー・サーバ106から携帯用計算装置102a乃至nに送出されるという点で、本発明がどのようにして自動的であるかを示す。フォーム又は文書は、ユーザによって注釈が付けられ次第、もう一度、ストローク及び画像ワークフロー・サーバ106に送出され、ユーザは、単一の「送出」コマンド又は命令を入力するだけでよい。フォーム又は文書のこの自動レベルの処理は、日常の文書処理に携帯用計算装置102aを使用することが十分に簡単かつ単純になるので特に効果的である。更に、本発明では、鉛筆及び紙の使用を非常に厳密に模倣する体験又は相互作用をユーザに提供することに適しており、学習曲線の必要性はほとんどないか、又は全くない。
特に、本発明は、計算パッド202との2つの相互作用モードを提供するユーザ・インタフェースを含む。第1のモード(インボックス・モード)では、ユーザ・インタフェースは、ユ―ザにより、修正可能であるか、編集可能である文書全てを列挙したインボックスを提示する。この第1のモードでは、ユーザは、1)文書が列挙された順序を再ソートする動作、2)編集するための文書を選択する動作、及び、3)編集するために新たな文書を作成する動作の、3つの動作に制限される。第2のモード(文書注釈モード)では、文書の画像を表示するユーザ・インタフェースが提示される。この場合も、ユーザは、1)ストローク及び注釈を文書に追加する動作、2)ピクチャを文書に追加する動作、3)画像の別のページの表示への遷移、又はインボックス・モードに戻る遷移を行う動作の、3つの動作に制限される。本発明は、ユーザが必要とする決定数を制限するので、特に効果的である。文書と相互作用するインタフェースを2つだけ提供し、各モードにおいて行われる動作の数を制限することにより、ユーザ・インタフェースに、洗練された単純さ及び効率性がもたらされる。これにより、ユーザ・インタフェースが、小さな学習曲線を伴って、又は学習曲線なしで簡単に適合することを可能にし、紙との相互作用を模倣するユーザ体験がもたらされ、ワークフロー内の自動処理と、情報収集体の収集体が一体化される。更に、本発明は、単一のコマンド・ワークフロー・ルーティングを提供する。
サービス・プロバイダ選択モジュール432
次に図6を参照するに、サービス・プロバイダ選択モジュール432の一実施例を説明する。サービス・プロバイダ選択モジュール432のこの実施例は、ユーザ選好収集器及びグラフィカル・ユーザ・インタフェース(GUI)602と、ユーザ選好記憶装置604とを備える。更に、サービス・プロバイダ利用可能性検出器606と、サービス・プロバイダ属性収集器608と、サービス・プロバイダ選択エンジン610と、サービス・プロバイダ属性記憶装置612とを備える。前述の構成部分は、以下に更に規定するように、互いの通信、並びに、ストローク及び画像ワークフロー・サーバ106及び携帯用計算装置102a乃至102nとの通信のためにバス420に結合される。他の実施例では、前述の構成部分602、604、606、608、610、及び612は、前述の構成部分それぞれ、及びそれに続くその通信ニーズの機能的な記述によって要求されるように他の構成部分に直接、結合され得る。
ユーザ選好収集器及びグラフィック・ユーザ・インタフェース(GUI)602は、ユーザに向けてGUIを提示し、ユーザ選好情報を収集するためのソフトウェア及びルーチンである。例えば、GUI602におけるユーザ選好収集器は、プロセッサ(例えば、プロセッサ402)によって実行可能なルーチンである。別の実施例では、ユーザ選好収集器及びGUI602は、本明細書及び特許請求の範囲記載の動作を行うよう特に構成されたハードウェア・モジュールである。ユーザ選好収集器及びGUI602は、自動サービス・プロバイダ選択についてのユーザの選好に関する情報、及びサービス・プロバイダのどの属性がユーザに最も重要であるかに関する情報を収集する。ユーザ選好収集器及びGUI602は更に、ユーザが単純かつ容易なやり方で携帯用計算装置102aを使用してこの情報を入力することを可能にする新しいグラフィック・ユーザ・インタフェースを生成する。例示的なユーザ・インタフェースは図8A及び図8Bに示し、以下に更に詳細に説明する。一実施例では、ユーザ選好収集器及びGUI602は、新たなGUIを生成するのに必要な情報を送出し、計算パッド202上でユーザによって入力される情報を受け取るために、計算パッド202の提示モジュール322と通信するよう構成される。ユーザ選好収集器及びGUI602は更に、ユーザ選好記憶装置604において計算パッド202からユーザの選好について受け取られた情報を記憶するために、ユーザ選好記憶装置604と通信するよう構成される。ユーザ選好収集器及びGUI602の機能、動作、及び構造は、図7に関して説明した方法を参照して以下に更に詳細に説明する。
ユーザ選好記憶装置604は、ユーザの選好及び他の情報を記憶するための通常のタイプのメモリである。一実施例では、ユーザ選好記憶装置604は揮発性メモリであり、別の実施例では、ユーザ選好記憶装置604は、フラッシュ・メモリやハード・ディスクなどの不揮発性メモリである。更に別の実施例では、ユーザ選好記憶装置604は、他のユーザにとってのアクセスの容易性及び冗長度のために別のハードウェア・サ―バ又はネットワーク記憶装置にユーザ情報をバックアップするための通信及び機能的な能力を含む。一実施例では、ユーザ選好記憶装置604は、容易にすばやく情報にアクセスすることが可能であるように順番に複数のユーザ、及びそれらの選好についての情報を記憶するためのデータベースを含む。ユーザ選好記憶装置604は、選好について、ユーザから新たな、又は修正された情報を受け取るためにユーザ選好収集器及びGUI602に結合される。ユーザ選好記憶装置604は更に、サービス・プロバイダ選択エンジン610に結合される。上記結合は、ワークフローの特定のタスク又はジョブのためにどのサービス・プロバイダを推奨又は使用するかの判定を行ううえでユーザの情報をサービス・プロバイダ選択エンジン610がアクセスすることが可能であるように行われる。
次に図6を参照するに、サービス・プロバイダ選択モジュール432の一実施例を説明する。サービス・プロバイダ選択モジュール432のこの実施例は、ユーザ選好収集器及びグラフィカル・ユーザ・インタフェース(GUI)602と、ユーザ選好記憶装置604とを備える。更に、サービス・プロバイダ利用可能性検出器606と、サービス・プロバイダ属性収集器608と、サービス・プロバイダ選択エンジン610と、サービス・プロバイダ属性記憶装置612とを備える。前述の構成部分は、以下に更に規定するように、互いの通信、並びに、ストローク及び画像ワークフロー・サーバ106及び携帯用計算装置102a乃至102nとの通信のためにバス420に結合される。他の実施例では、前述の構成部分602、604、606、608、610、及び612は、前述の構成部分それぞれ、及びそれに続くその通信ニーズの機能的な記述によって要求されるように他の構成部分に直接、結合され得る。
ユーザ選好収集器及びグラフィック・ユーザ・インタフェース(GUI)602は、ユーザに向けてGUIを提示し、ユーザ選好情報を収集するためのソフトウェア及びルーチンである。例えば、GUI602におけるユーザ選好収集器は、プロセッサ(例えば、プロセッサ402)によって実行可能なルーチンである。別の実施例では、ユーザ選好収集器及びGUI602は、本明細書及び特許請求の範囲記載の動作を行うよう特に構成されたハードウェア・モジュールである。ユーザ選好収集器及びGUI602は、自動サービス・プロバイダ選択についてのユーザの選好に関する情報、及びサービス・プロバイダのどの属性がユーザに最も重要であるかに関する情報を収集する。ユーザ選好収集器及びGUI602は更に、ユーザが単純かつ容易なやり方で携帯用計算装置102aを使用してこの情報を入力することを可能にする新しいグラフィック・ユーザ・インタフェースを生成する。例示的なユーザ・インタフェースは図8A及び図8Bに示し、以下に更に詳細に説明する。一実施例では、ユーザ選好収集器及びGUI602は、新たなGUIを生成するのに必要な情報を送出し、計算パッド202上でユーザによって入力される情報を受け取るために、計算パッド202の提示モジュール322と通信するよう構成される。ユーザ選好収集器及びGUI602は更に、ユーザ選好記憶装置604において計算パッド202からユーザの選好について受け取られた情報を記憶するために、ユーザ選好記憶装置604と通信するよう構成される。ユーザ選好収集器及びGUI602の機能、動作、及び構造は、図7に関して説明した方法を参照して以下に更に詳細に説明する。
ユーザ選好記憶装置604は、ユーザの選好及び他の情報を記憶するための通常のタイプのメモリである。一実施例では、ユーザ選好記憶装置604は揮発性メモリであり、別の実施例では、ユーザ選好記憶装置604は、フラッシュ・メモリやハード・ディスクなどの不揮発性メモリである。更に別の実施例では、ユーザ選好記憶装置604は、他のユーザにとってのアクセスの容易性及び冗長度のために別のハードウェア・サ―バ又はネットワーク記憶装置にユーザ情報をバックアップするための通信及び機能的な能力を含む。一実施例では、ユーザ選好記憶装置604は、容易にすばやく情報にアクセスすることが可能であるように順番に複数のユーザ、及びそれらの選好についての情報を記憶するためのデータベースを含む。ユーザ選好記憶装置604は、選好について、ユーザから新たな、又は修正された情報を受け取るためにユーザ選好収集器及びGUI602に結合される。ユーザ選好記憶装置604は更に、サービス・プロバイダ選択エンジン610に結合される。上記結合は、ワークフローの特定のタスク又はジョブのためにどのサービス・プロバイダを推奨又は使用するかの判定を行ううえでユーザの情報をサービス・プロバイダ選択エンジン610がアクセスすることが可能であるように行われる。
サービス・プロバイダ利用可能性検出器606は、ネットワーク104を監視するためのソフトウェア及びルーチンである。上記監視は、ワークフローのタスク又はジョブを行うためにどのサービス・プロバイダ・コンピュータ122がアクセス可能であり、利用可能であるかを判定する。例えば、サービス・プロバイダ利用可能性検出器606は、プロセッサ(例えば、プロセッサ402)によって実行可能なルーチンである。別の実施例では、サービス・プロバイダ利用可能性検出器606は、本明細書及び特許請求の範囲記載の動作を行うよう特に構成されたハードウェア・モジュールである。サービス・プロバイダ利用可能性検出器606は、バス420により、ネットワーク104に結合される。ネットワーク104を介して、サービス・プロバイダ利用可能性検出器606は、ワークフローのタスク又はジョブを行うためにどのサービス・プロバイダが利用可能であり、アクセス可能であり、動作状態にあるかを判定することができる。一実施例では、サービス・プロバイダ利用可能性検出器606は、タスク又はサービスを行うためにどのサービス・プロバイダがネットワーク104を介してアクセス可能であり、動作状態にあるかのリアルタイム分析を提供する。サービス・プロバイダ利用可能性検出器606は、ネットワーク104を介してサービス・プロバイダ・コンピュータ122a乃至n、どのサービス・プロバイダが現在利用可能であるかを示すサービス・プロバイダ選択エンジン610と通信するよう構成される。又、サービス・プロバイダ利用可能性検出器606は、ストローク及び画像ワークフロー・サーバの他の構成部分と通信するよう構成される。
一実施例では、サービス・プロバイダ利用可能性検出器606は、サービス・プロバイダを識別するためにネットワーク104をアクティブにサーチするか、又はクロールする。新たな、又は先行して利用可能でなかったサービス・プロバイダが識別されると、サービス・プロバイダ利用可能性検出器606は、そのステータスを判定する旨の利用可能性クエリを何れかのサービス・プロバイダ・コンピュータ122に送出する。別の実施例では、サービス・プロバイダ利用可能性検出器606は、ネットワーク104上で利用可能なサービス・プロバイダ全てのリストを維持し、サービス・プロバイダが現在、利用可能であり、動作状態にあることを確認するための信号を周期的に送出する。サービス・プロバイダ利用可能性検出器606は、送出する利用可能性クエリに対して受け取られる応答に基づいて利用可能なサービス・プロバイダ・コンピュータ122のリストを維持する。一実施例では、利用可能なサービス・プロバイダのリストがリアルタイムで維持される。他の実施例では、利用可能なサービス・プロバイダのリストは、5乃至10分のレーテンシを有する。
別の実施例では、サービス・プロバイダ利用可能性検出器606は、登録リストを維持する。ストローク及び画像ワークフロー・サーバ106からのジョブの受け取りに関心がある何れかのサービス・プロバイダは、サービス・プロバイダ利用可能性検出器606に登録する必要がある。サービス・プロバイダ利用可能性検出器606に登録したいサービス・プロバイダは何れも、サービス・プロバイダ利用可能性検出器606に登録要求を送出する。サービス・プロバイダ利用可能性検出器606は、特定の応答を生成するメッセージを送出することなどにより、ネットワーク104を使用してサービス・プロバイダがアクセス可能である旨を確認する。サービス・プロバイダ利用可能性検出器606は次いで、確認されたサービス・プロバイダを、登録されたサービス・プロバイダのリストに追加する。どのサービス・プロバイダがアクセス可能であり、動作状態にあるかをサービス・プロバイダ利用可能性検出器606が判定する他の方法が存在しているということを当業者は認識するであろう。例えば、ポーリング手法を用いてサービス・プロバイダの現在のステータスを判定し得る。あるいは、サービス・プロバイダは、そのステータスが動作状態にあることを維持するために所定の時点でサービス・プロバイダ利用可能性検出器606に心拍信号を発出することが必要であり得る。更に、上記方法は、サービス・プロバイダ利用可能性検出器606により、種々のやり方で組み合せ得る。
サービス・プロバイダ属性収集器608は、ワークフローのタスク又はジョブを完了するうえでサービス・プロバイダ・コンピュータ122a乃至120nの性能を監視するためのソフトウェア及びルーチンである。例えば、サービス・プロバイダ属性収集器608は、プロセッサ(例えば、プロセッサ402)によって実行可能なルーチンである。別の実施例では、サービス・プロバイダ属性収集器608は、本明細書及び特許請求の範囲記載の動作を行うよう特に構成されたハードウェア・モジュールである。サービス・プロバイダ属性収集器608の動作は図9の方法を参照して以下に更に詳細に説明する。サービス・プロバイダ属性収集器608は、各種ソースからサービス・プロバイダに関する種々の情報を収集する。例えば、サービス・プロバイダ属性収集器608は、種々のサービス・プロバイダの性能に関する情報を収集する。この情報の収集は、a)ネットワーク104から捕捉された統計及び他のデータに基づいて部分的に自動であり、b)部分的に、サービス・プロバイダの特性に基づいてユーザから求められる。あるいは、この情報の収集は、手動であり、c)種々の証明などの、サービス・プロバイダが有し得る特定の基準に関してサービス・プロバイダから自ら提供される。サービス・プロバイダ属性収集器608によって収集される属性の例示的なリストは表1において以下に示す。
別の実施例では、サービス・プロバイダ利用可能性検出器606は、登録リストを維持する。ストローク及び画像ワークフロー・サーバ106からのジョブの受け取りに関心がある何れかのサービス・プロバイダは、サービス・プロバイダ利用可能性検出器606に登録する必要がある。サービス・プロバイダ利用可能性検出器606に登録したいサービス・プロバイダは何れも、サービス・プロバイダ利用可能性検出器606に登録要求を送出する。サービス・プロバイダ利用可能性検出器606は、特定の応答を生成するメッセージを送出することなどにより、ネットワーク104を使用してサービス・プロバイダがアクセス可能である旨を確認する。サービス・プロバイダ利用可能性検出器606は次いで、確認されたサービス・プロバイダを、登録されたサービス・プロバイダのリストに追加する。どのサービス・プロバイダがアクセス可能であり、動作状態にあるかをサービス・プロバイダ利用可能性検出器606が判定する他の方法が存在しているということを当業者は認識するであろう。例えば、ポーリング手法を用いてサービス・プロバイダの現在のステータスを判定し得る。あるいは、サービス・プロバイダは、そのステータスが動作状態にあることを維持するために所定の時点でサービス・プロバイダ利用可能性検出器606に心拍信号を発出することが必要であり得る。更に、上記方法は、サービス・プロバイダ利用可能性検出器606により、種々のやり方で組み合せ得る。
サービス・プロバイダ属性収集器608は、ワークフローのタスク又はジョブを完了するうえでサービス・プロバイダ・コンピュータ122a乃至120nの性能を監視するためのソフトウェア及びルーチンである。例えば、サービス・プロバイダ属性収集器608は、プロセッサ(例えば、プロセッサ402)によって実行可能なルーチンである。別の実施例では、サービス・プロバイダ属性収集器608は、本明細書及び特許請求の範囲記載の動作を行うよう特に構成されたハードウェア・モジュールである。サービス・プロバイダ属性収集器608の動作は図9の方法を参照して以下に更に詳細に説明する。サービス・プロバイダ属性収集器608は、各種ソースからサービス・プロバイダに関する種々の情報を収集する。例えば、サービス・プロバイダ属性収集器608は、種々のサービス・プロバイダの性能に関する情報を収集する。この情報の収集は、a)ネットワーク104から捕捉された統計及び他のデータに基づいて部分的に自動であり、b)部分的に、サービス・プロバイダの特性に基づいてユーザから求められる。あるいは、この情報の収集は、手動であり、c)種々の証明などの、サービス・プロバイダが有し得る特定の基準に関してサービス・プロバイダから自ら提供される。サービス・プロバイダ属性収集器608によって収集される属性の例示的なリストは表1において以下に示す。
一実施例では、サービス・プロバイダ属性収集器608は、システム100にわたって分散しており、ストローク及び画像ワークフロー・サーバ106のサービス・プロバイダ選択モジュール432において動作可能な集約及び記憶部を含む。この実施例では、サービス・プロバイダ属性収集器608は更に、サービス・プロバイダ・コンピュータ122により、文書の処理についての情報を収集し、その情報を、サービス・プロバイダ選択モジュール432における集約及び記憶部分に送出する。そのために、携帯用計算装置102、サービス・プロバイダ・コンピュータ122、又はバックアップ・サーバ512などの、システムにおける種々の場所において動作可能なシン・クライアント収集器アプリケーションを含む。サービス・プロバイダ属性収集器608は、サービス・プロバイダ・コンピュータ122、携帯用計算装置102、及びサービス・プロバイダ属性記憶装置612に結合される。サービス・プロバイダ属性収集器608は、サービス・プロバイダ・コンピュータ122、携帯用計算装置102から、かつ、任意的には、バックアップ・サーバ512からサービス・プロバイダの性能についての情報を受け取る。サービス・プロバイダ属性収集器608は、サービス・プロバイダ選択エンジン610によって使用するためにサービス・プロバイダ属性記憶装置612にこの情報を記憶する。
一実施例では、サービス・プロバイダ属性収集器608は更に、一貫性のために、携帯用計算装置102及びサービス・プロバイダ・コンピュータ122から受け取られた情報を検査する。例えば、情報に一貫性がある場合、サービス・プロバイダ属性記憶装置612に情報が送出され、記憶される。しかし、情報に一貫性がない場合、サービス・プロバイダ属性収集器は、どのデータが正確かを判定するために種々の解析工程のうちの1つを行う。例えば、サービス・プロバイダ属性収集器608は、1)データを廃棄し、2)どのデータ源が正確であるかをサービス・プロバイダ属性収集器608が判定しようとするアービトレーション処理を開始することを行うことが可能である。更に、3)デフォルトで、サービス・プロバイダからのデータに対して、携帯用計算装置102からのデータを受け入れ、4)検証モジュール430にアクセスして、どのデータ源が正確であるかを判定すること等を行うことが可能である。別の実施例では、サービス・プロバイダ属性収集器608は、クライアント収集器アプリケーションを必要しない。その代わりに、携帯用計算装置102、ストローク及び画像ワークフロー・サーバ106及びサービス・プロバイダ・コンピュータ122のログにアクセスする。ログに記憶された情報を使用して、サービス・プロバイダ属性収集器608は、サービス・プロバイダの性能についてのいくつかの統計を収集することが可能である。
サービス・プロバイダ属性収集器608が更に、携帯用計算装置102を介してユーザ・フィードバックを収集し、調査をユーザに向けて提示するためのソフトウェア及びルーチンを含んでいるということを当業者は理解するであろう。同様に、サービス・プロバイダ属性収集器608は更に、サービス・プロバイダによって記入するためにサービス・プロバイダ・コンピュータ122に調査、テーブル、及び他のフォームを提示するためのソフトウェア及びルーチンを含む。よって、サービス・プロバイダ属性収集器608は、3つのソースからの情報を収集し、集約することができる。上記情報は、1)行われた活動により、別個に収集され、検証された情報、及びネットワーク104上で送受信された文書、2)携帯用計算装置102により、ユーザによって提供された情報である。上記情報は、更に、3)サービス・プロバイダ・コンピュータ122によって提供された情報である。
一実施例では、サービス・プロバイダ属性収集器608は更に、一貫性のために、携帯用計算装置102及びサービス・プロバイダ・コンピュータ122から受け取られた情報を検査する。例えば、情報に一貫性がある場合、サービス・プロバイダ属性記憶装置612に情報が送出され、記憶される。しかし、情報に一貫性がない場合、サービス・プロバイダ属性収集器は、どのデータが正確かを判定するために種々の解析工程のうちの1つを行う。例えば、サービス・プロバイダ属性収集器608は、1)データを廃棄し、2)どのデータ源が正確であるかをサービス・プロバイダ属性収集器608が判定しようとするアービトレーション処理を開始することを行うことが可能である。更に、3)デフォルトで、サービス・プロバイダからのデータに対して、携帯用計算装置102からのデータを受け入れ、4)検証モジュール430にアクセスして、どのデータ源が正確であるかを判定すること等を行うことが可能である。別の実施例では、サービス・プロバイダ属性収集器608は、クライアント収集器アプリケーションを必要しない。その代わりに、携帯用計算装置102、ストローク及び画像ワークフロー・サーバ106及びサービス・プロバイダ・コンピュータ122のログにアクセスする。ログに記憶された情報を使用して、サービス・プロバイダ属性収集器608は、サービス・プロバイダの性能についてのいくつかの統計を収集することが可能である。
サービス・プロバイダ属性収集器608が更に、携帯用計算装置102を介してユーザ・フィードバックを収集し、調査をユーザに向けて提示するためのソフトウェア及びルーチンを含んでいるということを当業者は理解するであろう。同様に、サービス・プロバイダ属性収集器608は更に、サービス・プロバイダによって記入するためにサービス・プロバイダ・コンピュータ122に調査、テーブル、及び他のフォームを提示するためのソフトウェア及びルーチンを含む。よって、サービス・プロバイダ属性収集器608は、3つのソースからの情報を収集し、集約することができる。上記情報は、1)行われた活動により、別個に収集され、検証された情報、及びネットワーク104上で送受信された文書、2)携帯用計算装置102により、ユーザによって提供された情報である。上記情報は、更に、3)サービス・プロバイダ・コンピュータ122によって提供された情報である。
サービス・プロバイダ属性記憶装置612は、サービス・プロバイダ属性及び他の情報を記憶するための通常のタイプのメモリである。一実施例では、サービス・プロバイダ属性記憶装置612は揮発性メモリであり、別の実施例では、サービス・プロバイダ属性記憶装置612は、フラッシュ・メモリやハード・ディスクなどの不揮発性メモリである。更に別の実施例では、サービス・プロバイダ属性記憶装置612は、通信及び機能的な能力を含む。上記通信及び機能的な能力は、他のユーザにとってのアクセスの容易性及び冗長度のために別のハードウェア・サーバ又はネットワーク記憶装置にサービス・プロバイダ属性情報をバックアップするためのものである。一実施例では、サービス・プロバイダ属性記憶装置612は、容易にすばやく情報にアクセスすることが可能であるように順番に別々のサービス・プロバイダについての情報を記憶するためのデータベースを含む。サービス・プロバイダ属性記憶装置612は、新たな、又は修正された属性情報を受け取るためにサービス・プロバイダ属性収集器608に結合される。サービス・プロバイダ属性記憶装置612は更に、サービス・プロバイダ選択エンジン610に結合される。上記結合は、ワークフローの特定のタスク又はジョブのためにどのサービス・プロバイダを推奨又は使用するかの判定を行ううえでサービス・プロバイダ選択エンジン610がサービス・プロバイダ属性情報にアクセスすることが可能であるように行われる。
サービス・プロバイダ選択エンジン610は、ワークフローのジョブ又はタスクを行うためにサービス・プロバイダを選択するためのソフトウェア及びルーチンである。例えば、サービス・プロバイダ選択エンジン610は、プロセッサ(例えば、プロセッサ402)によって実行可能なルーチンである。別の実施例では、サービス・プロバイダ選択エンジン610は、本明細書及び特許請求の範囲記載の動作を行うよう特に構成されたハードウェア・モジュールである。種々の実施例では、サービス・プロバイダ選択エンジン610は、加重和アルゴリズム、ファジー・ロジック、又は確率モデリングを使用して、ユーザによって提供された属性選好に最も一致するサービス・プロバイダを選択する。サービス・プロバイダ選択エンジン610の動作は、図10乃至図11を参照して以下に更に詳細に説明する。
一実施例では、サービス・プロバイダ選択エンジン610は、ユーザ選好の入力に応じて、4つのモードのうちの1つにおいて動作する。第1のモード(手動モード)では、サービス・プロバイダ選択エンジン610は単に、ネットワークを介して利用可能なサービス・プロバイダを識別し、ユーザのリストにおいてそれを提示する。これは、何れかのタスクを行うために利用可能なサービス・プロバイダ全てのリストであり、サービス・プロバイダ選択エンジン610は、何れのタイプのフィルタリングも提供するものでない。第2のモード(半自動モード)では、サービス・プロバイダ選択エンジン610は、ネットワーク104上で利用可能なサービス・プロバイダを識別する。サービス・プロバイダ選択エンジン610は、次いで、どの属性がユーザにとって最も重要であるかについてのユーザ選好により、利用可能なサービス・プロバイダをフィルタリングする。第2のモードでは、ユーザの選好を満たす限定数の(例えば、3乃至5の)サービス・プロバイダのリストが提示され、ユーザは、サービス・プロバイダのうちの1つを選択してジョブ又はタスクを行う。第3の動作モード(自動モード)では、サービス・プロバイダ選択エンジン610は、ネットワーク104上で利用可能なサービス・プロバイダを識別する。サービス・プロバイダ選択エンジン610は、次いで、サービス・プロバイダ属性についてのユーザ入力選好に最もよく一致するサービス・プロバイダを選択し、次いで、完了するために、タスク又はジョブを、選択されたサービス・プロバイダに送出する。この処理は、ユーザが、自分の選好を当初、入力した後に如何なる動作も行う必要がない点で完全に自動であり、サービス・プロバイダ選択モジュール432はワークフロー内の各工程を自動的に処理する。第4の動作モード(阻止を伴う自動モード)では、サービス・プロバイダ選択エンジン610は、前述した第3のモードと同様に動作する。しかし、何れかの後の時点で、ユーザは、サービス・プロバイダがリスト上に現れることを阻止する旨を決定することが可能である。例えば、他の考慮点を無視して自分のサービスを相当安く販売していたOCRサービス・プロバイダは、劣悪なサービスについて顧客により、又は、サービスを使用し、返された結果を好まなかった顧客によって阻止され得る。同様に、顧客は、悪い経験の後、サービス又は製品の売り手との協働を拒否し、このシステムのユーザは、悪い経験があったプロバイダを除外するよう自動処理を修正することが可能である。
方法
次に図7乃至図11を参照して、本発明の方法を更に詳細に説明する。
一実施例では、サービス・プロバイダ選択エンジン610は、ユーザ選好の入力に応じて、4つのモードのうちの1つにおいて動作する。第1のモード(手動モード)では、サービス・プロバイダ選択エンジン610は単に、ネットワークを介して利用可能なサービス・プロバイダを識別し、ユーザのリストにおいてそれを提示する。これは、何れかのタスクを行うために利用可能なサービス・プロバイダ全てのリストであり、サービス・プロバイダ選択エンジン610は、何れのタイプのフィルタリングも提供するものでない。第2のモード(半自動モード)では、サービス・プロバイダ選択エンジン610は、ネットワーク104上で利用可能なサービス・プロバイダを識別する。サービス・プロバイダ選択エンジン610は、次いで、どの属性がユーザにとって最も重要であるかについてのユーザ選好により、利用可能なサービス・プロバイダをフィルタリングする。第2のモードでは、ユーザの選好を満たす限定数の(例えば、3乃至5の)サービス・プロバイダのリストが提示され、ユーザは、サービス・プロバイダのうちの1つを選択してジョブ又はタスクを行う。第3の動作モード(自動モード)では、サービス・プロバイダ選択エンジン610は、ネットワーク104上で利用可能なサービス・プロバイダを識別する。サービス・プロバイダ選択エンジン610は、次いで、サービス・プロバイダ属性についてのユーザ入力選好に最もよく一致するサービス・プロバイダを選択し、次いで、完了するために、タスク又はジョブを、選択されたサービス・プロバイダに送出する。この処理は、ユーザが、自分の選好を当初、入力した後に如何なる動作も行う必要がない点で完全に自動であり、サービス・プロバイダ選択モジュール432はワークフロー内の各工程を自動的に処理する。第4の動作モード(阻止を伴う自動モード)では、サービス・プロバイダ選択エンジン610は、前述した第3のモードと同様に動作する。しかし、何れかの後の時点で、ユーザは、サービス・プロバイダがリスト上に現れることを阻止する旨を決定することが可能である。例えば、他の考慮点を無視して自分のサービスを相当安く販売していたOCRサービス・プロバイダは、劣悪なサービスについて顧客により、又は、サービスを使用し、返された結果を好まなかった顧客によって阻止され得る。同様に、顧客は、悪い経験の後、サービス又は製品の売り手との協働を拒否し、このシステムのユーザは、悪い経験があったプロバイダを除外するよう自動処理を修正することが可能である。
方法
次に図7乃至図11を参照して、本発明の方法を更に詳細に説明する。
次に図7、図8A、及び図8Bを参照するに、本発明による、グラフィカル・ユーザ・インタフェース(GUI)を表示し、ユーザ選好を収集する方法700の一実施例を説明する。図7に示すように、方法は、ユーザ選好の入力を開始する旨の入力信号をサービス・プロバイダ選択モジュール432が受け取る(702)ことで始まる。これに応じて、ユーザ選好収集器及びGUI602は計算パッド202の提示モジュール322と通信して、自動処理のレベルを選択するために、ユーザ・インタフェース800(図8Aを参照されたい)を表示する(704)。
図8A及び図8Bは、本発明による、自動選択及びプロバイダ属性選択のレベルのユーザ・インタフェース800、850の実施例のグラフィック表現を示す。図8A及び図8Bは、自動選択のレベルのためのユーザ・インタフェース800が、サービス・プロバイダ属性選択のためのユーザ・インタフェース850と別個であることを示している。一方、他の実施例では、ユーザにとって最も重要なサービス・プロバイダの属性及び自動選択のレベルの選択のための選択肢を同時に提示する単一のユーザ・インタフェースに前述の2つのユーザ・インタフェース800、850を組み合わせることが可能である。
次に図8Aを参照するに、自動的なプロバイダ選択のレベルを選択するためのユーザ・インタフェース800を更に詳細に説明する。サービス・プロバイダ選択エンジン610の説明において上述したように、本発明は4つの動作モードを提供する。前述の動作モードは、サービス・プロバイダの自動選択の別々のレベルに対応する。ユーザは、サービス・プロバイダの自動選択、阻止を伴う自動選択、半自動選択、又は手動選択から選択することが可能である。完全自動モードでは、サービス・プロバイダ選択エンジン610及びサービス・プロバイダ選択モジュール432は、どの属性が最も重要であるかについてのユーザの選好に基づいてタスク又はジョブを行うためにサービス・プロバイダを自動的に選択する。阻止を伴う自動モードでは、サービス・プロバイダ選択エンジン610及びサービス・プロバイダ選択モジュール432は、どの属性が最も重要であるかについてのユーザの選好に基づいてタスク又はジョブを行うためにサービス・プロバイダを自動選択する。自動選択が行われる前に、ユーザによって規定された何れかの阻止されたプロバイダを除外するようプロバイダのリストがフィルタリングされる。半自動モードでは、サービス・プロバイダ選択エンジン610及びサービス・プロバイダ選択モジュール432は、ユーザ選好に基づいてタスク又はジョブを行うために限定数のサービス・プロバイダのリストを作成する。ユーザは次いで、ユーザ選好を満たすフィルタリングされたサービス・プロバイダの限定されたリストからサービス・プロバイダを選択する。手動モードでは、サービス・プロバイダ選択エンジン610はサービス・プロバイダ利用可能性検出器606と協調して、タスク又はジョブを行うために現在利用可能なサービス・プロバイダを判定する。利用可能なサービス・プロバイダのフィルタリングされていないリストがユーザに提示され、ユーザはタスク又はジョブを行うためにサービス・プロバイダを選択しなければならない。図8Aに示すように、ユーザ・インタフェース800は、ユーザが自分の動作モードを選択することを可能にするウィンドウを表示する。ユーザ・インタフェース800は、4つの動作モードのうちの1つの選択のための対応するラジオ・ボタン及び自動選択の別々のレベルに対応する一連のラベル802、812、804、808を含む。一実施例では、ユーザ・インタフェース800は、1つの動作モード又はその対応するラジオ・ボタンのみをユーザが選択することを可能にする。ユーザ・インタフェース800は、半自動動作及び対応するラベル806のリストにサービス・プロバイダ選択エンジン610が含むべき最大数の結果を入力するための入力ボックスも含む。ユーザは、自動的なサービス・プロバイダ選択のレベルを選択すると、ユーザ選好収集器及びGUI602にその選択を送出するために送出ボタン810を選択する。
もう一度、図7を参照するに、方法は、サービス・プロバイダ選択モジュール432が行うべき自動選択のレベルについてのユーザ入力を受け取る(706)ことによって続く。上述のように、この入力は、ユーザが送出ボタン810を選択することに応じてユーザ選好収集器及びGUI602に提供される。方法は、ユーザ選好記憶装置604に、工程706で受け取られた入力を記憶する(708)によって続く。次いで、方法は、属性の選択及びランク付けのためにユーザ・インタフェース850を表示する(710)ことによって続く。
属性の選択及びランク付けのためのユーザ・インタフェース850の一実施例の例を図8Bに示す。次に、更に図8Bを参照するに、プロバイダ属性の選択のためのユーザ・インタフェース850を更に詳細に説明する。ユーザ・インタフェース850は、複数の列を有するウィンドウを含み、第1の列はプロバイダ属性を列挙し、第2の列は、(対応する行上の)その属性の重要度をユーザが示すための入力機構を提供する。例えば、図8Bに示すように、左側の列は属性のリスト(属性A852乃至属性N852)を含む。一実施例では、第1の列の行はユーザによって選択することが可能であり、ユーザには、プロバイダ全ての属性全てを列挙したドロップダウン・メニューが提示される。このようにして、ユーザは、ユーザが懸念を持っているか、又はユーザにとって重要な属性のその自らのリストを作成し得る。属性リストは、1つ乃至全ての属性からの何れかの数の属性を含む。更に、別の実施例では、最も重要な属性は、最も重要なものから最も重要でないものまで順番に列挙している。更に別の実施例では、属性は第1の列にアルファベット順に列挙される。図8Bに示すように、第2の列又は右側の列は、対応する行に列挙された属性の重要度をユーザが示すための入力機構を含む。この例では、各属性は、属性の重要度のレベルを示す位置表示子856、858、860,866、及び対応するスライダ・バー854を含み、左側の位置は、より低い重要度を示し、右側の位置は、より大きな、又はより高い重要度を示す。例えば、属性A及び属性N852はマーク856、866の位置によって示されるような低レベル重要度を有する一方、属性B852は、位置マーク858によって示されるような最高レベルの重要度を有し、属性C852は、位置マーク860によって示されるような属性B852の重要度レベルに近い高いレベルの重要度を有する。スライダ・バー及び位置マークの入力機構は、単に、属性の重要度を示す一方法である。別の実施例では、入力機構は、1乃至5などのスケール上の重要度を表す数字を入力する。属性の重要度を示すために使用することが可能な種々の他の実現形態が存在しており、上記は、いくつかの例のリストに過ぎないということを当業者は認識するであろう。第1の列の一番下近くに、ユーザ・インタフェース850は、属性の追加又は削除のためのボタン862、864を備える。ユーザは、第1の列から属性852を選択し、次いで、ボタン864(削除用)を選択することが可能であり、属性はそのリストから削除される。同様に、ユーザは行を選択し、次いで、ボタン862(追加用)を選択することが可能であり、メニュー又はウィンドウが、利用可能な属性のリストとともにユーザに提示される。ユーザは、列挙された属性のうちの1つを選択し、リストに追加される。
もう一度、図7を参照すれば、方法は、特定の属性、及びその重要度についての入力を受け取る(712)ことによって続く。方法は次いで、ユーザ選好記憶装置604に、工程712(属性及びその重要度)からの、受け取られた入力を記憶する(714)。次いで、方法は、タイムアウト条件が生じたか否か、又は属性がもう修正されないか否かを判定する(716)。何れかの条件が真の場合、方法は完了し、終了する。しかし、ユーザが属性を追加又は除去するか、又はその重要度を修正する場合、方法は、ユーザ・インタフェース850を更新(718)し、属性の選択のための更新されたユーザ・インタフェースを表示するために工程710に戻ることにより、続く。方法は次いで、工程712、714、及び716を繰り返す。
次に図9を参照すれば、サービス・プロバイダ属性を収集し、記憶する方法900の一実施例を説明する。方法は、サービス・プロバイダ属性収集器608が、サービス・プロバイダに情報を要求し(902)、サービス・プロバイダ属性記憶装置612に応答を記憶することで始まる。次いで、サービス・プロバイダ属性収集器608は、サービス・プロバイダに対する要求を求めて、ストローク及び画像ワークフロー・サーバ106を監視する(904)。ストローク及び画像ワークフロー・サーバ106によって生成されたサービス・プロバイダに対する要求毎に、サービス属性収集器608は、レコードを生成し、そのレコードをサービス・プロバイダ属性記憶装置612に記憶する。ストローク及び画像ワークフロー・サーバ106による要求の送出は、統計のレコードを完了することにおける第1の工程である。上記統計は、要求にどのようにして応答され、要求がどのようにして満たされたかについての情報を収集し、要求にどのようにして応答され、要求がどのようにして満たされたかについてである。次に、方法は、ストローク及び画像ワークフロー・サーバ106からのサービス・プロバイダに対する要求を受け付けるサービス・プロバイダを識別する(906)。一実施例では、サービス・プロバイダ属性収集器608は、サービス・プロバイダ毎に一意の識別番号を提供する。一意のサービス・プロバイダ識別番号はサービス・プロバイダ属性記憶装置612に記憶される。次いで、方法は、サービス・プロバイダに対する要求の完了に関する統計を捕捉する(908)。例えば、要求が受け付られた時間、文書がサービス・プロバイダに配信された時間、応答がサービス・プロバイダによって提供される時間、処理前及び処理後の文書のサイズが捕捉される。更に、応答若しくは結果のサイズ、又はジョブ若しくはタスクの成果に関する応答又は結果、及び他の統計のサイズが捕捉される。
図8A及び図8Bは、本発明による、自動選択及びプロバイダ属性選択のレベルのユーザ・インタフェース800、850の実施例のグラフィック表現を示す。図8A及び図8Bは、自動選択のレベルのためのユーザ・インタフェース800が、サービス・プロバイダ属性選択のためのユーザ・インタフェース850と別個であることを示している。一方、他の実施例では、ユーザにとって最も重要なサービス・プロバイダの属性及び自動選択のレベルの選択のための選択肢を同時に提示する単一のユーザ・インタフェースに前述の2つのユーザ・インタフェース800、850を組み合わせることが可能である。
次に図8Aを参照するに、自動的なプロバイダ選択のレベルを選択するためのユーザ・インタフェース800を更に詳細に説明する。サービス・プロバイダ選択エンジン610の説明において上述したように、本発明は4つの動作モードを提供する。前述の動作モードは、サービス・プロバイダの自動選択の別々のレベルに対応する。ユーザは、サービス・プロバイダの自動選択、阻止を伴う自動選択、半自動選択、又は手動選択から選択することが可能である。完全自動モードでは、サービス・プロバイダ選択エンジン610及びサービス・プロバイダ選択モジュール432は、どの属性が最も重要であるかについてのユーザの選好に基づいてタスク又はジョブを行うためにサービス・プロバイダを自動的に選択する。阻止を伴う自動モードでは、サービス・プロバイダ選択エンジン610及びサービス・プロバイダ選択モジュール432は、どの属性が最も重要であるかについてのユーザの選好に基づいてタスク又はジョブを行うためにサービス・プロバイダを自動選択する。自動選択が行われる前に、ユーザによって規定された何れかの阻止されたプロバイダを除外するようプロバイダのリストがフィルタリングされる。半自動モードでは、サービス・プロバイダ選択エンジン610及びサービス・プロバイダ選択モジュール432は、ユーザ選好に基づいてタスク又はジョブを行うために限定数のサービス・プロバイダのリストを作成する。ユーザは次いで、ユーザ選好を満たすフィルタリングされたサービス・プロバイダの限定されたリストからサービス・プロバイダを選択する。手動モードでは、サービス・プロバイダ選択エンジン610はサービス・プロバイダ利用可能性検出器606と協調して、タスク又はジョブを行うために現在利用可能なサービス・プロバイダを判定する。利用可能なサービス・プロバイダのフィルタリングされていないリストがユーザに提示され、ユーザはタスク又はジョブを行うためにサービス・プロバイダを選択しなければならない。図8Aに示すように、ユーザ・インタフェース800は、ユーザが自分の動作モードを選択することを可能にするウィンドウを表示する。ユーザ・インタフェース800は、4つの動作モードのうちの1つの選択のための対応するラジオ・ボタン及び自動選択の別々のレベルに対応する一連のラベル802、812、804、808を含む。一実施例では、ユーザ・インタフェース800は、1つの動作モード又はその対応するラジオ・ボタンのみをユーザが選択することを可能にする。ユーザ・インタフェース800は、半自動動作及び対応するラベル806のリストにサービス・プロバイダ選択エンジン610が含むべき最大数の結果を入力するための入力ボックスも含む。ユーザは、自動的なサービス・プロバイダ選択のレベルを選択すると、ユーザ選好収集器及びGUI602にその選択を送出するために送出ボタン810を選択する。
もう一度、図7を参照するに、方法は、サービス・プロバイダ選択モジュール432が行うべき自動選択のレベルについてのユーザ入力を受け取る(706)ことによって続く。上述のように、この入力は、ユーザが送出ボタン810を選択することに応じてユーザ選好収集器及びGUI602に提供される。方法は、ユーザ選好記憶装置604に、工程706で受け取られた入力を記憶する(708)によって続く。次いで、方法は、属性の選択及びランク付けのためにユーザ・インタフェース850を表示する(710)ことによって続く。
属性の選択及びランク付けのためのユーザ・インタフェース850の一実施例の例を図8Bに示す。次に、更に図8Bを参照するに、プロバイダ属性の選択のためのユーザ・インタフェース850を更に詳細に説明する。ユーザ・インタフェース850は、複数の列を有するウィンドウを含み、第1の列はプロバイダ属性を列挙し、第2の列は、(対応する行上の)その属性の重要度をユーザが示すための入力機構を提供する。例えば、図8Bに示すように、左側の列は属性のリスト(属性A852乃至属性N852)を含む。一実施例では、第1の列の行はユーザによって選択することが可能であり、ユーザには、プロバイダ全ての属性全てを列挙したドロップダウン・メニューが提示される。このようにして、ユーザは、ユーザが懸念を持っているか、又はユーザにとって重要な属性のその自らのリストを作成し得る。属性リストは、1つ乃至全ての属性からの何れかの数の属性を含む。更に、別の実施例では、最も重要な属性は、最も重要なものから最も重要でないものまで順番に列挙している。更に別の実施例では、属性は第1の列にアルファベット順に列挙される。図8Bに示すように、第2の列又は右側の列は、対応する行に列挙された属性の重要度をユーザが示すための入力機構を含む。この例では、各属性は、属性の重要度のレベルを示す位置表示子856、858、860,866、及び対応するスライダ・バー854を含み、左側の位置は、より低い重要度を示し、右側の位置は、より大きな、又はより高い重要度を示す。例えば、属性A及び属性N852はマーク856、866の位置によって示されるような低レベル重要度を有する一方、属性B852は、位置マーク858によって示されるような最高レベルの重要度を有し、属性C852は、位置マーク860によって示されるような属性B852の重要度レベルに近い高いレベルの重要度を有する。スライダ・バー及び位置マークの入力機構は、単に、属性の重要度を示す一方法である。別の実施例では、入力機構は、1乃至5などのスケール上の重要度を表す数字を入力する。属性の重要度を示すために使用することが可能な種々の他の実現形態が存在しており、上記は、いくつかの例のリストに過ぎないということを当業者は認識するであろう。第1の列の一番下近くに、ユーザ・インタフェース850は、属性の追加又は削除のためのボタン862、864を備える。ユーザは、第1の列から属性852を選択し、次いで、ボタン864(削除用)を選択することが可能であり、属性はそのリストから削除される。同様に、ユーザは行を選択し、次いで、ボタン862(追加用)を選択することが可能であり、メニュー又はウィンドウが、利用可能な属性のリストとともにユーザに提示される。ユーザは、列挙された属性のうちの1つを選択し、リストに追加される。
もう一度、図7を参照すれば、方法は、特定の属性、及びその重要度についての入力を受け取る(712)ことによって続く。方法は次いで、ユーザ選好記憶装置604に、工程712(属性及びその重要度)からの、受け取られた入力を記憶する(714)。次いで、方法は、タイムアウト条件が生じたか否か、又は属性がもう修正されないか否かを判定する(716)。何れかの条件が真の場合、方法は完了し、終了する。しかし、ユーザが属性を追加又は除去するか、又はその重要度を修正する場合、方法は、ユーザ・インタフェース850を更新(718)し、属性の選択のための更新されたユーザ・インタフェースを表示するために工程710に戻ることにより、続く。方法は次いで、工程712、714、及び716を繰り返す。
次に図9を参照すれば、サービス・プロバイダ属性を収集し、記憶する方法900の一実施例を説明する。方法は、サービス・プロバイダ属性収集器608が、サービス・プロバイダに情報を要求し(902)、サービス・プロバイダ属性記憶装置612に応答を記憶することで始まる。次いで、サービス・プロバイダ属性収集器608は、サービス・プロバイダに対する要求を求めて、ストローク及び画像ワークフロー・サーバ106を監視する(904)。ストローク及び画像ワークフロー・サーバ106によって生成されたサービス・プロバイダに対する要求毎に、サービス属性収集器608は、レコードを生成し、そのレコードをサービス・プロバイダ属性記憶装置612に記憶する。ストローク及び画像ワークフロー・サーバ106による要求の送出は、統計のレコードを完了することにおける第1の工程である。上記統計は、要求にどのようにして応答され、要求がどのようにして満たされたかについての情報を収集し、要求にどのようにして応答され、要求がどのようにして満たされたかについてである。次に、方法は、ストローク及び画像ワークフロー・サーバ106からのサービス・プロバイダに対する要求を受け付けるサービス・プロバイダを識別する(906)。一実施例では、サービス・プロバイダ属性収集器608は、サービス・プロバイダ毎に一意の識別番号を提供する。一意のサービス・プロバイダ識別番号はサービス・プロバイダ属性記憶装置612に記憶される。次いで、方法は、サービス・プロバイダに対する要求の完了に関する統計を捕捉する(908)。例えば、要求が受け付られた時間、文書がサービス・プロバイダに配信された時間、応答がサービス・プロバイダによって提供される時間、処理前及び処理後の文書のサイズが捕捉される。更に、応答若しくは結果のサイズ、又はジョブ若しくはタスクの成果に関する応答又は結果、及び他の統計のサイズが捕捉される。
例えば、前述の情報を捕捉するための方法は、「Paper−Like Forms Processing System & Method」と題する西暦2009年9月8日付の米国特許出願第12/555,663号に開示されている。又、上記方法は、「Device Enabled Verifiable Stroke And Image Based Workflows」と題する西暦2009年9月8日付の米国特許出願第12/555,669号に開示されている。又、上記方法は、「Stroke And Image Aggregation And Analytics」と題する西暦2009年9月8日付の米国特許出願第12/555,675号に開示されている。更に、上記方法は、「Multi−provider Forms Processing System with Quality of Service」と題する西暦2009年9月8日付の米国特許出願第12/555,683号に開示されている。本明細書及び特許請求の範囲にこれらの内容全体を、参照によって援用する。次に、方法は、サービス・プロバイダ属性記憶装置612における統計に、識別されたサービス・プロバイダを記憶する(910)ことにより、続く。次いで、方法は、ストローク及び画像ワークフロー・サーバ106によって送出されている、サービス・プロバイダに対する更なる要求が存在しているか否かを判定する(912)。肯定の場合、方法は、工程904に戻り、次の要求について工程906乃至912を繰り返す。否定の場合、方法は工程914まで続けて、ユーザからの成果のフィードバックを要求し、ユーザ・フィードバックをサービス・プロバイダ属性記憶装置612に記憶する。工程番号4の後、方法は完了し、終了する。図9を参照して説明した上記処理は3つのタイプのデータを収集する。3つのタイプのデータは、サービス・プロバイダからのデータと、ユーザからのデータと、画像ワークフロー・サーバ106、携帯用計算装置102、及びサービス・プロバイダ・コンピュータ122の動作から自動的に接続されるデータである。前述の各種データの収集は、何れの順序でも行うことが可能である。例えば、工程902、工程904乃至912、及び工程914は、上述の順序と異なる順序で通知され得る。更に、システム100の別々の構成部分から自動的に収集された統計は、システムの他の構成部分による、サービス・プロバイダ属性収集器608への自動報告などの他のやり方で行うことが可能であるということを当業者は認識するであろう。
次に図10及び図11を参照すれば、サービス・プロバイダ選択エンジン610及びサービス・プロバイダ選択モジュール432の2つの動作モードを説明する。サービス・プロバイダ選択エンジン610は、ワークフロー・タスクを有する特定のユーザにとってのサービス・プロバイダの選択にどの動作モードが使用されるかを判定するためにユーザ選好記憶装置604にアクセスする。上記ワークフロー・タスクは、ストローク及び画像ワークフロー・サーバ106によって割り当てられ、行われる対象である。サービス・プロバイダ選択エンジン610は、ユーザ選好記憶装置604からの自動選択のレベルについてユーザ選好を読み取り、ユーザの設定に応じ、このユーザの動作モードを設定する。これにより、サービス・プロバイダ選択エンジン610が、手動モード、半自動モード、又は自動モードで動作することがもたらされる。手動モードにおけるサービス・プロバイダ選択エンジン610の動作は上述しており、ここではその記載は繰り返さない。自動モードでのサービス・プロバイダ選択エンジン610の動作は図10を参照して以下に説明し、半自動モードにおけるサービス・プロバイダ選択エンジンの動作は図11を参照して以下に説明する。
次に図10を参照すれば、本発明によるサービス・プロバイダの方法自動選択の一実施例を説明する。方法は、サービス・プロバイダの自動選択に対するユーザ選好、ユーザにとっての重要度の属性、及び各属性の重要度ランキングを収集し、記憶する(1002)ことによって始まる。この工程を行う一方法を、図7を説明して上述している。次いで、方法は、サービス・プロバイダの属性を収集し、記憶する(1004)。この工程を行う一方法は図9を参照して上述している。次に、方法は、ユーザ又は要求者のために行う対象のサービス要求を識別する(1006)。次いで、サービス・プロバイダ利用可能性検出器606は、ネットワーク104に現在接続されており、サービス要求の実行に利用可能なサービス・プロバイダのリストを生成する。次に、サービス・プロバイダ選択エンジン610は、ユーザ選好記憶装置604から取り出されたユーザ選好、及びサービス・プロバイダ属性記憶装置612から取り出されたサービス・プロバイダ属性を比較する。それにより、要求されたサービスの実行に最善のサービス・プロバイダを動的に判定する。サービス・プロバイダの選択が完全自動であるこの方法では、サービス・プロバイダ選択エンジン610は、利用可能なサービス・プロバイダの属性と、ユーザの属性選好との間の最善の一致のみを判定すればよい。この判定は、いくつかのやり方で行い得る。
一実施例では、サービス・プロバイダ選択エンジン610は、サービス・プロバイダ毎の加重和を算出し、最高の加重和を有するサービス・プロバイダを選択することにより、要求されたサービスを行うために最善のサービス・プロバイダを判定する。一実施例では、サービス・プロバイダは、要求のタスク又はジョブに一致するサービスを提供するサービス・プロバイダのみの加重和が算出されるような第1のフィルタである。例えば、考えられる別のサービス・プロバイダ毎に、選択された測定済のパラメータ又は属性Pの組に、その相対的な重要度を示す加重因子Wが割り当てられる。観察値に加重因子が乗算され、和Sが計算される。
次に図10及び図11を参照すれば、サービス・プロバイダ選択エンジン610及びサービス・プロバイダ選択モジュール432の2つの動作モードを説明する。サービス・プロバイダ選択エンジン610は、ワークフロー・タスクを有する特定のユーザにとってのサービス・プロバイダの選択にどの動作モードが使用されるかを判定するためにユーザ選好記憶装置604にアクセスする。上記ワークフロー・タスクは、ストローク及び画像ワークフロー・サーバ106によって割り当てられ、行われる対象である。サービス・プロバイダ選択エンジン610は、ユーザ選好記憶装置604からの自動選択のレベルについてユーザ選好を読み取り、ユーザの設定に応じ、このユーザの動作モードを設定する。これにより、サービス・プロバイダ選択エンジン610が、手動モード、半自動モード、又は自動モードで動作することがもたらされる。手動モードにおけるサービス・プロバイダ選択エンジン610の動作は上述しており、ここではその記載は繰り返さない。自動モードでのサービス・プロバイダ選択エンジン610の動作は図10を参照して以下に説明し、半自動モードにおけるサービス・プロバイダ選択エンジンの動作は図11を参照して以下に説明する。
次に図10を参照すれば、本発明によるサービス・プロバイダの方法自動選択の一実施例を説明する。方法は、サービス・プロバイダの自動選択に対するユーザ選好、ユーザにとっての重要度の属性、及び各属性の重要度ランキングを収集し、記憶する(1002)ことによって始まる。この工程を行う一方法を、図7を説明して上述している。次いで、方法は、サービス・プロバイダの属性を収集し、記憶する(1004)。この工程を行う一方法は図9を参照して上述している。次に、方法は、ユーザ又は要求者のために行う対象のサービス要求を識別する(1006)。次いで、サービス・プロバイダ利用可能性検出器606は、ネットワーク104に現在接続されており、サービス要求の実行に利用可能なサービス・プロバイダのリストを生成する。次に、サービス・プロバイダ選択エンジン610は、ユーザ選好記憶装置604から取り出されたユーザ選好、及びサービス・プロバイダ属性記憶装置612から取り出されたサービス・プロバイダ属性を比較する。それにより、要求されたサービスの実行に最善のサービス・プロバイダを動的に判定する。サービス・プロバイダの選択が完全自動であるこの方法では、サービス・プロバイダ選択エンジン610は、利用可能なサービス・プロバイダの属性と、ユーザの属性選好との間の最善の一致のみを判定すればよい。この判定は、いくつかのやり方で行い得る。
一実施例では、サービス・プロバイダ選択エンジン610は、サービス・プロバイダ毎の加重和を算出し、最高の加重和を有するサービス・プロバイダを選択することにより、要求されたサービスを行うために最善のサービス・プロバイダを判定する。一実施例では、サービス・プロバイダは、要求のタスク又はジョブに一致するサービスを提供するサービス・プロバイダのみの加重和が算出されるような第1のフィルタである。例えば、考えられる別のサービス・プロバイダ毎に、選択された測定済のパラメータ又は属性Pの組に、その相対的な重要度を示す加重因子Wが割り当てられる。観察値に加重因子が乗算され、和Sが計算される。
最高の和Sを有するサービス・プロバイダが、最善のサービス・プロバイダとして選ばれる。
別の実施例では、サービス・プロバイダ選択エンジン610は、ファジー・ロジックを使用して、要求されたサービスを行うために最善のサービス・プロバイダを判定する。この実施例では、(例えば、Zadeh, L.A(1965)、「Fuzzy sets」、Information and Control 8(3):338−353に記載されたような)ファジー・ロジックが、代替案の中から選ぶために使用される。パラメータ又は属性Pそれぞれには、特定のファジー状態を表す一定の範囲の値が割り当てられる。例えば、スループットと呼ばれるパラメータは、そのタスクを達成する前にアプリケーションが平均的に実行する秒数で測定し得る。品質と呼ばれる第2のパラメータは、行われた千タスク毎の、顧客による却下の数を測定し得る。更なるルールは、前述のファジー状態の点での望ましさを規定し得る。前述のルールは、FCL(国際電子技術委員会(IEC)によって作成されたファジー・ロジック表現を表すための言語)で表現し得る。例えば、以下のFCL擬似コードは、速度に基づいてサービスを選ぶが、劣悪な品質のサービスを却下するための単純なファジー・ロジック・ルールの組を規定し得る。
別の実施例では、サービス・プロバイダ選択エンジン610は、ファジー・ロジックを使用して、要求されたサービスを行うために最善のサービス・プロバイダを判定する。この実施例では、(例えば、Zadeh, L.A(1965)、「Fuzzy sets」、Information and Control 8(3):338−353に記載されたような)ファジー・ロジックが、代替案の中から選ぶために使用される。パラメータ又は属性Pそれぞれには、特定のファジー状態を表す一定の範囲の値が割り当てられる。例えば、スループットと呼ばれるパラメータは、そのタスクを達成する前にアプリケーションが平均的に実行する秒数で測定し得る。品質と呼ばれる第2のパラメータは、行われた千タスク毎の、顧客による却下の数を測定し得る。更なるルールは、前述のファジー状態の点での望ましさを規定し得る。前述のルールは、FCL(国際電子技術委員会(IEC)によって作成されたファジー・ロジック表現を表すための言語)で表現し得る。例えば、以下のFCL擬似コードは、速度に基づいてサービスを選ぶが、劣悪な品質のサービスを却下するための単純なファジー・ロジック・ルールの組を規定し得る。
更に別の実施例では、サービス・プロバイダ選択エンジン610は、確率論モデリングを使用して要求されたサービスを行うために最善のサービス・プロバイダを判定する。この実施例では、考えられるサービス・プロバイダのうちから選ぶためにエキスパート・システムが使用される。この実施例では、パラメータ又は属性P毎の範囲は、アプリケーションを推奨すべき確率を割り当てるために使用される。推論のベイズ・ルールは、前述の確率を、アプリケーションを推奨すべき最終的な確率に組み合わせるために使用される。前述のルールを策定するための手法がいくつか存在しており、最も一般的なものは、「前方連鎖の」エキスパート・システムのルール、又は「後方連鎖の」エキスパート・システムのルールである。前述のルールは、「速度が<0.1の場合、望ましさは高い」という文などのif−then文のようにみえる。更に、確率理論、及びデンプスター・シェファーの決定理論、古典的決定理論などの種々の他の数学的手法を、種々の複雑な代替案の中から決定するために使用することが可能である。上記種々の他の数学的手法が、この場合に適用し得る代替的なアルゴリズムを提供する。
もう一度、図10を参照すれば、方法1000は、完了するために、動的に判定された最善のサービス・プロバイダに対する要求を送出する(1012)ことによって完了する。
次に図11を参照すれば、本発明によるサービス・プロバイダの半自動選択の方法1100の一実施例を説明する。方法は、ユーザ選好を収集し、記憶し(1002)、サービス・プロバイダの属性を収集し、記憶し(1004)、サービス要求を識別し(1006)、サービス・プロバイダのリストを求める(1008)ことによって始まる。工程1002、1004、1006、及び1008は図を参照して上述した工程と同じであり、よって、説明はここでは繰り返さない。次に、方法は、現在、ネットワークに接続されており、サービス要求の実行に利用可能なサービス・プロバイダのリストをフィルタリングする(1102)。例えば、方法は、ユ―ザの選好、及びサービス・プロバイダの属性を比較することにより、利用可能なサービス・プロバイダのリストを動的にフィルタリングする。一実施例では、この動的フィルタリング工程は、最善のサービス・プロバイダを判定するために図10を参照して上述したものと同様に行われる。すなわち、サービス・プロバイダのリストは、加重和アルゴリズム、ファジー・ロジック、又は確率論モデリングを使用して動的にフィルタリングすることが可能である。例えば、最高の加重和を有するサービス・プロバイダを選ぶ代わりに、加重和アルゴリズムが使用された場合、工程1102の方法は、最高の加重和値を有するサービス・プロバイダのリストを生成することになる。この実施例は、和Sが最高の最上位のk個のアイテムのリストを提供し、kは、ユーザによって要求されたアイテムの数である。例えば、ユーザが、最善の3つの一致を生成し、列挙する旨の選好として設定した場合、方法は、最高の3つの加重和値を備えたサービス・プロバイダのリストを生成することになる。同様に、モデリング時に公表されたファジー・ロジックは、ユーザの属性の選好に最もよく一致するサービス・プロバイダのリストを生成するために使用することが可能である。前述の手法の何れかは更に、ユーザの選好に応じて、変動する長さのリストを生成することも可能である。方法は、サービス・プロバイダのショート・リストを要求側に提示する(1104)ことによって続く。これは、提示モジュール322により、ユーザに向けて提示するためのリストをサービス・プロバイダ選択エンジン610が提供することによって行うことが可能である。携帯用計算装置102は、サービス・プロバイダのショート・リストからのサービス・プロバイダについて、ユーザからの入力選択を受け取る。携帯用計算装置102は、入力をサービス・プロバイダ選択エンジン610に送出する。サービス・プロバイダ選択エンジン610は、サービス・プロバイダの選択を受け取り(1106)、完了するために、選択的なサービス・プロバイダにサービス要求を送出し(1108)、方法が終了する。
本発明の実施例の上記説明は、例証及び説明の目的で提示している。これは、網羅的であることを意図するものでなく、本発明を、開示された厳密な形態に制限することを意図しているものでない。上記教示に照らして多くの修正及び変更が考えられる。本発明の範囲が、この詳細な説明によって制限されず、本願の請求項によって制限される。当業者によって理解されるように、本発明は、その趣旨又は本質的な特性から逸脱しない限り、他の特定の形態で実施することができる。同様に、モジュール、ルーチン、構成、属性、方法論、及び他の局面の特定の命名及び区分は必須でも重要でもなく、本発明又はその構成を実現する機構は、異なるネーム、区分、及び/又はフォーマットを有し得る。更に、当業者に明らかになるように、本発明のモジュール、ルーチン、構成、属性、方法論、及び他の局面は、ソフトウェア、ハードウェア、ファームウェア、又はこれら3つの何れかの組み合わせとして実現することが可能である。更に、本発明の構成部分(この一例は、モジュールである)がソフトウェアとして実現される場合には、上記構成部分は、スタンドアロン・プログラムとして実現され得、より大きなプログラムの一部として実現され得る。上記構成部分は、別個の複数のプログラムとして実現され得、静的又は動的にリンクされたライブラリとして実現され得る。上記構成部分は、カーネル・ロード可能なモジュールとして実現され得、デバイス・ドライバとして実現され得る。あるいは、現在若しくは将来にコンピュータ・プログラミングの技術分野において知られている他のやり方全てで実現される。更に、本発明は、何れかの特定のプログラミング言語における実現形態、又は、何れかの特定のオペレーティング・システム若しくは環境のための実現形態に決して制限されるものでない。よって、本発明の開示は、以下の特許請求の範囲に記載された本発明の範囲を例証することを意図しており、上記本発明の範囲を限定することを意図するものでない。
本出願は、2010年9月10日付け出願の米国特許出願を基礎とし、米国特許出願第12/879,148号の優先権の利益を主張する。
Claims (15)
- 複数のサービス・プロバイダ・コンピュータからのジョブの実行のための、サービス・プロバイダ・コンピュータの選択のためのコンピュータによって実現される方法であって、
ユーザ選好を受け取る工程と、
前記複数のサービス・プロバイダ・コンピュータの属性を収集する工程と、
ジョブ及び関連付けられたユーザの前記実行に対するサービス要求を識別する工程と、
前記ユーザ選好を、前記収集された属性と比較することにより、前記ジョブを実行するために少なくとも1つのサービス・プロバイダをサービス・プロバイダ選択モジュールによって判定する工程と、
前記ジョブの実行のために前記判定された少なくとも1つのサービス・プロバイダに前記ジョブを送出する工程と
を含む方法。 - 請求項1記載の方法であって、現在、ネットワークに接続されており、前記サービス要求の実行に利用可能な前記複数のサービス・プロバイダ・コンピュータから、サービス・プロバイダ・コンピュータのリストを求める工程を更に含み、前記ジョブを実行するために少なくとも1つのサービス・プロバイダをサービス・プロバイダ選択モジュールによって判定する工程は、前記サービス・プロバイダ・コンピュータのリストを使用する方法。
- 請求項1記載の方法であって、前記判定する工程は、自動であり、前記ジョブを実行するためにサービス・プロバイダ・コンピュータを判定し、前記判定されたサービス・プロバイダ・コンピュータは、前記ユーザ選好に近い属性を有し、前記送出する工程は、前記ジョブを前記判定されたサービス・プロバイダ・コンピュータに送出する方法。
- 請求項1記載の方法であって、前記判定する工程は半自動であり、前記ジョブを実行するために、規定された数のサービス・プロバイダ・コンピュータを有するリストを生成し、前記サービス・プロバイダ・コンピュータのリストは前記ユーザ選好に近い属性を有し、前記方法は、前記リストからのサービス・プロバイダ・コンピュータの選択をユーザから受け取る工程を含み、前記送出する工程は、前記選択されたサービス・プロバイダ・コンピュータに前記ジョブを送出する方法。
- 請求項1記載の方法であって、前記少なくとも1つのサービス・プロバイダは、サービス・プロバイダ・コンピュータそれぞれについて加重和を算出することによって判定される方法。
- コンピュータ読み取り可能なプログラムを含む、コンピュータが利用可能な媒体を含むコンピュータ・プログラム・プロダクトであって、前記コンピュータ読み取り可能なプログラムは、コンピュータ上で実行されると、
ユーザ選好を受け取る機能と、
前記複数のサービス・プロバイダ・コンピュータの属性を収集する機能と、
ジョブ及び関連付けられたユーザの前記実行に対するサービス要求を識別する機能と、
前記ユーザ選好を、前記収集された属性と比較することにより、前記ジョブを実行するために少なくとも1つのサービス・プロバイダをサービス・プロバイダ選択モジュールによって判定する機能と、
前記ジョブの実行のために前記判定された少なくとも1つのサービス・プロバイダに前記ジョブを送出する機能と
を前記コンピュータに行わせるコンピュータ・プログラム・プロダクト。 - 請求項6記載のコンピュータ・プログラム・プロダクトであって、前記コンピュータ読み取り可能なプログラムは、コンピュータ上で実行されると、更に、前記コンピュータに、
現在、ネットワークに接続されており、前記サービス要求の実行に利用可能な前記複数のサービス・プロバイダ・コンピュータから、サービス・プロバイダ・コンピュータのリストを求める機能と
を前記コンピュータに行わせ、
前記コンピュータは、前記サービス・プロバイダ・コンピュータのリストを使用して前記ジョブを実行するために前記少なくとも1つのサービス・プロバイダを判定するコンピュータ・プログラム・プロダクト。 - 請求項6記載のコンピュータ・プログラム・プロダクトであって、前記判定する機能は、自動であり、前記ジョブを実行するためにサービス・プロバイダ・コンピュータを判定し、前記判定されたサービス・プロバイダ・コンピュータは、前記ユーザ選好に近い属性を有し、前記送出する機能は、前記ジョブを前記判定されたサービス・プロバイダ・コンピュータに送出するコンピュータ・プログラム・プロダクト。
- 請求項6記載のコンピュータ・プログラム・プロダクトであって、
前記判定する機能は半自動であり、前記ジョブを実行するために、規定数のサービス・プロバイダ・コンピュータを有するリストを生成し、前記サービス・プロバイダ・コンピュータのリストは前記ユーザ選好に近い属性を有し、
前記コンピュータは、前記リストからのサービス・プロバイダ・コンピュータの選択をユーザから受け取り、前記コンピュータは前記選択されたサービス・プロバイダ・コンピュータに前記ジョブを送出するコンピュータ・プログラム・プロダクト。 - 請求項6記載のコンピュータ・プログラム・プロダクトであって、前記コンピュータは、サービス・プロバイダ・コンピュータ毎に加重和を算出することにより、前記ジョブを実行するために前記少なくとも1つのサービス・プロバイダを判定するコンピュータ・プログラム・プロダクト。
- 複数のサービス・プロバイダ・コンピュータからのジョブの実行のための、サービス・プロバイダ・コンピュータの選択のためのシステムであって、
前記サービス・プロバイダ・コンピュータの自動選択のための、ユーザの選好についての情報を受け取るためのユーザ選好収集器であって、前記ユーザ選好収集器はユーザからの情報を受け取るよう結合されるユーザ選好収集器と、
ジョブを完了するうえで前記複数のサービス・プロバイダ・コンピュータの実行を監視するためのサービス・プロバイダ属性収集器であって、前記サービス・プロバイダ属性収集器は、前記複数のサービス・プロバイダ・コンピュータに結合されるサービス・プロバイダ属性収集器と、
ワークフローのジョブを行うよう前記サービス・プロバイダを選択するためのサービス・プロバイダ選択エンジンと
を備え、前記サービス・プロバイダ選択エンジンは、前記ユーザの選好、及び前記サービス・プロバイダの属性を比較して、前記属性が前記ユーザの選好に近い少なくとも1つのサービス・プロバイダ・コンピュータを判定し、前記サービス・プロバイダ選択エンジンは、前記サービス・プロバイダ属性収集器及び前記ユーザ選好収集器との通信のために結合されたシステム。 - 請求項11記載のシステムであって、ワークフローのジョブを実行するためにどのサービス・プロバイダ・コンピュータがアクセス可能であり、利用可能であるかを判定するようネットワークを監視するためのサービス・プロバイダ利用可能性検出器を更に備え、前記サービス・プロバイダ利用可能性検出器は、前記複数のサービス・プロバイダ・コンピュータ、及び前記サービス・プロバイダ選択モジュールに結合され、前記サービス・プロバイダ選択エンジンは、前記サービス・プロバイダ利用可能性検出器からの入力を使用して、前記ユーザの選好に近い属性を有する前記少なくとも1つのサービス・プロバイダ・コンピュータを判定するシステム。
- 請求項11記載のシステムであって、前記ユーザ選好収集器は、携帯用計算装置の前記提示モジュールと協働して、前記サービス・プロバイダ選択エンジンの自動、半自動、又は手動の動作のための選好を前記ユーザが入力することを可能にするグラフィック・ユーザ・インタフェースを生成するシステム。
- 請求項11記載のシステムであって、前記ユーザ選好収集器は、携帯用計算装置の前記提示モジュールと協働して、属性、及び前記属性の重要度の対応するレベルを前記ユーザが入力することを可能にするグラフィック・ユーザ・インタフェースを生成するシステム。
- 請求項11記載のシステムであって、
前記ユーザの選好、及び他の情報を記憶するためのユーザ選好記憶装置であって、前記ユーザ選好記憶装置は、情報を受け取り、記憶するよう前記ユーザ選好収集器に結合され、前記サービス・プロバイダ選択エンジンに情報を提供するよう結合されたユーザ選好記憶装置と、
ジョブの実行及び前記複数のサービス・プロバイダ・コンピュータの完了についての属性を記憶するためのサービス・プロバイダ属性記憶装置と
を更に備え、前記サービス・プロバイダ属性記憶装置は、サービス・プロバイダ属性情報を受け取り、記憶するよう前記サービス・プロバイダ属性収集器に結合され、サービス・プロバイダ属性情報を前記サービス・プロバイダ選択エンジンに提供するよう結合され、
前記サービス・プロバイダ選択エンジンは、ユーザの選好及び他の情報を取り出すよう前記ユーザ選好記憶装置に結合され、属性、及び前記ユーザに対するその重要度についての情報を取り出すよう前記サービス・プロバイダ属性記憶装置に結合されたシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/879,148 US9043219B2 (en) | 2010-09-10 | 2010-09-10 | Automatic and semi-automatic selection of service or processing providers |
US12/879,148 | 2010-09-10 | ||
PCT/JP2011/070675 WO2012033215A1 (en) | 2010-09-10 | 2011-09-06 | Automatic and semi-automatic selection of service or processing providers |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013543604A true JP2013543604A (ja) | 2013-12-05 |
Family
ID=45807582
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013511442A Withdrawn JP2013543604A (ja) | 2010-09-10 | 2011-09-06 | サービス又は処理プロバイダの自動選択及び半自動選択 |
Country Status (8)
Country | Link |
---|---|
US (1) | US9043219B2 (ja) |
EP (1) | EP2614440A4 (ja) |
JP (1) | JP2013543604A (ja) |
KR (1) | KR20130073940A (ja) |
CN (1) | CN103080915B (ja) |
AU (1) | AU2011299801A1 (ja) |
SG (1) | SG188290A1 (ja) |
WO (1) | WO2012033215A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10810551B2 (en) | 2016-03-10 | 2020-10-20 | Mitsubishi Electric Corporation | Project management support system, project management support method, and non-transitory computer readable medium storing a project management support program |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8488575B2 (en) * | 2010-11-18 | 2013-07-16 | At&T Intellectual Property, I, L.P. | Methods, devices, and computer program products for providing a plurality of application services via a customized private network connection |
US8813205B2 (en) * | 2012-02-06 | 2014-08-19 | International Business Machines Corporation | Consolidating disparate cloud service data and behavior based on trust relationships between cloud services |
US10002206B2 (en) * | 2012-10-26 | 2018-06-19 | Saturn Licensing Llc | Information processing device and information processing method |
US10083411B2 (en) | 2012-11-15 | 2018-09-25 | Impel It! Inc. | Methods and systems for the sale of consumer services |
US9813318B2 (en) * | 2013-03-15 | 2017-11-07 | International Business Machines Corporation | Assessment of best fit cloud deployment infrastructures |
US20140278807A1 (en) * | 2013-03-15 | 2014-09-18 | Cloudamize, Inc. | Cloud service optimization for cost, performance and configuration |
US9818127B2 (en) * | 2013-03-15 | 2017-11-14 | International Business Machines Corporation | Implementing comparison of cloud service provider package offerings |
US20130282545A1 (en) * | 2013-04-20 | 2013-10-24 | Concurix Corporation | Marketplace for Monitoring Services |
US20140316926A1 (en) * | 2013-04-20 | 2014-10-23 | Concurix Corporation | Automated Market Maker in Monitoring Services Marketplace |
CN103279571A (zh) * | 2013-06-20 | 2013-09-04 | 海南大学 | 一种基于价值的电子服务合同选择方法 |
CN103677913B (zh) | 2013-12-06 | 2017-07-25 | 华为技术有限公司 | 基于业务流程管理bpm的业务处理方法及装置 |
US10296391B2 (en) * | 2014-06-30 | 2019-05-21 | Microsoft Technology Licensing, Llc | Assigning a player to a machine |
CN106920016B (zh) * | 2015-12-24 | 2022-12-02 | 罗伯特·博世有限公司 | 服务调度***及其方法 |
CN107547443A (zh) * | 2016-06-24 | 2018-01-05 | 北京佰才邦技术有限公司 | 一种服务提供商标识类型指示方法、装置和相关设备 |
JP2018055479A (ja) * | 2016-09-29 | 2018-04-05 | 富士通株式会社 | サービス条件処理プログラム、装置、及び方法 |
FR3065554A1 (fr) * | 2017-04-21 | 2018-10-26 | Orange | Procede de gestion d'un systeme informatique en nuage |
CN107688987A (zh) * | 2017-08-31 | 2018-02-13 | 平安科技(深圳)有限公司 | 电子装置、保险推荐方法、及计算机可读存储介质 |
US10991034B2 (en) * | 2017-09-26 | 2021-04-27 | Matthew Abney | Stylist locator |
US20190236159A1 (en) * | 2018-01-31 | 2019-08-01 | Salesforce.Com, Inc. | Knowledge power detector |
CN108776548A (zh) * | 2018-06-15 | 2018-11-09 | 广州华欣电子科技有限公司 | 基于红外触控屏的书写笔迹生成方法、***及相关组件 |
US11934971B2 (en) | 2019-05-24 | 2024-03-19 | Digital Lion, LLC | Systems and methods for automatically building a machine learning model |
US11507869B2 (en) | 2019-05-24 | 2022-11-22 | Digital Lion, LLC | Predictive modeling and analytics for processing and distributing data traffic |
US11704617B2 (en) * | 2019-06-20 | 2023-07-18 | Stripe, Inc. | Systems and methods for modeling and analysis of infrastructure services provided by cloud services provider systems |
CN110399552A (zh) * | 2019-06-25 | 2019-11-01 | 天津五八到家科技有限公司 | 信息推荐方法、装置、设备和存储介质 |
CN111859105A (zh) * | 2020-04-10 | 2020-10-30 | 北京嘀嘀无限科技发展有限公司 | 服务请求处理方法、装置、电子设备及存储介质 |
WO2021222461A1 (en) * | 2020-04-28 | 2021-11-04 | Rex Peter L | Electronic reputation management |
US12045697B2 (en) * | 2020-10-02 | 2024-07-23 | Sap Se | Document initiated intelligent workflow |
US20220327636A1 (en) * | 2021-04-07 | 2022-10-13 | Gwendolyn Rhoss | Purchase Receipt Data System |
Family Cites Families (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08335214A (ja) | 1995-06-07 | 1996-12-17 | Toshiba Corp | ソート方法,文書検索方法及び情報処理装置 |
JPH09325879A (ja) | 1996-06-04 | 1997-12-16 | Omron Corp | 画面スクロール操作支援方法及び装置 |
JP4120724B2 (ja) | 1998-08-18 | 2008-07-16 | セイコーエプソン株式会社 | 画像データ管理装置、画像データ管理方法および画像データ管理プログラムを記録した媒体 |
JP2000287164A (ja) | 1999-03-31 | 2000-10-13 | Ricoh Co Ltd | 工事アルバム作成支援システム、およびそのためのデータとプログラムを記録したコンピュータ読み取り可能な記録媒体 |
US7139728B2 (en) * | 1999-12-30 | 2006-11-21 | Rod Rigole | Systems and methods for online selection of service providers and management of service accounts |
US7002700B1 (en) | 2000-09-14 | 2006-02-21 | Electronics For Imaging, Inc. | Method and system for merging scan files into a color workflow |
AU2003200220B1 (en) * | 2002-05-23 | 2003-05-01 | River Dynamics Pty Ltd | System and method for selecting a service provider |
US6847872B2 (en) | 2002-11-07 | 2005-01-25 | International Business Machines Corporation | Supplemental diagnostic and services resource planning for mobile systems |
JP4161806B2 (ja) | 2003-06-02 | 2008-10-08 | 富士ゼロックス株式会社 | 管理装置、管理方法およびネットワークシステム |
US20050007468A1 (en) | 2003-07-10 | 2005-01-13 | Stavely Donald J. | Templates for guiding user in use of digital camera |
EP1697786A4 (en) | 2003-11-26 | 2008-09-24 | E Ink Corp | ELECTROOPTICAL DISPLAYS WITH REDUCED RESISTANCE |
US20090132345A1 (en) * | 2004-02-13 | 2009-05-21 | Bahram Meyssami | Method and system for determining relevant matches based on attributes |
JP2005242604A (ja) | 2004-02-26 | 2005-09-08 | Seiko Epson Corp | 画像配列の決定 |
US7365787B2 (en) | 2004-02-26 | 2008-04-29 | Research In Motion Limited | Mobile device with integrated camera operations |
US8289250B2 (en) | 2004-03-31 | 2012-10-16 | E Ink Corporation | Methods for driving electro-optic displays |
US20050219263A1 (en) | 2004-04-01 | 2005-10-06 | Thompson Robert L | System and method for associating documents with multi-media data |
US7639387B2 (en) | 2005-08-23 | 2009-12-29 | Ricoh Co., Ltd. | Authoring tools using a mixed media environment |
US9830066B2 (en) | 2004-12-22 | 2017-11-28 | Conversant Wireless Licensing S.A R.L. | Mobile communications terminal and method |
US20060253478A1 (en) | 2005-03-16 | 2006-11-09 | Graham Michael L | Client centric document preparation interface |
US8126914B2 (en) | 2005-03-23 | 2012-02-28 | International Business Machines Corporation | Selecting a resource manager to satisfy a service request |
JP4779445B2 (ja) | 2005-05-26 | 2011-09-28 | 株式会社ニコン | 編集装置、編集プログラムおよび編集システム |
US8175966B2 (en) * | 2005-06-20 | 2012-05-08 | Simplexity, Llc | System and method for identifying an alternative provider of telecommunications services |
US7849053B2 (en) * | 2005-12-29 | 2010-12-07 | Ricoh Co. Ltd. | Coordination and tracking of workflows |
WO2007099539A2 (en) * | 2006-03-01 | 2007-09-07 | T.K.T Technologies Ltd. | Method and system for provision of personalized service |
US20070226374A1 (en) * | 2006-03-23 | 2007-09-27 | Quarterman Scott L | System and method for identifying favorite service providers |
AU2007247996B2 (en) * | 2006-05-02 | 2012-07-12 | Invidi Technologies Corporation | Fuzzy logic based viewer identification |
JP2007328489A (ja) | 2006-06-07 | 2007-12-20 | Fuji Xerox Co Ltd | 文書管理装置及びプログラム |
US20080040162A1 (en) | 2006-08-08 | 2008-02-14 | Siemens Medical Solutions Usa, Inc. | System for Processing and Testing of Electronic Forms and Associated Templates |
US20080052396A1 (en) | 2006-08-22 | 2008-02-28 | Motorola, Inc. | Providing a service from an application service provider to a client in a communication system |
JP4795193B2 (ja) | 2006-10-13 | 2011-10-19 | キヤノン株式会社 | 画像表示装置及びその制御方法及びプログラム |
US20080247004A1 (en) * | 2007-04-03 | 2008-10-09 | Michael Yeung | System and method for workflow control of scanned document input |
JP5194581B2 (ja) | 2007-06-20 | 2013-05-08 | 富士ゼロックス株式会社 | 文書処理装置および文書処理プログラム |
JP4121544B2 (ja) | 2007-06-25 | 2008-07-23 | 富士フイルム株式会社 | 画像表示装置及び画像表示方法 |
JP2009075879A (ja) | 2007-09-20 | 2009-04-09 | Ricoh Co Ltd | 画像処理装置と画像処理方法とプログラム |
US20090086945A1 (en) * | 2007-09-27 | 2009-04-02 | Buchanan Annette L | Methods and Apparatus for Selecting a Service Provider on a Per-Call Basis |
US20090094275A1 (en) | 2007-10-09 | 2009-04-09 | Lawson Software, Inc. | Auditable action request processing in a workflow environment |
JP4702705B2 (ja) | 2008-03-10 | 2011-06-15 | 富士ゼロックス株式会社 | 情報表示処理システム、クライアント端末、管理サーバ、プログラム |
US8868791B2 (en) * | 2008-09-29 | 2014-10-21 | Toshiba America Research, Inc. | System and method for evaluating multiple connectivity options |
TW201027373A (en) | 2009-01-09 | 2010-07-16 | Chung Hsin Elec & Mach Mfg | Digital lifetime record and display system |
US8504624B2 (en) * | 2009-09-08 | 2013-08-06 | Ricoh Co., Ltd. | Stroke and image aggregation and analytics |
US8560854B2 (en) | 2009-09-08 | 2013-10-15 | Ricoh Co., Ltd. | Device enabled verifiable stroke and image based workflows |
US8346624B2 (en) * | 2009-12-09 | 2013-01-01 | Allconnect, Inc. | Systems and methods for recommending third party products and services |
US20110145094A1 (en) * | 2009-12-11 | 2011-06-16 | International Business Machines Corporation | Cloud servicing brokering |
US8443280B2 (en) * | 2009-12-15 | 2013-05-14 | Bluebeam Software, Inc. | Method for sequenced document annotations |
US20110231745A1 (en) | 2010-03-15 | 2011-09-22 | TripAdvisor LLC. | Slideshow creator |
-
2010
- 2010-09-10 US US12/879,148 patent/US9043219B2/en not_active Expired - Fee Related
-
2011
- 2011-09-06 EP EP11823685.0A patent/EP2614440A4/en not_active Ceased
- 2011-09-06 WO PCT/JP2011/070675 patent/WO2012033215A1/en active Application Filing
- 2011-09-06 CN CN201180043009.5A patent/CN103080915B/zh not_active Expired - Fee Related
- 2011-09-06 JP JP2013511442A patent/JP2013543604A/ja not_active Withdrawn
- 2011-09-06 SG SG2013013842A patent/SG188290A1/en unknown
- 2011-09-06 AU AU2011299801A patent/AU2011299801A1/en not_active Abandoned
- 2011-09-06 KR KR1020137005942A patent/KR20130073940A/ko not_active Application Discontinuation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10810551B2 (en) | 2016-03-10 | 2020-10-20 | Mitsubishi Electric Corporation | Project management support system, project management support method, and non-transitory computer readable medium storing a project management support program |
Also Published As
Publication number | Publication date |
---|---|
EP2614440A1 (en) | 2013-07-17 |
EP2614440A4 (en) | 2015-01-28 |
AU2011299801A1 (en) | 2013-03-14 |
SG188290A1 (en) | 2013-04-30 |
US9043219B2 (en) | 2015-05-26 |
WO2012033215A1 (en) | 2012-03-15 |
KR20130073940A (ko) | 2013-07-03 |
US20120066018A1 (en) | 2012-03-15 |
CN103080915B (zh) | 2015-11-25 |
CN103080915A (zh) | 2013-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2013543604A (ja) | サービス又は処理プロバイダの自動選択及び半自動選択 | |
JP5846130B2 (ja) | 位置バー及びブックマーク機能 | |
JP5884741B2 (ja) | コンテキストに基づいた、文書への捕捉画像の自動アタッチメント | |
US8799829B2 (en) | Methods and systems for background uploading of media files for improved user experience in production of media-based products | |
US8504624B2 (en) | Stroke and image aggregation and analytics | |
JP5939162B2 (ja) | 単一入力ワーク・フロー・ルーティングのためのインボックス・モード及び文書モードを備えたユーザ・インタフェース | |
US20140193047A1 (en) | Systems and methods for generating autoflow of content based on image and user analysis as well as use case data for a media-based printable product | |
US20110040600A1 (en) | E-discovery decision support | |
JP2006259811A (ja) | ログ作成装置及びプログラム | |
US8875057B2 (en) | Document management framework | |
JP2011060286A (ja) | ペーパーライクフォーム処理のための方法及びシステム | |
US9805013B2 (en) | Grouping forms by task in a manifest | |
US20130047269A1 (en) | Systems and methods for real-time viewing and manipulation of information hosted on third-party systems, including metrics, false acknowledgements, and auto-completion for inputting information over a network | |
TWI539299B (zh) | 使用用於線上探究的結構化資料 | |
JP2004534982A (ja) | オフラインデータ収集方法 | |
US20150269177A1 (en) | Method and system for determining user interest in a file | |
US20240031242A1 (en) | Ai-based system and method for establishing channelized communications | |
JP2010073092A (ja) | 情報処理装置およびプログラム | |
JP2014130488A (ja) | Irシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20141202 |