(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-03-03
(45)【発行日】2023-03-13
(54)【発明の名称】動的ユーザ・インタフェース・ブループリント
(51)【国際特許分類】
G06F 3/0481 20220101AFI20230306BHJP
G06F 3/14 20060101ALI20230306BHJP
【FI】
G06F3/0481
G06F3/14 310C
(21)【出願番号】P 2020543223
(86)(22)【出願日】2019-02-11
(86)【国際出願番号】 US2019017419
(87)【国際公開番号】W WO2019164688
(87)【国際公開日】2019-08-29
【審査請求日】2020-10-05
(32)【優先日】2018-02-19
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】520107951
【氏名又は名称】アメリカン エキスプレス トラヴェル リレイテッド サーヴィシーズ カンパニー, インコーポレイテッド
【氏名又は名称原語表記】AMERICAN EXPRESS TRAVEL RELATED SERVICES COMPANY, INC.
【住所又は居所原語表記】200 Vesey Street, New York, NY 10285-4900 U.S.A.
(74)【代理人】
【識別番号】100083116
【氏名又は名称】松浦 憲三
(72)【発明者】
【氏名】アーナント アターレ
(72)【発明者】
【氏名】スリニヴァス ダサリ
【審査官】星野 裕
(56)【参考文献】
【文献】特開2007-334481(JP,A)
【文献】特開2017-173996(JP,A)
【文献】米国特許出願公開第2014/0089824(US,A1)
【文献】米国特許出願公開第2014/0282062(US,A1)
【文献】特開2006-178966(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/048
G06F 3/14
(57)【特許請求の範囲】
【請求項1】
コンピュータ・ベース・システムによって、ウェブ・クライアントのためのユーザ・インタフェース・ブループリント・ファイルを作成すること、
前記コンピュータ・ベース・システムによって、第1のアプリケーションについての第1のユーザ・インタフェース特徴の明示的ユーザ選択を前記ユーザ・インタフェース・ブループリント・ファイル内に記憶することであって、前記明示的ユーザ選択は前記ウェブ・クライアントから受信される、こと、
前記コンピュータ・ベース・システムによって、前記第1のアプリケーションについての
ユーザ・インタフェース密度プリファレンスの推定ユーザ選択を決定することであって、
前記決定は、前記ウェブ・クライアントが示す、
前記
ユーザ・インタフェース密度プリファレンスを有する第1のユーザ・インタフェースで行われる動作、
及び、
前記
ユーザ・インタフェース密度プリファレンスを有しない第2のユーザ・インタフェースで行われない動作、からの入力の少なくとも一部分に基づいて行われる、こと、
前記コンピュータ・ベース・システムによって、前記第1のアプリケーションについての前記
ユーザ・インタフェース密度プリファレンスの前記推定ユーザ選択を前記ユーザ・インタフェース・ブループリント・ファイル内に記憶すること、
前記コンピュータ・ベース・システムによって、第2のアプリケーションへのアクセス要求を前記ウェブ・クライアントから受信すること、
前記コンピュータ・ベース・システムによって、前記要求に応答して、前記ユーザ・インタフェース・ブループリント・ファイルを読み取ること、及び、
前記コンピュータ・ベース・システムによって、前記明示的ユーザ選択及び前記推定ユーザ選択の少なくとも一部に基づいて、前記第1のユーザ・インタフェース特徴と前記
ユーザ・インタフェース密度プリファレンスとを有する前記第2のアプリケーションについての第3のユーザ・インタフェースを生成すること、
を含む、方法。
【請求項2】
前記ユーザ・インタフェース・ブループリント・ファイルは、プレーン・テキスト(txt)ファイル又は拡張マークアップ言語(xml)ファイルのうちの少なくとも一つを含む、請求項1に記載の方法。
【請求項3】
前記ユーザ・インタフェース・ブループリント・ファイルは、固有のユーザ識別情報を含む、請求項1に記載の方法。
【請求項4】
前記コンピュータ・ベース・システムによって、及び前記第2のアプリケーションへの前記アクセス要求に応答し、固有のユーザ識別情報の少なくとも一部に基づいて、前記ユーザ・インタフェース・ブループリント・ファイルについてのデータベースを照会することを更に含む、請求項1に記載の方法。
【請求項5】
前記第1のアプリケーション及び前記第2のアプリケーションは、ユーザ・デバイス上のローカル・アプリケーションである、請求項1に記載の方法。
【請求項6】
前記第1のアプリケーション及び前記第2のアプリケーションは、ウェブ・アプリケーションである、請求項1に記載の方法。
【請求項7】
前記ユーザ・インタフェース・ブループリント・ファイルは、文字数、段落数、画像数、画像サイズ、フォーム入力数、ウィンドウ・サイズ、ウィンドウ・ズーム、ウィンドウ境界、フォント・リスト、フォント・サイズ、制御階層、制御名、制御指令、制御サイズ、制御位置、制御カラー、制御位置合わせ、スクロール・バー、レイアウト階層、レイアウト・タイプ、レイアウト重み、レイアウト向きページネーションのうちの、2つ又はそれ以上を含む、複数のユーザ・インタフェース特徴を含む、請求項1に記載の方法。
【請求項8】
プロセッサを備えるコンピューティング・デバイスと、
前記プロセッサと通信するように構成されている有形の、非一時的メモリと、
を備える、システムであって、前記有形の、非一時的メモリは、前記プロセッサによる実行に応答して、
前記プロセッサによって、ユーザのためのユーザ・インタフェース・ブループリント・ファイルを作成すること、
前記プロセッサによって、第1のアプリケーションについての第1のユーザ・インタフェース特徴の明示的ユーザ選択を前記ユーザ・インタフェース・ブループリント・ファイル内に記憶すること、
前記プロセッサによって、前記第1のアプリケーションについての
ユーザ・インタフェース密度プリファレンスの推定ユーザ選択を決定することであって、
前記決定は、
前記
ユーザ・インタフェース密度プリファレンスを有する第1のユーザ・インタフェースで行われる動作、
及び、
前記
ユーザ・インタフェース密度プリファレンスを有しない第2のユーザ・インタフェースで行われない動作、の少なくとも一部分に基づいて行われる、こと、
前記プロセッサによって、前記第1のアプリケーションについての前記
ユーザ・インタフェース密度プリファレンスの前記推定ユーザ選択を前記ユーザ・インタフェース・ブループリント・ファイル内に記憶すること、
前記プロセッサによって、第2のアプリケーションへのアクセス要求を前記ユーザから受信すること、
前記プロセッサによって、前記要求に応答して、前記ユーザ・インタフェース・ブループリント・ファイルを読み取ること、及び、
前記プロセッサによって、前記明示的ユーザ選択及び前記推定ユーザ選択の少なくとも一部分に基づいて、前記第1のユーザ・インタフェース特徴と前記
ユーザ・インタフェース密度プリファレンスとを有する前記第2のアプリケーションについての第3のユーザ・インタフェースを生成すること、
を含む動作を、前記プロセッサに実行させる命令を記憶している、システム。
【請求項9】
前記ユーザ・インタフェース・ブループリント・ファイルは、プレーン・テキスト(txt)ファイル又は拡張マークアップ言語(xml)ファイルのうちの少なくとも一つを含む、請求項8に記載のシステム。
【請求項10】
前記ユーザ・インタフェース・ブループリント・ファイルは、固有のユーザ識別情報を含む、請求項8に記載のシステム。
【請求項11】
前記動作は、前記プロセッサによって、及び前記第2のアプリケーションへの前記アクセス要求に応答し、前記ユーザについての固有のユーザ識別情報に少なくとも一部分に基づいて、前記ユーザ・インタフェース・ブループリント・ファイルについてのデータベースを照会することを更に含む、請求項8に記載のシステム。
【請求項12】
前記第1のアプリケーション及び前記第2のアプリケーションは、ユーザ・デバイス上のローカル・アプリケーションである、請求項8に記載のシステム。
【請求項13】
前記第1のアプリケーション及び前記第2のアプリケーションは、ウェブ・アプリケーションである、請求項8に記載のシステム。
【請求項14】
前記ユーザ・インタフェース・ブループリント・ファイルは、文字数、段落数、画像数、画像サイズ、フォーム入力数、ウィンドウ・サイズ、ウィンドウ・ズーム、ウィンドウ境界、フォント・リスト、フォント・サイズ、制御階層、制御名、制御指令、制御サイズ、制御位置、制御カラー、制御位置合わせ、スクロール・バー、レイアウト階層、レイアウト・タイプ、レイアウト重み、レイアウト向き、又はページネーションのうちの、2つ又はそれ以上を含む、複数のユーザ・インタフェース特徴を含む、請求項8に記載のシステム。
【請求項15】
非一時的な、有形のコンピュータ可読記憶媒体であって、コンピュータ・ベース・システムによる実行に応答して、
前記コンピュータ・ベース・システムによって、ユーザ・インタフェース・ブループリント・ファイルを作成すること、
前記コンピュータ・ベース・システムによって、第1のアプリケーションについての第1のユーザ・インタフェース特徴の明示的ユーザ選択を前記ユーザ・インタフェース・ブループリント・ファイル内に記憶すること、
前記コンピュータ・ベース・システムによって、前記第1のアプリケーションについての
ユーザ・インタフェース密度プリファレンスの推定ユーザ選択を決定することであって、
前記決定は、
前記
ユーザ・インタフェース密度プリファレンスを有する第1のユーザ・インタフェースで行われる動作、
及び、
前記
ユーザ・インタフェース密度プリファレンスを有しない第2のユーザ・インタフェースで行われない動作、の少なくとも一部分に基づいて行われる、こと、
前記コンピュータ・ベース・システムによって、前記
ユーザ・インタフェース密度プリファレンスの前記推定ユーザ選択を前記ユーザ・インタフェース・ブループリント・ファイル内に記憶すること、
前記コンピュータ・ベース・システムによって、第2のアプリケーションへのアクセス要求
を受信すること、
前記コンピュータ・ベース・システムによって、前記要求に応答して、前記ユーザ・インタフェース・ブループリント・ファイルを読み取ること、及び、
前記コンピュータ・ベース・システムによって、前記明示的ユーザ選択及び前記推定ユーザ選択の少なくとも一部に基づいて、前記第1
のユーザ・インタフェース特徴と前記
ユーザ・インタフェース密度プリファレンスを有する前記第2のアプリケーションについての第3のユーザ・インタフェースを生成すること、
を含む動作を、前記コンピュータ・ベース・システムに実行させる命令を記憶している、非一時的な、有形のコンピュータ可読記憶媒体。
【請求項16】
前記ユーザ・インタフェース・ブループリント・ファイルは、プレーン・テキスト(txt)ファイル又は拡張マークアップ言語(xml)ファイルのうちの少なくとも一つを含む、請求項15に記載の非一時的な、有形のコンピュータ可読記憶媒体。
【請求項17】
前記ユーザ・インタフェース・ブループリント・ファイルは、固有のユーザ識別情報を含む、請求項15に記載の非一時的な、有形のコンピュータ可読記憶媒体。
【請求項18】
前記コンピュータ・ベース・システムによって、及び前記第2のアプリケーションへの前記アクセス要求に応答
し、ユーザ識別情報の少なくとも一部分に基づいて、前記ユーザ・インタフェース・ブループリント・ファイルについてのデータベースを照会することを更に含む、請求項15に記載の非一時的な、有形のコンピュータ可読記憶媒体。
【請求項19】
前記第1のアプリケーション及び前記第2のアプリケーションは、ユーザ・デバイス上のローカル・アプリケーションである、請求項15に記載の非一時的な、有形のコンピュータ可読記憶媒体。
【請求項20】
前記第1のアプリケーション及び前記第2のアプリケーションは、ウェブ・アプリケーションである、請求項15に記載の非一時的な、有形のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願に対する相互参照
本出願は、2018年2月19日に出願された「DYNAMIC USER INTERFACE BLUEPRINT」と題する米国出願第15/898,788号に対する優先権及び利益を主張し、そして、その全体はすべての目的のために本参照により本願明細書に引用している。
【0002】
本開示は、概してコンピュータ・システムに、そして、より詳しくは、コンピュータ・システムのためのユーザ・インタフェースに関する。
【背景技術】
【0003】
多くのソフトウェア・アプリケーションは異なるユーザ・インタフェースを利用し、一つのアプリケーションを閲覧しているユーザにとって、異なるアプリケーションに切り替えるときにレイアウト及び機能を理解することは複雑又は困難な場合がある。ユーザ・インタフェースを標準化するためにユーザ・インタフェース・テンプレートを使用する既存の方法は静的であり、フォント、カラー、及び制御のタイプなどのユーザ・インタフェース・スタイリングを使用することに限定される場合がある。
【発明の概要】
【0004】
より動的な、改良されたユーザ・インタフェース・テンプレートが求められている。
【課題を解決するための手段】
【0005】
動的カスタマイズされたユーザ・インタフェースを提供するためのシステム、方法、及び製造物品(集合的に、「システム」)が開示される。システムは、ユーザのためのユーザ・インタフェース・ブループリント・ファイルを作成すること、第1のアプリケーションについての明示的ユーザ・プリファレンスをユーザ・インタフェース・ブループリント・ファイル内に記憶すること、第1のアプリケーションについての推定ユーザ・プリファレンスを決定すること、第1のアプリケーションについての推定ユーザ・プリファレンスをユーザ・インタフェース・ブループリント・ファイル内に記憶すること、第2のアプリケーションへのアクセス要求をユーザから受信すること、要求に応答して、ユーザ・インタフェース・ブループリント・ファイルを読み取ること、並びに、明示的ユーザ・プリファレンス及び推定ユーザ・プリファレンスに基づいて第2のアプリケーションについてのユーザ・インタフェースを生成することを含む、動作を実行することができる。
【0006】
種々の実施形態では、ユーザ・インタフェース・ブループリント・ファイルは、txtファイル又はxmlファイルのうちの少なくとも一つを含むことができる。ユーザ・インタフェース・ブループリント・ファイルは、ユーザについての固有のユーザ識別情報を含むことができる。システムは、第2のアプリケーションへのアクセス要求に応答し、ユーザについての固有のユーザ識別情報に基づいて、ユーザ・インタフェース・ブループリント・ファイルについてのデータベースを照会することができる。第1のアプリケーション及び第2のアプリケーションは、ユーザ・デバイス上のローカル・アプリケーションとすることができる。第1のアプリケーション及び第2のアプリケーションは、ウェブ・アプリケーションとすることができる。ユーザ・インタフェース・ブループリント・ファイルは、文字数、段落数、画像数、画像サイズ、フォーム入力数、ウィンドウ・サイズ、ウィンドウ・ズーム、ウィンドウ境界、フォント・リスト、フォント・サイズ、制御階層、制御名、制御指令、制御サイズ、制御位置、制御カラー、制御位置合わせ、スクロール・バー、レイアウト階層、レイアウト・タイプ、レイアウト重み、レイアウト向き、及びページネーションを含む、複数のユーザ・プリファレンスを含むことができる。
【0007】
前述の特徴及び要素は、明白に別途本明細書において示されない限り、排他性のない種々の組合せに組み込むことができる。これらの特徴及び要素並びに開示された実施形態の動作は、以下の記述及び添付図面に照らして、より明らかになる。
【0008】
本開示の主題は、本仕様書の結びの部分において特に指し示されて、明確に請求される。しかしながら、本開示のより完全な理解は、同様の番号が同様の要素を表している図面に関連して考察されるときに、詳細な説明及び請求項を参照して得ることができる。
【図面の簡単な説明】
【0009】
【
図1】種々の実施形態による、動的ユーザ・インタフェース整合性のためのシステムの種々のシステム・コンポーネントを示すブロック図である。
【
図2】種々の実施形態による、ユーザ・インタフェース・ブループリント・テンプレートの例を示す。
【
図3】種々の実施形態による、第1のアプリケーションについての単一ページ登録フォーム及び複数ページ登録フォームを示す。
【
図4】種々の実施形態による、
図3に示されたユーザ・インタフェースに関して記憶されたプリファレンスの結果として生じる、ユーザ・インタフェース・ブループリント・ファイルの例を示す。
【
図5】種々の実施形態による、第2のアプリケーションについての複数ページ登録フォームの例を示す。
【
図6】種々の実施形態による、カスタマイズされたグラフィカル・ユーザ・インタフェースを提供するためのプロセスのフローチャートを示す。
【発明を実施するための形態】
【0010】
本明細書における種々の実施形態の詳細な説明は添付図面を参照し、それらは実例によって種々の実施形態を示す。これらの種々の実施形態は十分詳細に記載されていて当業者は本開示を実施することができる一方で、他の実施形態を実現することができ、論理的及び機械的変更を本開示の精神と範囲から逸脱することなく行うことができることを理解すべきである。したがって、本明細書における詳細な説明は、例証の目的のみに示されるものであって、限定の目的ではない。例えば、方法又はプロセス説明のいずれかにおいて詳述されるステップは、任意の順序で実行することができ、示されている順序に限られていない。更に、機能又はステップのいずれかは、一つ又は複数のサード・パーティに外部委託するか又はそれにより実行されてもよい。更に、単数に対するいかなる参照も複数の実施形態を含んで、一つ又は複数のコンポーネントに対するいかなる参照も単一のコンポーネントの実施形態を含むことができる。
【0011】
ユーザ・インタフェースを作成及び/又は修正するためのシステム及び方法が、本明細書で開示される。システムは、ユーザがすでに精通している第1のアプリケーションのユーザ・インタフェース(「UI」)を、ポータブルUIブループリント仕様に動的に変換することができる。その後、ユーザがまだ精通していない可能性のある第2のアプリケーションが、UIブループリントを使用する場合がある。第2のアプリケーションは、与えられたユーザのUI精通度を高めるために、UIブループリントを使用してそれ自体を調整することができる。システムは、アプリケーションの使用率に基づいて、密度、設定、階層、セマンティクス、レイアウト、及び/又は学習を含む、UIの動的態様を理解することができる。
【0012】
本プロセスは、コンピュータの機能を向上させる。例えば、ユーザが精通しているユーザ・インタフェースを提供することによって、ユーザは少なくコンピュータ機能を実行し、また少なく入力を行い、所望のコンテンツを即時に見つけることができるため、データ・ストレージ及びメモリが節約され、処理速度が上がる。この方法を使用することによって、ユーザは自分の意図するタスクを即時且つ効率的に達成すること、またデバイス/コンピュータ上での、計算時間/オーバヘッド、及びリソース(例えば、メモリ、cpu、バッテリ)使用率を減少させることができるようになる。
【0013】
図1を参照すると、種々の実施形態による、動的ユーザ・インタフェース整合性のためのシステム100が例示される。システム100は、ウェブ・クライアント110、第1のアプリケーション・サーバ120、第2のアプリケーション・サーバ130、及びユーザ・インタフェース・ブループリント・データベース140を備えることができる。
【0014】
ウェブ・クライアント110は、デスクトップ・コンピュータ又はモバイル・フォンなどの、ネットワークを介した通信が可能な任意のデバイスとすることができる。ユーザは、アプリケーション・サーバ120、130によって収納されたデータ及びアプリケーションを閲覧するために、ウェブ・クライアント110と対話することができる。種々の実施形態では、ユーザは、取引アカウント所有者とすることができ、アプリケーション・サーバ上に記憶された自分の取引アカウントに関するデータの閲覧を望む可能性がある。
【0015】
アプリケーション・サーバ120、130は、ウェブ・クライアント110にデジタル・コンテンツを提供することが可能な、一つ又は複数のプロセッサ又はデータベースを備えることができる。アプリケーション・サーバ120、130は、ウェブ・クライアント110に提示される一つ又は複数のアプリケーションを動作させることができる。種々の実施形態では、アプリケーション・サーバ120、130は、任意の適切なアプリケーション又は製品を提供することができる。
【0016】
ユーザ・インタフェース・ブループリント・データベース140は、ユーザ・インタフェース・ブループリント・ファイル142を記憶することができる。ユーザ・インタフェース・ブループリント・ファイル142は、拡張マークアップ言語(xml)又はtxtファイルなどの、テキスト・ファイルとすることができる。ユーザ・インタフェース・ブループリント・ファイル142は、コンテンツを閲覧するためのユーザ・プリファレンスを含むことができる。ユーザ・プリファレンスは、明示的及び暗黙的な両方のユーザ・プリファレンスを含むことができる。例えば、明示的ユーザ・プリファレンスは、好ましい背景カラー又はフォント・サイズなどのように、ユーザによって選択される。暗黙的ユーザ・プリファレンスは、ユーザがプリファレンスを選択することなく、ユーザ挙動に応答してアプリケーション・サーバにより学習される。例えばユーザは、五つより多くのデータ・フィールドが存在する場合、登録プロセスを履歴的に中止するかもしれない。そして、アプリケーション・サーバ120、130は、ユーザが五つ未満のデータ・フィールドを伴う登録プロセスを選好する暗黙的ユーザ・プリファレンスを、ユーザ・インタフェース・ブループリント・ファイル142内に記憶することができる。
【0017】
種々の実施形態では、ユーザ・インタフェース・ブループリント・ファイルをウェブ・クライアント110に上に記憶することができる。ウェブ・クライアント110は、ウェブ・クライアント110上にカスタマイズ化ユーザ・インタフェースを生成するために、ユーザ・インタフェース・ブループリント・ファイルをローカルに作成し、参照することが可能な、一つ又は複数のアプリケーションを実行することができる。
【0018】
図2を参照すると、種々の実施形態による、ユーザ・インタフェース・ブループリント・テンプレート200の例が示される。ユーザ・インタフェース・ブループリント・テンプレート200は、ユーザ・インタフェース密度、ユーザ・インタフェース設定、ユーザ・インタフェース・セマンティクス、及びユーザ・インタフェース・レイアウトなどの、プリファレンス・カテゴリを備えることができる。各プリファレンス・カテゴリは、一つ又は複数の要素を備えることができる。例えば、ユーザ密度カテゴリは、文字数、段落数、画像数、画像サイズ、及びフォーム入力数を含むことができる。ユーザ・インタフェース設定カテゴリは、ウィンドウ・サイズ、ウィンドウ・ズーム、ウィンドウ境界、フォント・リスト、及びフォント・サイズを含むことができる。ユーザ・インタフェース・セマンティクス・カテゴリは、制御階層、制御名、制御指令、制御サイズ、制御位置、制御カラー、及び制御位置合わせを含むことができる。ユーザ・インタフェース・レイアウト・カテゴリは、スクロール・バー、レイアウト階層、レイアウト・タイプ、レイアウト重み、レイアウト向き、及びページネーションを含むことができる。
【0019】
図3を参照すると、種々の実施形態による、第1のアプリケーションについての単一ページ登録フォーム310及び複数ページ登録フォーム320が示されている。登録フォーム310、320によって、ユーザは、製品の申し込み、アカウントの作成などが可能になる。一部のユーザは、単一のスクリーン上に登録フォーム全体が提示されたときに、登録フォームの記入を完了する可能性が高い。しかしながら一部のユーザは、ユーザが単一スクリーン上の多数のデータ・フィールドに圧倒されないように、登録フォームの一部がユーザに提示されたときに、登録フォームの記入を完了する可能性が高い。
【0020】
アプリケーション・サーバは、すべてのフィールドを伴う単一ページ登録フォーム310を単一スクリーン上に提示することができる。アプリケーション・サーバは、ユーザが登録プロセスを開始しなかったかどうかを判別することができる。ページ・レベル分析を使用することによって、ユーザの中止を検出することが可能であり、これには、ユーザがページを訪問したことの検出、滞在の持続時間、フォームへの部分的記入及びページを離れた又はページを閉じるなどの実行された任意のアクション、或いは、開始したが完了しなかった単一ページ登録フォーム310を使用する登録プロセスが含まれる。ページ・レベル分析を使用することによって、ユーザの中止を検出することが可能であり、これには、ユーザがページを訪問したことの検出、滞在の持続時間、フォームへの部分的記入及びページを離れたナビゲーション又はページを閉じるなどの実行された任意のアクションが含まれる。アプリケーション・サーバは、同じセッション中又は異なるセッション中に、ユーザに複数ページ登録フォーム320を提示する。複数ページ登録フォーム320は、第1のスクリーン322、第2のスクリーン324、及び第3のスクリーン326内で、フィールドの異なるサブセットをユーザに提示することができる。ユーザが第1のスクリーン322上のデータ・フィールドを完了した後、アプリケーション・サーバは、第2のスクリーン324をユーザに提示することができる。ユーザが第2のスクリーン324上のデータ・フィールドを完了した後、アプリケーション・サーバは、第3のスクリーン326をユーザに提示することができる。ユーザが複数ページ登録フォーム320を使用して登録を完了することに応答して、アプリケーション・サーバは、ユーザが単一ページ登録フォームよりも複数ページ登録フォームを好むものと決定することができる。アプリケーション・サーバは、登録フォームが低密度であることをユーザが好むことを示す推定プリファレンスをユーザ・インタフェース・ブループリント・ファイル内に記憶し、登録フォームが複数のスクリーンにまたがって提示され、及び/又はスクリーン当たり一定数のフィールドに限定されるようにすることができる。フィールドの平均数は動的な数であり、アプリケーション全体にわたる使用率に基づいて適応させること、及び、それに応じてUI密度値(高、中、低)を決定することが可能である。
【0021】
図4を参照すると、種々の実施形態による、
図3に記載されたユーザ・インタフェースに関して記憶されたプリファレンスの結果として生じる、ユーザ・インタフェース・ブループリント・ファイルの例が示される。ユーザ・インタフェース・ブループリント・ファイルは、ユーザについての固有のID、ユーザ・インタフェース・ブループリント・ファイルが表すテンプレートのタイプ、及びプリファレンス・カテゴリを含むことができる。密度カテゴリは、ユーザが、三つの入力が縦方向に配置された低密度フォームを好むことを示す。レイアウト・カテゴリは、ユーザが、スクロール・バーのない3ページを好むことを示す。設定カテゴリは、ユーザが、1024×768ピクセル・サイズ、100%ズーム、ウィンドウ境界なし、及びサイズ12のヘルベチカ・フォントを好むことを示す。セマンティクス・カテゴリは、ユーザが、中央及び左位置合わせされたフィールドを好むことを示す。種々の実施形態では、動的ユーザ・インタフェース整合性システムは、リアルタイムでユーザ・インタフェース・ブループリント・ファイルを連続的に更新する。例えば、任意のアプリケーションにおいてユーザが講じる各アクションに応答して、動的ユーザ・インタフェース整合性システムは、任意の追加の明示的又は推定プリファレンスを用いてユーザ・インタフェース・ブループリント・ファイルを更新することが可能であり、密度はインジケータ(高、中、低)並びに絶対値(3、4、など)としてとらえられる。これらの値は、履歴データの平均に基づいて推定することができる。
【0022】
図5を参照すると、種々の実施形態による、第2のアプリケーションについての複数ページ登録フォーム500の例が示される。アプリケーション・サーバは、複数ページ登録フォーム500を生成するために、
図4に示されたユーザ・インタフェース・ブループリント・ファイルを参照することができる。したがって、複数ページ登録フォーム500は、ページネーション及びスクリーン当たり三つ以下のフィールドを伴う、低密度で表示することができる。複数ページ登録フォーム500は、第1のスクリーン510上に名フィールド及び姓フィールドを表示することを含むことができる。ユーザが名フィールド及び姓フィールドを完了することに応答して、複数ページ登録フォーム500は、第2のスクリーン520上に番地フィールド、市フィールド、及び州フィールドを表示することができる。ユーザが、第2のスクリーン520上の番地フィールド、市フィールド、及び州フィールドを完了することに応答して、複数ページ登録フォーム500は、第3のスクリーン530上に、電話番号フィールド及び電子メールフィールドを表示することができる。ユーザ・インタフェース・ブループリント・ファイル内の仕様に従って複数ページ登録フォーム500を提示することによって、システムは、グラフィカル・ユーザ・インタフェースの有効性を向上させること、及び、特定のユーザが複数ページ登録フォーム500を完了させる可能性を増加させることが可能である。
【0023】
したがって、第2のアプリケーションは、第1のアプリケーションと同様のルック・アンド・フィールを伴ってユーザに提示することができる。ユーザ・プリファレンスは、異なるアプリケーション間で一貫した、ロゴ、カラー、ページ・レイアウト、ナビゲーション・システム、フレーム、マウスオーバ効果、又は他の要素などの、視覚的に認知可能な要素を含むことができる。ユーザは、UIへの適応をイネーブル/ディセーブルするために、許可フラグを設定できる可能性がある。
【0024】
図6を参照すると、種々の実施形態による、カスタマイズされたグラフィカル・ユーザ・インタフェースを提供するためのプロセスのフローチャート600が示される。ユーザは、第1のアプリケーションにアクセスすることができる(ステップ610)。種々の実施形態では、ユーザは、ユーザ名及びパスワードなどの識別情報を提供することができる。動的ユーザ・インタフェース整合性システムは、ユーザを固有のユーザIDに関連付けることができる。ユーザ・アクティビティからのイベントをとらえ、ユーザ・マシン上にローカルに、又は、アプリケーションがクライアント・サーバ・ベースの場合、サーバ側に、記憶することができる。動的UIシステムは、これらのイベント・ログにアクセスし、入力を監視して、ブループリントを生成するためにこれを処理することになる。動的ユーザ・インタフェース整合性システムは、ユーザIDについてユーザ・インタフェース・ブループリント・ファイルを作成することができる(ステップ620)。ユーザは、明示的プリファレンスを第1のアプリケーションに入力することができる。例えばアプリケーションは、ユーザが、フォント、フォント・サイズ、カラー・スキームなどのプリファレンスを選択できるようにし、ユーザはそれらのプリファレンスを選択することができる。動的ユーザ・インタフェース整合性システムは、ユーザ・プリファレンスAPIを使用して、第1のアプリケーションからユーザ・プリファレンスを取得することができる。動的ユーザ・インタフェース整合性システムは、推定プリファレンスを決定することができる。推定プリファレンスの例は、ユーザによって明示的に設定されない任意のUI設定、-例1、高テキスト密度のユーザ中止に基づいて、UIテキスト密度プリファレンスを決定すること、UI’2、低画像密度のユーザ中止に基づいて、UI画像密度プリファレンスを決定することを含む。動的整合性システムは、明示的プリファレンス及び推定プリファレンスを、ユーザ・インタフェース・ブループリント・ファイル内に記憶することができる(ステップ630)。
【0025】
ユーザは、第2のアプリケーションにアクセスすることができる(ステップ640)。動的ユーザ・インタフェース整合性システムは、ユーザに関連付けられたユーザIDについてユーザ・インタフェース・ブループリント・ファイルが存在することを決定することができる(ステップ650)。例えば、動的ユーザ・インタフェース整合性システムは、ユーザIDについてユーザ・インタフェース・ブループリント・ファイルのデータベースに照会することができる。第2のアプリケーションは、UIブループリントについて動的UIシステムに照会するようにプログラミングしなければならない。この照会は、動的UIシステムが純粋にクライアント・ベースである場合はローカルに、又はシステムがサーバ・ベースである場合はサーバ上で、実行可能である。動的ユーザ・インタフェース整合性システムは、第2のアプリケーションにユーザ・プリファレンスを提供することができる(ステップ660)。第2のアプリケーションは、ユーザ・プリファレンスに従って動的ユーザ・インタフェースを生成するために、ユーザ・インタフェース・ブループリント・ファイルを参照することができる(ステップ670)。システムは、第2のアプリケーションとのユーザ対話に応答して、追加のユーザ・プリファレンスを受信することが可能であり、システムは、追加のユーザ・プリファレンスをユーザ・インタフェース・ブループリント・ファイルに追加することができる(ステップ680)。
【0026】
本明細書における種々の実施形態の詳細な説明は添付図面を参照し、それらは実例によって種々の実施形態を示す。これらの種々の実施形態は十分詳細に記載されていて当業者は本開示を実施することができる一方で、他の実施形態を実現することができ、論理的及び機械的変更を本開示の精神と範囲から逸脱することなく行うことができることを理解すべきである。したがって、本明細書における詳細な説明は、例証の目的のみに示されるものであって、限定の目的ではない。例えば、方法又はプロセス説明のいずれかにおいて詳述されるステップは、任意の順序で実行することができ、示されている順序に限られていない。更に、機能又はステップのいずれかは、一つ又は複数のサード・パーティに外部委託するか又はそれにより実行されてもよい。更に、単数に対するいかなる参照も複数の実施形態を含んで、一つ又は複数のコンポーネントに対するいかなる参照も単一のコンポーネントの実施形態を含むことができる。
【0027】
システム、方法、及びコンピュータ・プログラム製品が提供される。本願明細書の詳細な説明において、「種々の実施形態」、「一実施形態」、「実施形態」、「例示の実施形態」などの引用は、説明されている実施形態が特定の特徴、構造又は特性を含むことができることを示すが、必ずしもすべての実施形態が特定の特徴、構造又は特性を含むというわけではない。更に、このようなフレーズが、必ずしも同じ実施形態を指しているというわけではない。更に、特定の特徴、構造又は特性が実施形態に関連して説明されるとき、明示的に記載されているか否かを問わず、他の実施形態に関連してこのような特徴、構造又は特性に影響を及ぼすことが当業者の知識の範囲内であると言える。説明を読んだ後には、どのように別の実施形態の開示を実行するべきかは、関連技術に熟練した当業者にとって明らかである。
【0028】
本明細書において使用する場合、「満足する」、「満たす」、「一致する」、「関連付けられる」、又は、類似のフレーズは、同一の一致、部分的一致、特定の基準を満たすこと、データのサブセットとの一致、相関、特定の基準の満足、対応、関連、アルゴリズム的関係及び/又は同様のことを含むことができる。同様に、本明細書において使用する場合、「認証する」又は類似の用語は、正確な認証、部分的な認証、データのサブセットを認証すること、対応、特定の基準を満たすこと、関連、アルゴリズム的関係及び/又は同様のものを含むことができる。
【0029】
「関連付ける」及び/又は「関連する」に類似の用語及びフレーズは、要素間、例えば、(i)取引アカウント及び(ii)アイテム(例えば、申し出、報酬、割引)及び/又はデジタルチャネルなどの間の関係の表示又は作成のためのルックアップ・テーブル又は他の任意の方法又はシステムを使用した、タグ付け、フラグ立て、相関を含むことができる。更に、関連付けは、あらゆる適切な動作、イベント又は期間に応答して、任意のポイントで発生する場合がある。関連付けは、所定の間隔で、周期的に、ランダムに、一回、二回以上、又は、適切な要求又は動作に応答して、発生してもよい。情報のいずれもソフトウェア対応リンクを介して、配信されることができ、及び/又はアクセスされることができ、そこでは、リンクは電子メール、テキスト、ポスト、ソーシャル・ネットワーク入力及び/又は従来技術において公知の他の任意の方法を介して送信することができる。
【0030】
例えば、システム又は任意のコンポーネントは、AMAZONによって開発されたALEXAシステムなどのシステム・インテグレーション技術と一体化することができる。Alexaは、タスク、娯楽、一般情報などで手助けすることができるクラウド・ベースの音声サービスである。すべてのAmazon Alexaデバイス、例えばAmazon Echo、Amazon Dot、Amazon Tap及びAmazon Fire TVは、Alexa Voice Serviceにアクセスする。システムは、その音声アクティベーション技術を介して音声コマンドを受信することができ、他の機能を起動し、スマート・デバイスを制御し、及び/又は情報を収集することができる。例えば、音楽、電子メール、テキスト、呼び出し、答えられた質問、ホーム改善情報、スマート・ホーム通信/アクティブ化、ゲーム、買い物、チェックリストの作成、アラームの設定、ポッドキャストのストリーミング、オーディオブックの再生及び、天気、交通及び他のリアルタイム情報、例えばニュースの提供である。システムによって、ユーザがすべてのAlexa使用可能デバイス全体のオンラインのアカウントとリンクされた望ましいアカウントに関する情報にアクセスすることができるようにしてもよい。
【0031】
本明細書において述べられる通信、伝送及び/又はチャネルは、コンテンツ(例えばデータ、情報、メタデータなど)を配信する任意のシステム若しくは方法及び/又はコンテンツそのものを含むことができる。コンテンツは任意の形式又は媒体で提示することができ、種々の実施形態では、コンテンツは電子的に配信されてもよく、及び/又は電子的に提示することができてもよい。例えば、チャネルは、ウェブサイト又はデバイス(例えば、フェイスブック、YOUTUBE(登録商標)、APPLE(登録商標)TV(登録商標)、PANDORA(登録商標)、XBOX(登録商標)、ソニー(登録商標)プレイステーション(登録商標))、ユニフォーム・リソース・ロケータ(「URL」)、文書(例えば、MICROSOFT(登録商標)Word(登録商標)文書、MICROSOFT(登録商標)Excel(登録商標)文書、ADOBE(登録商標).pdf文書など)、「電子ブック」、「電子マガジン」、アプリケーション又は(本明細書において記載されているような)マイクロアプリケーション、SMS又は他のタイプのテキスト・メッセージ、電子メール、フェイスブック、ツイッター、MMS及び/又は他のタイプの通信技術を含むことができる。種々の実施形態では、チャネルは、データ・パートナによってホスティングされるか又は提供されてもよい。種々の実施形態では、流通チャネルは、小売商ウェブサイト、ソーシャル・メディア・ウェブサイト、アフィリエイト又はパートナ・ウェブサイト、外部のベンダ、モバイル・デバイス通信、ソーシャル・メディア・ネットワーク及び/又は位置ベースのサービスのうち少なくとも一つを含むことができる。流通チャネルは、小売商ウェブサイト、ソーシャル・メディア・サイト、アフィリエイト又はパートナ・ウェブサイト、外部のベンダ、モバイル・デバイス通信のうち少なくとも一つを含むことができる。ソーシャル・メディア・サイトの例は、フェイスブック(登録商標)、FOURSQUARE(登録商標)、ツイッター(登録商標)、MYSPACE(登録商標)、LINKEDIN(登録商標)などを含む。アフィリエイト又はパートナ・ウェブサイトの例は、AMERICAN EXPRESS(登録商標)、GROUPON(登録商標)、LIVINGSOCIAL(登録商標)などを含む。更に、モバイル・デバイス通信の例は、ショート・メッセージ・サービス、電子メール及びスマートフォン用のモバイル・アプリケーションを含む。
【0032】
種々の実施形態では、本明細書において説明されている方法は、本明細書において記載されている種々の特定のマシンを用いて実施される。本明細書において説明されている方法は、下記の特定のマシン及び以降開発されるマシンを用いて、当業者によってすぐ認められるように、任意の好適な組合せで実施することができる。更に、本開示から明白であるように、本明細書において説明されている方法は結果として特定の物品の種々の変形になり得る。
【0033】
簡潔さのために、従来のデータ・ネットワーク、アプリケーションの開発及びシステム(及び、システムの個々の操作コンポーネントのコンポーネント)の他の機能的態様は、本明細書において詳述していない場合がある。更に、本明細書において含まれる種々の図に示される接続線は、種々の要素の間の例示的な機能的関係及び/又は物理的結合を表すことを意図している。多くの代替であるか追加の機能的関係又は物理的接続が実際のシステムには存在してもよい点に留意する必要がある。
【0034】
本明細書において述べられる種々のシステム・コンポーネントは、次のうちの一つ又は複数を含むことができ、それらは、デジタル・データを処理するためのプロセッサを含むホスト・サーバ又は他のコンピューティング・システム、デジタル・データを記憶するためのプロセッサに結合されたメモリ、デジタル・データを入力するためのプロセッサに結合された入力ディジタイザ、メモリに記憶されて、プロセッサによってデジタル・データの処理を指示するためにプロセッサがアクセス可能なアプリケーション・プログラム、プロセッサ及びメモリに結合されて、プロセッサによって処理されるデジタル・データに由来する情報を表示するためのディスプレイ・デバイス、並びに、複数のデータベースである。本願明細書において用いられる種々のデータベースは、クライアント・データ、小売商データ、金融機関データ、及び/又は、システムの運用に役立つ同様のデータを含むことができる。当業者に公知であるように、ユーザ・コンピュータは、オペレーティング・システム(例えば、WINDOWS(登録商標)、OS2、UNIX(登録商標)、LINUX(登録商標)、SOLARIS(登録商標)、MacOSなど)並びに、通常コンピュータと関連付けられている種々の従来の支援ソフトウェア及びドライバを含むことができる。
【0035】
本システム又はその任意の部分又は機能は、ハードウェア、ソフトウェア又はそれらの組合せを用いて実施することができ、一つ又は複数のコンピュータ・システム又は他の処理システムで実施することができる。しかしながら、実施形態によって実行される操作は、マッチング又は選択などの用語で参照されることが多かったもので、これらは人間オペレータによって実行される知的的な操作と一般に関連付けられる。このような人間オペレータの能力は、本明細書において記載されている運用のいずれにおいても、ほとんどの場合必要でないか、望ましくない。むしろ、操作は機械操作であってよく、又は操作のいずれかが人工知能(AI)又は機械学習によって行われる、又は強化されてもよい。種々の実施形態を実行するための役立つマシンは、汎用デジタル・コンピュータ又は類似のデバイスを含む。
【0036】
事実、種々の実施形態で、実施形態は、本明細書において記載した機能性を実行できる一つ又は複数のコンピュータ・システムを対象としている。コンピュータ・システムは、プロセッサなどの一つ又は複数のプロセッサを含む。プロセッサは、通信インフラストラクチャ(例えば、通信バス、クロスオーバ・バー又はネットワーク)に接続している。種々のソフトウェア実施形態は、この例示的コンピュータ・システムに関して記載されている。この記述を読んだ後に、どのように他のコンピュータ・システム及び/又はアーキテクチャを用いた種々の実施形態を実装するべきかは、関連技術の当業者にとって明らかになるであろう。コンピュータ・システムは、ディスプレイ装置上の表示のために通信インフラストラクチャから(又は図示していないフレーム・バッファから)グラフィクス、テキスト及び他のデータを転送するディスプレイ・インタフェースを含むことができる。
【0037】
コンピュータ・システムは、メイン・メモリ、例えばランダム・アクセス・メモリ(RAM)も含み、二次記憶又はインメモリ(非回転)ハード・ドライブを含むこともできる。二次記憶は、例えば、ハード・ディスク・ドライブ及び/又は、フロッピー・ディスク・ドライブ、磁気テープ・ドライブ、光学ディスク・ドライブなどが代表的な着脱式記憶ドライブを含むことができる。着脱式記憶ドライブは、周知の方法で着脱式記憶ユニットとの間で読込み及び/又は書込みを行う。着脱式記憶ユニットは、着脱式記憶ドライブによって読み込まれて、書き込まれるフロッピー・ディスク、磁気テープ、光ディスクなどを表す。着脱式記憶ユニットは、コンピュータ・ソフトウェア及び/又はデータを中に記憶しているコンピュータが使用可能な記憶媒体を含むことが理解されよう。
【0038】
種々の実施形態では、二次記憶は、コンピュータ・プログラム又は他の命令がコンピュータ・システムへロードされることを可能にするための他の類似のデバイスを含むことができる。このようなデバイスは、例えば、着脱式記憶ユニット及びインタフェースを含むことができる。その例として、(ビデオ・ゲーム・デバイスに見られるような)プログラム・カートリッジ及びカートリッジ・インタフェース、(消去可能プログラマブル読取り専用メモリ(EPROM)、又はプログラマブル読取り専用メモリ(PROM)のような)着脱式記憶装置チップ及び関連するソケット、及びその他の着脱式記憶ユニット並びにソフトウェア及びデータを着脱式記憶ユニットからコンピュータ・システムに転送するインタフェースを含むことができる。
【0039】
コンピュータ・システムは、通信用インタフェースを含むこともできる。通信用インタフェースによって、ソフトウェア及びデータがコンピュータ・システムと外部デバイスの間で転送されることができる。通信用インタフェースの例は、モデム、ネットワーク・インタフェース(Ethernetカードなど)、通信ポート、Personal Computer Memory Card International Association(PCMCIA)スロット及びカード、その他を含むことができる。通信用インタフェースを介して転送されるソフトウェア及びデータは、通信用インタフェースによって受信することができる、電子であるか、電磁であるか、光学であるか、他の信号でもよい、信号の形である。これらの信号は、通信経路(例えば、チャネル)を介して、通信用インタフェースに提供される。このチャネルは、信号を搬送し、ワイヤ、ケーブル、光ファイバ、電話線、セルラ・リンク、無線周波数(RF)リンク、無線及び他の通信チャネルを用いて実装することができる。
【0040】
用語「コンピュータ・プログラム媒体」及び「コンピュータ使用可能な媒体」及び「コンピュータ可読媒体」は、一般に、着脱式記憶ドライブ及びハード・ディスク・ドライブにインストールされているハード・ディスクなどの媒体を参照するために用いる。これらのコンピュータ・プログラム製品は、ソフトウェアをコンピュータ・システムに提供する。
【0041】
コンピュータ・プログラム(コンピュータ制御ロジックとも呼ばれる)は、メイン・メモリ及び/又は二次記憶に記憶される。コンピュータ・プログラムは、通信用インタフェースを介して受信することもできる。このようなコンピュータ・プログラムは、本明細書において述べられるように、実行されるときに、コンピュータ・システムが機能を実行することを可能にする。特に、コンピュータ・プログラムは、実行されるときに、プロセッサが種々の実施形態の機能を実行することを可能にする。したがって、そのようなコンピュータ・プログラムはコンピュータ・システムのコントローラに相当する。
【0042】
種々の実施形態では、ソフトウェアは、コンピュータ・プログラム製品に記憶することができ、着脱式記憶ドライブ、ハード・ディスク・ドライブ又は通信用インタフェースを用いてコンピュータ・システムへロードすることができる。制御ロジック(ソフトウェア)は、プロセッサによって実行されるときに、プロセッサに本明細書において記載されている種々の実施形態の機能を実行させる。種々の実施形態で、ハードウェア・コンポーネントは、特定用途向け集積回路(ASIC)などのコンポーネントを含む。本明細書において記載されている機能を実行するためのハードウェア・ステート・マシンの実装は、関連技術の当業者にとって明らかである。
【0043】
種々の実施形態では、サーバは、アプリケーション・サーバ(例えばWEB SPHERE、WEB LOGIC、JBOSS、EDB(登録商標)Postgres Plus Advanced Server(登録商標)(PPAS)など)を含むことができる。種々の実施形態では、サーバは、ウェブ・サーバ(例えばAPACHE、IIS、GWS、SUN JAVA(登録商標)SYSTEM WEB SERVER、LINUX又はWINDOWS上で動作するJAVA Virtual Machine)を含むことができる。
【0044】
ウェブ・クライアントは、例えば本明細書において述べられるような任意のネットワークを介して通信する、任意のデバイス(例えば、パーソナル・コンピュータ)を含む。このようなブラウザ・アプリケーションは、オンライン・取引及び/又は通信を行うコンピューティング・ユニット又はシステムにインストールされているインターネット閲覧ソフトウェアを含む。これらのコンピューティング・ユニット又はシステムは、コンピュータ又はコンピュータのセットという形をとることができるが、他のタイプのコンピューティング・ユニット又はシステムを用いてもよく、その中には、ラップトップ、ノートブック、タブレット、ハンド・ヘルド・コンピュータ、パーソナル携帯情報機器、セット・トップ・ボックス、ワークステーション、コンピュータ・サーバ、メインフレーム・コンピュータ、ミニコンピュータ、PCサーバ、普及型コンピュータ、コンピュータのネットワーク・セット、パーソナル・コンピュータ、例えばIPADS(登録商標)、IMACS(登録商標)及びMACBOOKS(登録商標)、キオスク、端末、販売時点情報管理(POS)デバイス及び/若しくは端末、テレビジョン、又はネットワーク上のデータを受信することができる他の任意のデバイスを含む。ウェブ・クライアントは、MICROSOFT(登録商標)INTERNET EXPLORER(登録商標)、MOZILLA(登録商標)FIREFOX(登録商標)、GOOGLE(登録商標)CHROME(登録商標)、APPLE(登録商標)Safari又はインターネットを閲覧するために利用できる他のあらゆる無数のソフトウェア・パッケージを実行することができる。
【0045】
実務者は、ウェブ・クライアントがアプリケーション・サーバと直接連絡していてもしていなくてもよいと認める。例えば、ウェブ・クライアントは別のサーバ及び/又はハードウェア・コンポーネントを通してアプリケーション・サーバのサービスにアクセスすることができ、それにはインターネット・サーバへの直接的又は間接的な接続があってもよい。例えば、ウェブ・クライアントは、負荷分散装置を介してアプリケーション・サーバと通信することができる。種々の実施形態では、アクセスは、市販のウェブ・ブラウザ・ソフトウェア・パッケージを通してネットワーク又はインターネットを介して行われる。
【0046】
当業者に公知であるように、ウェブ・クライアントは、オペレーティング・システム(例えば、WINDOWS(登録商標)/CE/Mobile、OS2、UNIX(登録商標)、LINUX(登録商標)、SOLARIS(登録商標)、MacOSなど)並びに、通常コンピュータと関連付けられている種々の従来の支援ソフトウェア及びドライバを含む。ウェブ・クライアントは、任意の適切なパーソナル・コンピュータ、ネットワーク・コンピュータ、ワークステーション、パーソナル携帯情報機器、携帯電話、スマートフォン、ミニコンピュータ、メインフレームなどを含むことができる。ウェブ・クライアントは、ネットワークへのアクセスを有するホーム又はビジネス環境であることができる。種々の実施形態では、アクセスは、市販のウェブ・ブラウザ・ソフトウェア・パッケージを通してネットワーク又はインターネットを介して行われる。ウェブ・クライアントは、Secure Sockets Layer(SSL)及びトランスポート層セキュリティ(TLS)などのセキュリティ・プロトコルを実装することができる。ウェブ・クライアントは、http、https、ftp及びsftpを含むいくつかのアプリケーション層プロトコルを実装することができる。
【0047】
種々の実施形態では、システム100のコンポーネント、モジュール及び/又はエンジンは、マイクロアプリケーション又はマイクロ・アプリとして実装することができる。マイクロ・アプリは、通常例えば、WINDOWS(登録商標)モバイル・オペレーティング・システム、ANDROID(登録商標)オペレーティング・システム、APPLE(登録商標)IOS(登録商標)、BLACKBERRY(登録商標)オペレーティング・システムなどを含む、モバイル・オペレーティング・システムの局面において展開される。マイクロ・アプリは、種々のオペレーティング・システム及びハードウェア・リソースの運用を決定する所定の規則のセットを介して、より大きいオペレーティング・システム及び関連するハードウェアのリソースを活用するように構成することができる。例えば、マイクロ・アプリがモバイル・デバイス又はモバイル・オペレーティング・システム以外のデバイス又はネットワークと通信することを望む場合は、マイクロ・アプリはモバイル・オペレーティング・システムの所定の規則の下でオペレーティング・システム及び関連するデバイス・ハードウェアの通信プロトコルを活用することができる。更に、マイクロ・アプリがユーザからの入力を要求する場合は、マイクロ・アプリは、種々のハードウェア・コンポーネントをモニタして、次に検出入力をハードウェアからマイクロ・アプリへ伝達する、オペレーティング・システムからの応答を要求するように構成されてもよい。
【0048】
本明細書において使用する場合、「識別子」は、アイテムを独自に識別する任意の適切な識別子であってよい。例えば、識別子はグローバル一意識別子(「GUID」)であってよい。GUIDは、汎用一意識別子標準の下で作成及び/又は実装される識別子でもよい。更に、GUIDは、32個の16進数字として表示することができる128ビット値として記憶することができる。識別子は、メジャー番号及びマイナー番号を含むこともできる。メジャー番号及びマイナー番号は、それぞれ16ビット整数でもよい。
【0049】
種々の実施形態では、アカウント番号はコンシューマを識別することができる。加えて、種々の実施形態では、コンシューマは、例えば電子メール・アドレス、電話番号、クッキーID、無線周波識別装置(RFID)、バイオメトリクスなどを含む、様々な識別子によって識別することができる。
【0050】
本明細書において使用する場合、「ネットワーク」という用語は、ハードウェア及び/又はソフトウェア・コンポーネントを組み込んだ任意のクラウド、クラウド・コンピューティング・システム又は電子通信システム又は方法を含む。当事者の間の通信は、例えば、電話機ネットワーク、エクストラネット、イントラネット、インターネット、インタラクション時点デバイス(販売時点情報管理デバイス、パーソナル携帯情報機器(例えば、IPHONE(登録商標)、BLACKBERRY(登録商標))、携帯電話、キオスクなど)、オンライン通信、衛星通信、オフライン通信、ワイヤレス通信、トランスポンダ通信、ローカル・エリア・ネットワーク(LAN)、広域ネットワーク(WAN)、仮想専用ネットワーク(VPN)、ネットワーク化されたかリンクされたデバイス、キーボード、マウス及び/又は任意の適切な通信又はデータ入力モダリティなどの、任意の適切な通信チャネルを通して達成することができる。更に、システムが本明細書においてTCP/IP通信プロトコルによって実施されるとして頻繁に記載されるが、システムはまた、IPX、APPLE(登録商標)talk、IP-6、NetBIOS(登録商標)、OSI、任意のトンネリングプロトコル(例えばIPsec、SSH)、又は任意の数の既存又は将来のプロトコルを使用して実施することもできる。ネットワークがインターネットなどの公衆ネットワークの性質を帯びている場合、ネットワークは安全ではなく且つ盗聴者に公開されていると推定することが有益であり得る。インターネットに関連して利用されるプロトコル、標準及びアプリケーション・ソフトウェアに関連付けられた特定の情報は、当業者に一般に公知で、したがって、本明細書において詳述される必要はない。例えば、Dilip NaikによるInternet Standards and Protocols(1998)、多くの著者によるJAVA(登録商標)2 Complete(Sybex 1999)、Deborah RayとEric RayによるMastering HTML 4.0(1997)、及び、LoshinによるTCP/IP Clearly Explained(1997)、及びDavid GourleyとBrian TottyによるHTTP、The Definitive Guide(2002)を参照し、これらの内容は本願明細書に引用したものとする。
【0051】
種々のシステム・コンポーネントは、データリンクを介して独立して、別々に、又は、集合的にネットワークに最適に連結することができ、それは例えば、標準モデム通信との接続で通常使用されるような加入回線の上のインターネット・サービス・プロバイダ(ISP)への接続、ケーブル・モデム、Dish Networks(登録商標)、ISDN、デジタル加入者ライン(DSL)又は、種々の無線通信方法を含み、例えば、Gilbert Held,Understanding Data Communications(1996)を参照されたく、それは本願明細書に引用したものとする。ネットワークが他のタイプのネットワーク、例えば双方向テレビ(ITV)ネットワークとして実施されてもよいことに留意されたい。更に、システムは、本明細書において記載されている同様の機能性を有する任意のネットワーク上の任意の商品、サービス又は情報の使用、販売又は配布を意図する。
【0052】
「クラウド」又は「クラウド・コンピューティング」は、最少の管理作業又はサービス・プロバイダ・インタラクションによって短時間に提供されて、リリースされることができる可変な計算リソース(例えば、ネットワーク、サーバ、ストレージ、アプリケーション及びサービス)の共有プールに対する便利な、オンデマンドのネットワーク・アクセスを可能にするためのモデルを含む。クラウド・コンピューティングは、位置に依存しないコンピューティングを含むことができ、それによって、共有サーバは要求に応じてリソース、ソフトウェア及びデータをコンピュータ及び他のデバイスに提供する。クラウド・コンピューティングに関する詳細な情報については、クラウド・コンピューティングのNIST(アメリカ国立標準技術研究所)の定義が、http://csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf(最近の訪問は2012年6月)を参照されたく、その全体を参照により本願明細書に引用している。
【0053】
本明細書において使用する場合、「送信する」は、一つのシステム・コンポーネントからネットワーク接続上でもう一方に電子的なデータを送信することを含むことができる。加えて、本明細書において使用する場合、「データ」は、コマンド、クエリ、ファイル、記憶のためのデータなどの、デジタル又は他の任意の形式などの情報を包含することを含むことができる。
【0054】
システムは、ウェブ・サービス、ユーティリティ・コンピューティング、普及型及び個別的コンピューティング、セキュリティ及びアイデンティティ・ソリューション、自律コンピューティング、クラウド・コンピューティング、コモディティ・コンピューティング、モビリティ及び無線ソリューション、オープン・ソース、バイオメトリクス、グリッド・コンピューティング及び/又はメッシュ・コンピューティングに関連した用途を意図する。
【0055】
本明細書において述べられる任意のデータベースは、リレーショナル、階層、グラフィック、ブロックチェーン、オブジェクト指向構造及び/又は他の任意のデータベース構成を含むことができる。データベースを実装するために用いることができる共通データベース製品は、IBM(登録商標)(ニューヨーク州アーモンク)によるDB2、ORACLE(登録商標)Corporation(カリフォルニア州レッドウッド・ショア)から入手可能な種々のデータベース製品、MICROSOFT(登録商標)Corporation(ワシントン州レドモンド)によるMICROSOFT(登録商標)Access(登録商標)又はMICROSOFT(登録商標)SQL Server(登録商標)、MySQL AB(スウェーデン、Uppsala)によるMySQL、MongoDB(登録商標)、Redis(登録商標)、Apache Cassandra(登録商標)、APACHE(登録商標)によるHBase、MapR-DB、又は他の任意の適切なデータベース製品を含む。更に、データベースは、例えば、データ・テーブル又はルックアップ・テーブルとして、任意の好適な方法に系統化することができる。各レコードは、単一ファイル、一連のファイル、リンクされた一連のデータ・フィールド又は他の任意のデータ構造でもよい。
【0056】
特定のデータの関連付けは、従来技術において公知であるか実践されているような任意の所望のデータ関連付け技術によって達成することができる。例えば、関連付けは、手動で、又は、自動的に達成することができる。自動的関連付け技術は、例えば、データベース検索、データベース・マージ、GREP、AGREP、SQL、検索高速化のためのテーブルのキー・フィールドの使用、すべてのテーブル及びファイルによるシーケンシャル検索、ルックアップを単純化するための周知の順序に従ったファイルの記録のソートなどを含むことができる。関連付けステップは、例えば予め選択されたデータベース又はデータ・セクタの「キー・フィールド」を使用して、データベース・マージ機能によって達成することができる。種々のデータベース調整ステップは、データベース性能を最適化するように意図される。例えば、インデックスなどの頻繁に使われるファイルは、別々のファイル・システムに配置されて、入出力(「I/O」)ボトルネックを減らすことができる。
【0057】
より詳しくは、「キー・フィールド」が、キー・フィールドによって定義されるオブジェクトの高水準クラスに従ってデータベースを区分する。例えば、或るタイプのデータを複数の関係データ・テーブル内でキー・フィールドとして指定することができ、その後、キー・フィールド内のデータのタイプに基づいてデータ・テーブルをリンクすることができる。リンクされたデータ・テーブルの各々でのキー・フィールドに対応するデータは、同じか又は同じタイプであることが好ましい。しかしながら、キー・フィールド内の同一ではないが同様のデータを有するデータ・テーブルも、例えばAGREPを使用してリンクすることができる。一実施形態により、任意の適切なデータ・ストレージ技法を利用して、標準フォーマットを使用せずにデータを記憶することができる。データ・セットは、例えば、ISO/IEC 7816-4ファイル構造を使用して個別のファイルを記憶すること、一つ又は複数のデータ・セットを含む一つ又は複数の基本ファイルを公開する専用ファイルを選択する際に使用するドメインを実装すること、階層ファイリング・システムを使用して個別のファイル内に記憶されたデータ・セットを使用すること、単一ファイル内にレコードとして記憶されたデータ・セット(圧縮、SQLアクセス可能、一つ又は複数のキーを介してハッシュ付けされた、第1のタプルによる数字、アルファベットなどを含む)、バイナリ・ラージ・オブジェクト(BLOB)、ISO/IEC 7816-6データ要素を使用して符号化された非グループ化データ要素として記憶すること、ISO/IEC 8824及び8825と同様にISO/IEC抽象構文記法(ASN.1)を使用して符号化された非グループ化データ要素として記憶すること、及び/又は、フラクタル圧縮方法、画像圧縮方法などを含むことができる他のプロプライエタリ技法を使用すること、を含む、任意の適切な技法を使用して記憶することができる。
【0058】
種々の実施形態では、多種多様な情報を異なるフォーマットで記憶するための機能は、情報をBLOBとして記憶することによって容易になる。したがって、任意のバイナリ情報は、データ・セットに関連付けられたストレージ・スペース内に記憶可能である。前述のように、バイナリ情報は、システムに関連付けて、又はシステムの外部であるが関連して、記憶することができる。BLOB方法は、固定ストレージ割り振り、循環キュー技法、又はメモリ管理(例えば、ページ付きメモリ、最後に使用した、など)に関した最善の実践を使用して、固定メモリ・オフセットを介して、バイナリのブロックとしてフォーマット化された非グループ化データ要素として、データ・セットを記憶することができる。BLOB方法を使用することによって、異なるフォーマットを有する種々のデータ・セットを記憶するための機能は、データ・セットの複数及び無関係の所有者によって、データベース内の、又はシステムに関連付けられた、データの記憶を容易にする。例えば、記憶可能な第1のデータ・セットは第1のパーティによって提供可能であり、記憶可能な第2のデータ・セットは無関係の第2のパーティによって提供可能であり、また更に、記憶可能な第3のデータ・セットは、第1及び第2のパーティに無関係な第3のパーティによって提供可能である。これら三つの例示的なデータ・セットの各々は、異なるデータ記憶フォーマット及び/又は技法を使用して記憶された異なる情報を含むことができる。更に、各データ・セットは、他のサブセットとは別個であってもよいデータのサブセットを含むことができる。
【0059】
上記で説明したように、種々の実施形態では、共通フォーマットに関係なくデータを記憶することができる。しかしながら、データ・セット(例えば、BLOB)は、データベース又はシステム内のデータを操作するために提供されたとき、標準様式で注釈をつけることができる。注釈は、ショート・ヘッダ、トレーラ、又は、種々のデータ・セットを管理する際に有用な情報を伝達するように構成された各データ・セットに関する他の適切なインジケータを備えることができる。例えば本明細書では、注釈は「条件ヘッダ」、「ヘッダ」、「トレーラ」、又は「ステータス」と呼ぶことができ、データ・セットのステータスのインジケーションを含むことができるか、又は、データの特定の発行者若しくは所有者と相関された識別子を含むことができる。一例では、各データ・セットBLOBの第1の3バイトは、その特定のデータ・セットのステータス、例えば、LOADED、INITIALIZED、READY、BLOCKED、REMOVABLE、又はDELETEDを示すように構成可能であるか、又は構成可能であり得る。データの後続バイトを使用して、例えば、発行者の識別、ユーザ、取引/メンバシップ・アカウント識別子などを示すことができる。これらの条件注釈の各々について、本明細書で更に考察する。
【0060】
データ・セット注釈は、他のタイプのステータス情報並びに種々の他の目的に使用することもできる。例えば、データ・セット注釈は、アクセス・レベルを確立するセキュリティ情報を含むことができる。アクセス・レベルは、例えば、或る個人、或るレベルの従業員、会社、若しくは他のエンティティのみがデータ・セットにアクセスできるように構成可能であるか、又は、取引、業者、発行者、ユーザなどに基づいて、特定のデータ・セットへのアクセスを許可するように構成可能である。更に、セキュリティ情報は、データ・セットへのアクセス、修正、及び/又は削除などの、或るアクションのみを制約/許可することができる。一例では、データ・セット注釈は、データ・セット所有者又はユーザのみが、データ・セットの削除を許可されており、種々の識別されたユーザは読み取りのためにデータ・セットへのアクセスが許可されてよく、その他は共に、データ・セットへのアクセスから除外されていることを示す。しかしながら、他のアクセス制約パラメータを使用して、種々の許可レベルを適宜用いて種々のエンティティにデータ・セットへのアクセスを許可することもできる。
【0061】
ヘッダ又はトレーラを含むデータは、ヘッダ又はトレーラに従ってデータを追加、削除、修正、又は増補するように構成された、独立型インタラクション・デバイスによって受信可能である。したがって一実施形態では、ヘッダ又はトレーラは、関連付けられた発行者所有のデータと共にトランザクション・デバイス上に記憶されず、代わりに、独立型デバイスにおいて、行うべきアクションについての適切なオプションをユーザに提供することによって、適切なアクションを行うことができる。システムは、適切なデータとの関連で、データのヘッダ若しくはトレーラ、又はヘッダ若しくはトレーラ履歴が、システム、デバイス、又はトランザクション機器上に記録される、データ・ストレージ配置を意図することができる。
【0062】
当業者であればまた、セキュリティ上の理由で、任意のデータベース、システム、デバイス、システムのサーバ又は他のコンポーネントも単一の位置又は複数の位置にある任意のそれらの組合せから成ることもでき、そこでは各データベース又はシステムが種々の適切なセキュリティ機能、例えばファイアウォール、アクセス・コード、暗号化、解読、圧縮、伸長のいずれかを含むと認める。
【0063】
暗号化は、従来技術において現在利用可能な技術又は今後利用可能となる技術、例えば、Twofish、RSA、El Gamal、ショール署名、DSA、PGP、PKI、GPG(GnuPG)、HPEフォーマット保持暗号化(FPE)、Voltage、並びに、対称及び非対称暗号法の、いずれかによって実行することができる。システム及び方法は、SHAシリーズ暗号法、並びにECC(楕円曲線暗号)、及び他の開発中の量子読取り可能暗号化アルゴリズムを組み込むこともできる。
【0064】
ウェブ・クライアントのコンピューティング・ユニットは、従来技術において公知の標準ダイヤルアップ、ケーブル、DSL又は他の任意のインターネット・プロトコルを使用してインターネット又はイントラネットに接続しているインターネット・ブラウザを、更に備えることができる。ウェブ・クライアントを起点とする取引は、ファイアウォールを通過して、他のネットワークのユーザからの認可されていないアクセスを妨げることができる。更に、追加のファイアウォールはCMSの様々なコンポーネントの間に展開されて、更にセキュリティを強化することができる。
【0065】
本明細書において述べられるコンピュータは、ユーザによってアクセス可能である適切なウェブサイト又は他のインターネット・ベースのグラフィカル・ユーザ・インタフェースを提供することができる。一実施形態では、MICROSOFT(登録商標)INTERNET INFORMATION SERVICES(登録商標)(IIS)、MICROSOFT(登録商標) Transaction Server(MTS)及びMICROSOFT(登録商標)SQL Serverが、MICROSOFT(登録商標)オペレーティング・システム、MICROSOFT(登録商標)NTウェブ・サーバ・ソフトウェア、MICROSOFT(登録商標)SQL Serverデータベース・システム及びMICROSOFT(登録商標) Commerce Serverと連動して使われる。加えて、Access又はMICROSOFT(登録商標)SQL Server、ORACLE(登録商標)、Sybase、Informix MySQL、Interbaseなどのようなコンポーネントは、Active Data Object(ADO)対応データベース管理システムを提供するために用いることができる。一実施形態では、Apacheウェブ・サーバが、Linuxオペレーティング・システム、MySQLデータベース及びPerl、PHP、Ruby及び/又はPythonプログラミング言語と共に用いられる。
【0066】
本明細書において述べられる通信、入力、記憶、データベース又はディスプレイのいずれも、ウェブ・ページを有するウェブサイトを通して容易になる。本願明細書において用いられる「ウェブ・ページ」という用語は、ユーザと対話するために用いる可能性のある文書及びアプリケーションのタイプを制限する意味ではない。例えば、典型的ウェブサイトは、標準HTML文書に加えて、種々の形式、JAVA(登録商標)アプレット、JAVASCRIPT、アクティブ・サーバ・ページ(ASP)、common gateway interfaceスクリプト(CGI)、拡張マークアップ言語(XML)、ダイナミックHTML、カスケーディング・スタイル・シート(CSS)、AJAX(非同期JAVASCRIPT及びXML)、ヘルパー・アプリケーション、プラグインなどを含む可能性がある。サーバはウェブ・サーバから要求を受信するウェブ・サービスを含むことができ、この要求がURL及びIPアドレス(123.56.789.234)を含む。ウェブ・サーバは、適切なウェブ・ページを読み出して、IPアドレスにウェブ・ページのためのデータ又はアプリケーションを送信する。ウェブ・サービスは、インターネットなどの通信手段上で他のアプリケーションと対話することができるアプリケーションである。ウェブ・サービスは、通常標準又はプロトコル、例えばXML、SOAP、AJAX、WSDL及びUDDIに基づいている。ウェブ・サービス方法は、公知技術であり、多くの標準テキストにおいてカバーされている。例えば、Alex NghiemによるIT Web Services:A Roadmap for the Enterprise(2003)を参照されたく、本願明細書に引用したものとする。例えば、表示状態転送(REST)又はRESTfulウェブ・サービスは、アプリケーションの間の相互接続性を有効にする一つの方法を提供することができる。
【0067】
ミドルウェアは、異種コンピューティング・システム間の通信及び/又はプロセス取引を容易にするように適切に構成された、任意のハードウェア及び/又はソフトウェアを含むことができる。ミドルウェア・コンポーネントは市販されており、従来技術において公知である。ミドルウェアは、市販のハードウェア及び/又はソフトウェアを介して、カスタム・ハードウェア及び/又はソフトウェア・コンポーネントを介して、或いは、それらの組合せを介して、実装可能である。ミドルウェアは、様々な構成内に常駐すること、及び独立型システムとして存在すること、又は、インターネット・サーバ上に常駐するソフトウェア・コンポーネントとすることが可能である。ミドルウェアは、アプリケーション・サーバの種々のコンポーネントと、本明細書で開示される任意の目的のための任意数の内部又は外部システムとの間の、取引を処理するように構成可能である。IBM(登録商標),Inc.(ニューヨーク州アーモンク)によるWEBSPHERE MQTM(公式にはMQSeries)は、市販されているミドルウェア製品の一例である。企業サービス・バス(「ESB」)アプリケーションは、ミドルウェアの別の例である。
【0068】
実務者は、ブラウザ・ベース文書内にデータを表示するためのいくつかの方法が存在することも認める。データは、標準テキストとして、又は固定リスト、スクロール可能リスト、ドロップダウン・リスト、編集可能テキスト・フィールド、固定テキスト・フィールド、ポップアップ・ウィンドウなどに、表示可能である。同様に、例えば、キーボードを用いるフリー・テキスト入力、メニュー項目、チェック・ボックス、オプション・ボックスなどの選択などの、ウェブ・ページ内でデータを修正するために使用可能ないくつかの方法が存在する。
【0069】
システム及び方法は、本明細書において機能ブロック・コンポーネント、スクリーン・ショット、任意の選択及び種々の処理ステップに関して記載することができる。このような機能ブロックは、指定された機能を実行するように構成される任意数のハードウェア及び/又はソフトウェア・コンポーネントによって実現され得ることが理解されるべきである。例えば、システムは種々の集積回路コンポーネント、例えば、記憶素子、処理素子、論理素子、ルックアップ・テーブルなどを使用することができ、それは一つ又は複数のマイクロプロセッサ又は他の制御デバイスの制御の下で様々な機能を実行することができる。同様に、システムのソフトウェア要素は、C、C++、C#、JAVA(登録商標)、JAVASCRIPT、JAVASCRIPT Object Notation(JSON)、VBScript、Macromedia Cold Fusion、COBOL、MICROSOFT(登録商標)Active Server Pages、アセンブリ、PERL、PHP、awk、Python、Visual Basic、SQL Stored Procedures、PL/SQL、任意のUNIXシェル・スクリプト、及びデータ構造、オブジェクト、プロセス、ルーチン又は他のプログラミング要素の任意の組合せによって実施されている種々のアルゴリズムを有する拡張マークアップ言語(XML)などの、あらゆるプログラミング又はスクリプト言語によって実装することができる。更に、システムがデータ伝送、シグナリング、データ処理、ネットワーク制御などのための任意の数の従来技術を使用することができる点に留意する必要がある。また更に、システムは、JAVASCRIPT、VBScriptなどのクライアント側スクリプト言語を、セキュリティ問題を検出するか又は防止するために用いることができる。暗号及びネットワーク・セキュリティの基本的な導入については、以下の、(1)「Applied Cryptography:Protocols,Algorithms,And Source Code in C」、Bruce Schneier著、John Wiley & Sons発行(二版、1995)、(2)「JAVA(登録商標)Cryptography」、Jonathan Knudson著、O’Reilly & Associates発行(1998)、(3)「Cryptography & Network Security:Principles & Practice」、William Stallings著、Prentice Hall発行、のいずれかを参照し、これらはすべて本願明細書に引用したものとする。
【0070】
種々の実施形態では、システムのソフトウェア要素は、Node.js(登録商標)を用いて実装することもできる。Node.js(登録商標)は、いくつかのモジュールを実装して、種々のコア機能性を処理することができる。例えば、npm(登録商標)などのパッケージ管理モジュールは、サード・パーティのNode.js(登録商標)プログラムのインストール及び管理を手配する際の援助を行うオープン・ソース・ライブラリとして実装することができる。Node.js(登録商標)はまた、例えば、Parallel Multithreaded Machine(「PM2」)などのプロセス・マネージャ、例えば、Node Application Metrics(「appmetrics」)などのリソース及び性能監視ツール、例えばReachJS(登録商標)などのユーザ・インタフェースを構築するためのライブラリ・モジュール、及び/又は他の任意の適切な及び/又は所望のモジュールを実装することができる。
【0071】
当業者によって理解されるように、システムは、既存のシステムのカスタマイズ化、アドオン製品、アップグレード・ソフトウェアを実行する処理装置、独立型システム、分散システム、方法、データ処理システム、データ処理のためのデバイス、及び/又はコンピュータ・プログラム製品として、具体化することができる。したがって、システム又はモジュールの任意の部分は、コード実行処理装置、インターネット・ベース実施形態、完全なハードウェア実施形態、又は、インターネット、ソフトウェア、及びハードウェアの態様を組合せた実施形態の形を取ることができる。更に、システムは、記憶媒体内で具体化されたコンピュータ可読プログラム・コード手段を有するコンピュータ可読記憶媒体上のコンピュータ・プログラム製品の形を取ることができる。ハード・ディスク、CD-ROM、光学ストレージ・デバイス、磁気ストレージ・デバイスなどを含む、任意の適切なコンピュータ可読記憶媒体が利用可能である。
【0072】
本明細書では、システム及び方法は、種々の実施形態による方法、装置(例えば、システム)、及びコンピュータ・プログラム製品の、スクリーン・ショット、ブロック図、及びフローチャート説明を参照しながら説明される。ブロック図及びフローチャート説明の各機能ブロック、並びにブロック図及びフローチャート説明の機能ブロックの組合せが、それぞれ、コンピュータ・プログラム命令によって実装され得ることが理解されよう。
【0073】
したがって、ブロック図及びフローチャート説明の機能ブロックは、指定された機能を実行する手段の組合せ、指定された機能を実行するステップの組合せ、及び指定された機能を実行するプログラム命令手段の組合せをサポートする。ブロック図及びフローチャート説明の各機能ブロック、並びにブロック図及びフローチャート説明の機能ブロックの組合せは、指定された機能若しくはステップを実行する専用のハードウェア・ベースのコンピュータ・システム、又は専用のハードウェア及びコンピュータ命令の適切な組合せによって実装することができることが理解されよう。更に、プロセス・フローの説明及びその記述は、ユーザWINDOWS(登録商標)、ウェブページ、ウェブサイト、ウェブ・フォーム、プロンプトなどを参照する。実務者は、本明細書において記載されている例示されたステップがWINDOWS(登録商標)、ウェブページ、ウェブ・フォーム、ポップアップWINDOWS(登録商標)、プロンプトなどの使用を含む任意の数の構成を含むことができると認める。例示されて説明されている複数のステップは単一のウェブページ及び/又はWINDOWS(登録商標)に結合されてもよいが、簡潔にするために展開されていることは更に理解されよう。他の場合では、単一プロセス・ステップとして例示されて説明されているステップは、複数のウェブページ及び/又はWINDOWS(登録商標)に分けることができるが、説明を簡単にするため結合されている。
【0074】
「非一時的」という用語は、一時的信号それ自体を伝搬することだけを請求項範囲から取り除くためであることを理解すべきであり、一時的信号それ自体を伝搬しているだけではないすべての標準のコンピュータ可読媒体に対する権利を放棄するというわけではない。換言すると、「非一時的コンピュータ可読媒体」及び「非一時的コンピュータ可読記憶媒体」という用語の意味は、In Re Nuijtenにおいて米国特許法第101条の下で特許可能な対象の範囲外になったタイプの一時的コンピュータ可読媒体だけを除外するものとして解釈されなければならない。
【0075】
利点、他の長所及び課題に対するソリューションを、具体的な実施形態に関して本明細書において説明してきた。しかしながら、課題に対する利点、長所、ソリューション、及び何らかの利点、長所又はソリューションを生じさせるか若しくは顕著にする要素は、本開示の、重要であるか、必要であるか、又は本質的特徴又は要素として解釈されるというわけではない。本開示の範囲はそれに応じて、添付の請求の範囲以外の何によっても制限されず、単数の要素に対する参照は、明示的にそのように述べない限り、「一つで且つ一つだけ」を意味することを意図するのではなく、むしろ「一つ又は複数」ということである。更に、「A、B及びCのうちの少なくとも一つ」又は「A、B又はCのうちの少なくとも一つ」と同様のフレーズが請求項又は明細書で用いられる場合、フレーズは、Aだけが実施形態に存在してもよく、Bだけが実施形態に存在してもよく、Cだけが実施形態に存在してもよいということ、又は、要素A、B及びCのあらゆる組合せ、例えば、A及びB、A及びC、B及びC、又は、A及びB及びCが、単一の実施形態に存在してもよい、ということを意味するように解釈されることが意図されている。
【0076】
本開示は方法を含むが、それが有形のコンピュータ可読のキャリア、例えば磁気若しくは光メモリ又は磁気若しくは光ディスク上の、コンピュータ・プログラム命令として実施されてもよいことを意図している。当業者に公知である上記の種々の実施形態の要素に対するすべての構造的、化学的及び機能的等価物は、明白に本願明細書に引用したものとし、本発明の請求項によって包含されることを意図している。更に、デバイス又は方法が本発明の請求項によって包含されるために本開示によって解決されようとするすべての問題に対処することは必要でない。更に、本開示の要素、コンポーネント又は方法ステップは、要素、コンポーネント又は方法ステップが請求項で明示的に詳述されるかどうかにかかわらず、公にすることを意図しない。請求項要素は、要素が「のための手段」というフレーズを使用して明白に詳述されない限り、米国特許法第112条(f)を使用することを意図しない。本願明細書において用いられるように、用語「含む(comprises)」、「含む(comprising)」又は他のあらゆる変形は、プロセス、方法、物品又は、要素のリストを含む装置が、それらの要素だけを含むのではなく、このようなプロセス、方法、物品又は装置に明確に挙げられていないか又は固有でない他の要素を含むことができるように、非排他的な包含をカバーすることを意図している。
【0077】
本開示及び請求項は、動的カスタマイズされたユーザ・インタフェースの提供の特定の結果を記載するだけではなく、本開示及び請求項は、McRO社対Bandai Namco Games America社(連邦巡回訴訟番号15-1080、2016年9月13日)にて記載されるように、動的カスタマイズされたユーザ・インタフェースの提供の結果を実装するための、且つ、情報を、動的カスタマイズされたユーザ・インタフェースの提供の所望の結果を作るために次に使用して適用される特定のフォーマットにする、特定の規則を含む。言い換えれば、動的カスタマイズされたユーザ・インタフェースの提供の結果は、多くの異なる種類の規則及び規則の組合せによって実行されることができ、本開示は特定の規則を有する種々の実施形態を含む。完全な先取の欠如は請求項が適格であることを保証することができない一方で、本開示は全く動的カスタマイズされたユーザ・インタフェースを提供する分野を十分に先取りするものではない。本開示は、動的カスタマイズされたユーザ・インタフェースを提供するという一般の抽象的なアイデアをカバーしないように開示を狭め、限定し、また、縛るための働きを行う。かなり、他のシステム及び方法が動的カスタマイズされたユーザ・インタフェースを提供するために存在するので、本請求の発明が当分野を先取りするか又は動的カスタマイズされたユーザ・インタフェースを提供する基本ツールの独占権を得ると主張することは不適当である。言い換えれば、他のシステムが本請求の発明とは異なる方法で機能性をすでに実行しているので、本開示は他者が動的カスタマイズされたユーザ・インタフェースを提供するのを妨げるものではない。更に、本請求の発明は、Bascom対AT&T Mobility、2015-1763(連邦巡回、2016年)に準拠した、周知の、従来のものの非従来的及び非一般的な構成において見つけることができる発明概念を含む。本開示及び請求項は、システムのインタラクション及び相乗効果が、それぞれに作動しているシステムのいずれによっても提供されない追加の機能性につながるという点で、どのようなシステムのいずれの従来形も超えているものである。本開示及び請求項は、複数の異なるシステムの間のインタラクションを含むこともできるので、本開示は汎用コンピュータの実装、又は、抽象的なプロセスに単に「それを適用する」というものと考えることはできない。本開示及び請求項は、ソフトウェア技術での問題に対するソリューションの特定の実装によってソフトウェアを改良することを対象とすることもできる。
【0078】
種々の実施形態では、システム及び方法は、下側にあるウィンドウの隠されたテキスト情報を動的に再配置/拡大縮小して自動的にユーザに見えるようにするための、グラフィカル・ユーザ・インタフェースを含むことができる。テキスト情報が重複条件に基づいて動的に再配置されることを可能にすることによって、情報を表示するためのコンピュータの機能が改善される。より詳しくは、グラフィカル・ユーザ・インタフェース内に表示される下側にあるウィンドウ内のテキスト情報を動的に再配置するための方法は、第1のフォーマットのテキスト情報を含む第1のウィンドウをコンピュータ・スクリーン上のグラフィカル・ユーザ・インタフェース内に表示すること、第2のウィンドウをグラフィカル・ユーザ・インタフェース内に表示すること、第2のウィンドウが第1のウィンドウの上に重なっているため、第1のウィンドウ内のテキスト情報がユーザから見えなくなっているオーバラップ状態を検出するために、第1のウィンドウ及び第2のウィンドウの境界を連続して監視すること、第1のウィンドウの遮られない部分に再配置された場合、テキスト情報が完全に見えるようにはならないことを決定すること、第1のウィンドウのエリアの第1の測度及び第1のウィンドウの遮られない部分のエリアの第2の測度を計算すること、第1の測度と第2の測度との間の差に比例するスケーリング・ファクタを計算すること、スケーリング・ファクタに基づいてテキスト情報をスケーリングすること、スケーリングされたテキスト情報全体がコンピュータ・スクリーン上でユーザによって見えるように、スケーリングされたテキスト情報を、プロセッサによってオーバラップ状態の間に第2のフォーマットで第1のウィンドウの遮られない部分に自動的に再配置すること、オーバラップ状態がもはや存在しないとき、再配置されたスケーリングされたテキスト情報を、プロセッサによって第1のウィンドウ内の第1のフォーマットに自動的に戻すことを、含むことができる。
【0079】
種々の実施形態では、システムは、アフィリエイト購入取引の間、ホスト・ウェブ・ページの「ルック・アンド・フィール」を広告小売商のウェブ・ページの製品関連の内容情報と共にマーケティングするためのシステムを用いて、顧客全体のコントロールを維持する課題に対処することもできる。システムは、複数ホストと小売商間のブローカーとしての役割を果たすサード・パーティ外部委託プロバイダによって運用されてもよい。実施に先立って、ホストは、ホストのウェブ・ページ上の小売商のウェブ・ページにリンクを設定する。リンクは、小売商のウェブ・ページ上の製品関連のコンテンツと関連付けられる。加えて、外部委託プロバイダ・システムは、「ルック・アンド・フィール」情報を各ホストのウェブ・ページからコンピュータ・サーバに連結されているコンピュータ・データ記憶に記憶する。「ルック・アンド・フィール」情報は、視覚的に認知可能な要素、例えば各ホストのそれぞれのウェブ・ページの一部若しくは全部を通して整合しているロゴ、色、ページ・レイアウト、ナビゲーション・システム、フレーム、マウスオーバ効果又は他の要素を含む。広告リンクをクリックする顧客は、ホスト・ウェブ・ページから小売商のウェブ・ページに移動されず、代わりに、ホスト・ウェブ・ページの選択されたアイテム及び視覚的に認知可能な要素と関連付けられた製品情報を結合する複合ウェブ・ページにリダイレクトされる。外部委託プロバイダのサーバは、リンクが選択されたホスト・ウェブ・ページを最初に識別して、対応する記憶された「ルック・アンド・フィール」情報を読み出すことによって応答する。サーバはホスト・ウェブ・ページの読み出された「ルック・アンド・フィール」情報を、その中に埋め込まれている製品関連のコンテンツと共に使用して複合ウェブ・ページを構築し、そのため複合ウェブ・ページは、ホスト・ウェブ・ページと関連付けられているように、顧客によって視覚的に認められる。それから、サーバは顧客にこの複合ウェブ・ページを送信して表示するので、顧客はホスト・ウェブ・ページ上に事実上残ってサード・パーティ小売商アフィリエイトにリダイレクトされること無くアイテムを購入する。このような複合ページは顧客によってホスト・ウェブ・ページと関係しているように視覚的に認められるので、それらのページは顧客に自分がホストによってサービスされているページを見ているという印象を与える。更に、顧客はサード・パーティ小売商アフィリエイトにリダイレクトされること無くアイテムを購入することが可能で、したがって、ホストが顧客のコントロールを維持することができる。このシステムは、ホストが前の通り、しかし、訪問トラフィック及びポテンシャル顧客のロス無しで同じ広告収益ストリームを受け取ることを可能にする。より詳しくは、システムは、商業機会を提供するウェブ・ページをサービスしている外部委託プロバイダにおいて役立つことができる。コンピュータ記憶は、複数の第1のウェブ・ページのそれぞれに対して複数の視覚的に認知可能な要素を定めるデータを含み、その視覚的に認知可能な要素は複数の第1のウェブ・ページに対応し、そこにおいて、第1のウェブ・ページのそれぞれは、複数のウェブ・ページ所有者の一つに属し、そこにおいて、第1のウェブ・ページのそれぞれは、複数の小売商の選択された一つの購入機会と関連付けられた商業オブジェクトと関連付けられた少なくとも一つのアクティブ・リンクを表示し、そして選択された小売商、外部委託プロバイダ及び関連リンクを表示している第1のウェブ・ページの所有者は、互いに対して各サード・パーティであり、外部委託プロバイダにあるコンピュータ・サーバはコンピュータ記憶に連結されて、コンピュータ・ユーザのウェブ・ブラウザから第1のウェブ・ページの一つによって表示されるリンクの一つのアクティブ化を示す信号を受信し、自動的に、リンクが起動した第1のウェブ・ページの一つをソース・ページとして識別し、ソース・ページの識別に応答して、自動的に、ソース・ページに対応する記憶データを読み出し、そして、読み出したデータを使用して、起動したリンクと関連付けられた商業オブジェクトと関連付けられた情報及び視覚的にソース・ページに対応する複数の視覚的に認知可能な要素を表示する第2のウェブ・ページを、自動的に生成してウェブ・ブラウザに送信するようにプログラムされている。