JP2023538832A - 失敗したユーザ・インターフェイスの解決 - Google Patents

失敗したユーザ・インターフェイスの解決 Download PDF

Info

Publication number
JP2023538832A
JP2023538832A JP2023507617A JP2023507617A JP2023538832A JP 2023538832 A JP2023538832 A JP 2023538832A JP 2023507617 A JP2023507617 A JP 2023507617A JP 2023507617 A JP2023507617 A JP 2023507617A JP 2023538832 A JP2023538832 A JP 2023538832A
Authority
JP
Japan
Prior art keywords
user
user interface
mobile device
input
local device
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.)
Pending
Application number
JP2023507617A
Other languages
English (en)
Inventor
エー シルヴァースタイン、ザカリー
ハンティングトン グラント、ロバート
トーマス コヴェル、ジェイコブ
チャン、アルヴィン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2023538832A publication Critical patent/JP2023538832A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • G06F3/0418Control or interface arrangements specially adapted for digitisers for error correction or compensation, e.g. based on parallax, calibration or alignment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3438Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/01Indexing scheme relating to G06F3/01
    • G06F2203/011Emotion or mood input determined on the basis of sensed human body parameters such as pulse, heart rate or beat, temperature of skin, facial expressions, iris, voice pitch, brain activity patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/038Indexing scheme relating to G06F3/038
    • G06F2203/0384Wireless input, i.e. hardware and software details of wireless interface arrangements for pointing devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Human Computer Interaction (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Telephone Function (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

失敗したユーザ・インターフェイス機能を解決するための態様が説明される。1つまたは複数のプロセッサが、ローカル・デバイス・ユーザ・インターフェイスに表示されたユーザ選択可能要素で、第1の入力の大きさを有する第1のユーザ入力を検出し、ローカル・デバイス・ユーザ・インターフェイスが第1のユーザ入力に応答しないということを決定することと、ユーザ選択可能要素で第1の入力の大きさより大きい第2の入力の大きさを有する第2のユーザ入力を検出することであって、第1のユーザ入力および第2のユーザ入力がユーザによる、検出することと、ローカル・デバイス・ユーザ・インターフェイスが第2のユーザ入力に応答しないということを決定することと、ユーザ・インターフェイス・オフロード・プロンプトに対応する第1のデータを、ユーザに関連付けられたモバイル・デバイスに送信することであって、モバイル・デバイスがローカル・デバイス・ユーザ・インターフェイスからの既定の近さの範囲内にある、送信することと、モバイル・デバイスの複数のユーザ入力に対応する第2のデータをモバイル・デバイスから受信することとを実行するために構成される。

Description

本発明は、一般に、ユーザ・インターフェイス機能を解決する分野に関し、より詳細には、失敗したユーザ・インターフェイス機能を近接するモバイル・デバイスにオフロードすることに関する。
ファーストフード・レストランは、従来のように、人間の対話によってカウンター越しに顧客の注文を受けることから、インターネット対応のコンピューティング・デバイスを介して電子的に顧客の注文を受けることへと進化した。顧客がレストランに入ると、その顧客は、ただセルフオーダー・キオスクに近づき、メニューから商品を選択し、支払い情報を入力し、注文確認を受け取ることができる。食べ物または飲み物の注文は、レストランの従業員との対話からセルフサービス・キオスクへと単純に移行され、人間による対話が技術による対話に置き換えられている。
多くのモバイル・デバイス・ユーザ・インターフェイス(mobile device user-interface)のディスプレイが、モノのインターネット(IoT)機能の出現の一部としてのセルフサービス・キオスク用のタッチ・スクリーン・ディスプレイに切り替わっている。IoTとは、パーソナル・コンピュータおよびモバイル・デバイスなどの従来のコンピューティング・プラットフォームを越えて、従来のインターネット非対応の物理デバイスおよび日用品の任意の範囲に拡大するインターネット接続の概念のことを指している。電子機器、インターネット接続、および他の形態の(センサなどの)ハードウェアが組み込まれたこれらのデバイスおよび物は、ネットワーク接続を経由して顧客と通信し、対話することができ、これらのデバイスおよび物は、リモートに監視され、制御され得る。
本発明の態様は、失敗したユーザ・インターフェイス機能を解決するための方法、コンピュータ・プログラム製品、およびコンピュータ・システムを開示する。本発明の一実施形態は、ローカル・デバイス・ユーザ・インターフェイス(local device user-interface)に表示された1つまたは複数のユーザ選択可能要素で第1の入力の大きさを有する第1のユーザ入力を検出するように構成された1つまたは複数のプロセッサを有するローカル・デバイスを含んでよい。さらに、1つまたは複数のプロセッサは、ローカル・デバイス・ユーザ・インターフェイスが第1のユーザ入力に応答しないということを決定するように構成されてよい。ローカル・デバイスの1つまたは複数のプロセッサは、1つまたは複数のユーザ選択可能要素で、ユーザによる第2のユーザ入力を検出するように構成されてもよく、第2のユーザ入力は、第1の入力の大きさより大きい第2の入力の大きさを有する。
さらに、ローカル・デバイスの1つまたは複数のプロセッサは、ローカル・デバイス・ユーザ・インターフェイスが第2のユーザ入力に応答しないということを決定するように構成されてよい。1つまたは複数のプロセッサは、ユーザのいらだちを、複数の繰り返される画面タッチ、マイクロホンを介して聞こえるユーザの欲求不満、またはローカル・デバイス・ユーザ・インターフェイス上で、取り消しユーザ選択可能要素をタッチすることによるユーザの対話の取り消しとして検出することによって、非応答性を決定するように構成されてよい。ローカル・デバイスの1つまたは複数のプロセッサが、ローカル・デバイス・ユーザ・インターフェイスが応答しないということを決定した場合、ローカル・デバイスの1つまたは複数のプロセッサは、第1のデータを、ユーザに関連付けられたモバイル・デバイスに送信してよく、第1のデータが、ユーザ・インターフェイス・オフロード・プロンプト(user-interface offload prompt)に対応し、モバイル・デバイスが、ローカル・デバイス・ユーザ・インターフェイスからの既定の近さの範囲内にあってよい。さらに、ローカル・デバイスの1つまたは複数のプロセッサは、モバイル・デバイスから第2のデータを受信するように構成されてよく、第2のデータが、モバイル・デバイスで受信されたモバイル・デバイスの複数のユーザ入力に対応してよい。
別の実施形態では、1つまたは複数のプロセッサは、1つまたは複数のプロセッサが第1のユーザ入力によって開始された1つまたは複数のユーザ選択可能要素に対応するコマンドを実行することに失敗したため、ローカル・デバイス・ユーザ・インターフェイスが第1のユーザ入力に応答しないということを決定するように構成されてよい。さらに、モバイル・デバイスは、本明細書に記載された本発明の実施形態を実行するように構成され得る1つまたは複数のプロセッサを含んでよい。例えば、本発明の実施形態は、モバイル・デバイスのディスプレイ上にモバイル・デバイス・ユーザ・インターフェイスを生成するように構成されたモバイル・デバイスの1つまたは複数のプロセッサを含んでよく、モバイル・デバイス・ユーザ・インターフェイスが、1つまたは複数のユーザ選択可能要素に対応するモバイル・デバイスのユーザ選択可能要素を含んでよい。
ローカル・デバイス・ユーザ・インターフェイスが第2のユーザ入力に応答しないということを決定することに応答して、ユーザ・インターフェイス・オフロード・プロンプトがモバイル・デバイスに送信されてよい。モバイル・デバイスの複数のユーザ入力のうちの少なくとも1つが、1つまたは複数のユーザ選択可能要素での第1のユーザ入力に対応してよい。モバイル・デバイスの1つまたは複数のプロセッサは、第2のデータを、ローカル・デバイス・ユーザ・インターフェイスを備えているローカル・デバイスに送信するように構成されてよく、ローカル・デバイスがネットワークに接続される。ローカル・デバイスは、ローカル・デバイスから既定の近さの範囲内にある場合にローカル・デバイスとモバイル・デバイスとの間のワイヤレス通信を容易にするように構成されたワイヤレス通信モジュールを含んでよい。
別の実施形態では、ローカル・デバイスの1つまたは複数のプロセッサは、ユーザの対話を監視するために構成されてよい。ユーザの対話は、ユーザの動き、ユーザ入力、またはユーザの活動を検出するように構成されたセンサからデータを受信することによって監視されてよい。さらに、1つまたは複数のセンサが、ユーザの対話を監視することから受信された指標を追跡するために構成されてよい。追跡され得る指標の例は、センサ・データ(例えば、圧力、入力、音声)または入力の取り消しの何らかの指示である。
実施形態では、ローカル・デバイスの1つまたは複数のプロセッサは、指標または指標データを処理して分析し、指標がユーザのいらだちとの任意の相関関係を有するかどうかを判定するために構成されてよい。分析がユーザのいらだちを示す結果を生成する場合、ローカル・デバイスの1つまたは複数のプロセッサは、モバイル・デバイス・ユーザ・インターフェイス上の表示およびユーザの対話のために、ローカル・デバイス・ユーザ・インターフェイスの機能を近接するモバイル・デバイスにオフロードするように構成されてよい。言い換えると、モバイル・デバイスの1つまたは複数のプロセッサは、ローカル・デバイスからのモバイル・デバイスへのワイヤレス・データ送信を介して、モバイル・デバイス・ユーザ・インターフェイス上でローカル・デバイス・ユーザ・インターフェイスの機能を反映するように構成されてよい。しかし、分析がユーザのいらだちを指し示さない結果を生成する場合、ローカル・デバイスの1つまたは複数のプロセッサは、指標または指標データを引き続き処理して分析するように構成されてよい。
本発明の実施形態に従う、分散データ処理環境のブロック図である。 本発明の実施形態に従う、失敗したユーザ・インターフェイス機能を解決するための方法のフローチャートである。 本発明の実施形態に従う、失敗したユーザ・インターフェイス機能を解決するための別の方法のフローチャートである。 本発明の実施形態に従う、IoTコンピューティング環境のコンピューティング・デバイスのブロック図である。
タッチ・スクリーン・セルフサービス・キオスクは、従来のコンピュータの持つ不具合を抱えている。例えば、タッチ・スクリーン・ユーザ・インターフェイスが、ユーザ入力を登録しなかったり、ユーザによって要求されたソフトウェア・コマンドを実行できなかったりすることがある。顧客の技能を軽減するようにセルフサービス・キオスクが設計されている場合、セルフサービス・キオスクの不具合時に、顧客の欲求不満およびいらだちは避けられない。
IoTデバイスは、それらのプログラムされた機能をトリガーするか、または呼び出すために、ユーザ・インターフェイスのディスプレイでユーザ入力を検出するように構成されることがある。顧客対応の環境(例えば、ファーストフード・レストラン、空港のチェックイン・ステーション、小売店の精算)では、セルフサービス・キオスクによってこれらの機能が容易にされ得るが、ユーザ・インターフェイスのディスプレイの不具合時に、そのような実施のための堅牢な解決策が存在しないように思われる。セルフサービス・キオスクは、ネットワーク接続されたデバイス(例えば、店舗販売時点情報管理デバイス、モバイル・デバイス上のアプリケーション、キッチン・ディスプレイ・システム、支払い処理)において機能をトリガーまたは実施するために、バックエンド・サーバ・システムまたは知識エンジンとネットワーク通信してよい。顧客によって開始されたトランザクションは、ネットワークに接続されたユーザ・デバイスから配置され、特定のユーザ入力によって、ときにはユーザがこのセルフサービス・キオスクに十分近い範囲内にいる場合に、トリガーされてよい。しかし、セルフサービス・キオスクのユーザ・インターフェイスは、ユーザ入力を受信できないことがあり、その結果、待ち時間および不便さを減らすようにセルフサービス・システムの目的が設計されている場合には、ユーザのいらだちおよび欲求不満をもたらす。言い換えると、セルフサービス・キオスクのユーザ・インターフェイスが、ユーザ入力に関連付けられたコマンドを実行できない場合、顧客の注文が受信されないことがある。
本明細書に記載された本発明の態様は、セルフサービス・キオスクのユーザ・インターフェイスがユーザ入力を検出し、ユーザ・インターフェイスが意図された通りに応答していないということを決定し、ユーザがユーザのモバイル・デバイスを介して引き続き注文できるようにするために、ユーザ・インターフェイスを近くのユーザのモバイル・デバイスにオフロードすることを容易にし、可能にする。本発明の実施形態の特定の態様は、ユーザ・インターフェイスをユーザのモバイル・デバイスにオフロードすることによって、失敗したタッチ・スクリーンの解決を容易にする。
本明細書に記載された実施形態例は、失敗したユーザ・インターフェイス機能を解決するための方法、システム、およびコンピュータ・プログラム製品を提供する。本発明の一実施形態は、ローカル・デバイス・ユーザ・インターフェイスに表示された1つまたは複数のユーザ選択可能要素で第1の入力の大きさを有する第1のユーザ入力を検出するように構成された1つまたは複数のプロセッサを有するローカル・デバイスを含んでよい。さらに、ローカル・デバイスの1つまたは複数のプロセッサは、ローカル・デバイス・ユーザ・インターフェイスが第1のユーザ入力に応答しないということを決定するように構成されてよい。ローカル・デバイスの1つまたは複数のプロセッサは、1つまたは複数のユーザ選択可能要素で、ユーザによる第2のユーザ入力を検出するように構成されてよく、第2のユーザ入力は、第1の入力の大きさより大きい第2の入力の大きさを有する。
さらに、ローカル・デバイスの1つまたは複数のプロセッサは、ローカル・デバイス・ユーザ・インターフェイスが第2のユーザ入力に応答しないということを決定するように構成されてよい。1つまたは複数のプロセッサは、ユーザのいらだちを、複数の繰り返される画面タッチ、マイクロホンを介して聞こえるユーザの欲求不満、またはローカル・デバイス・ユーザ・インターフェイス上で、取り消しユーザ選択可能要素をタッチすることによるユーザの対話の取り消しとして検出することによって、非応答性を決定してよい。ローカル・デバイスが、ローカル・デバイス・ユーザ・インターフェイスが応答しないということを決定する場合、ローカル・デバイスは、第1のデータを、ユーザに関連付けられたモバイル・デバイスに送信するように構成されてよく、第1のデータが、ユーザ・インターフェイス・オフロード・プロンプトに対応する。ローカル・デバイスは、データをモバイル・デバイスに送信する前に、モバイル・デバイスがローカル・デバイス・ユーザ・インターフェイスから既定の近さの範囲内にあるということを決定するように構成されてよい。さらに、ローカル・デバイスの1つまたは複数のプロセッサは、モバイル・デバイスから第2のデータを受信するように構成されてよく、第2のデータが、モバイル・デバイス上のユーザ・インターフェイスで受信されたモバイル・デバイスの複数のユーザ入力に対応してよい。
別の実施形態では、ローカル・デバイスの1つまたは複数のプロセッサは、ローカル・デバイスの1つまたは複数のプロセッサが、第1のユーザ入力によって開始された1つまたは複数のユーザ選択可能要素に対応するコマンドを実行することに失敗したため、ローカル・デバイス・ユーザ・インターフェイスが第1のユーザ入力に応答しないということを決定するように構成されてよい。さらに、モバイル・デバイスの1つまたは複数のプロセッサは、モバイル・デバイスのディスプレイ上にモバイル・デバイス・ユーザ・インターフェイスを生成するように構成されてよく、モバイル・デバイス・ユーザ・インターフェイスが、1つまたは複数のユーザ選択可能要素に対応するモバイル・デバイスのユーザ選択可能要素を含んでよい。
ローカル・デバイス・ユーザ・インターフェイスが第2のユーザ入力に応答しないということを決定することに応答して、ユーザ・インターフェイス・オフロード・プロンプトがローカル・デバイスからモバイル・デバイスに送信されてよい。例えば、ユーザ・インターフェイス・オフロード・プロンプトがモバイル・デバイスで受信された後に、ローカル・デバイスの非応答性を示すモバイル・デバイス・ユーザへの通知を生成するように、モバイル・デバイスが構成されてよい。この通知に加えて、モバイル・デバイスは、ユーザへのプロンプトを生成するように構成されてよく、このプロンプトは、モバイル・デバイスのディスプレイ上で選択された場合に、ユーザ・インターフェイスを生成する。モバイル・デバイス・ユーザ・インターフェイスは、モバイル・デバイスでモバイル・デバイスの複数のユーザ入力を受信するように構成されてよい。モバイル・デバイスの複数のユーザ入力のうちの少なくとも1つが、1つまたは複数のユーザ選択可能要素での第1のユーザ入力に対応してよい。言い換えると、モバイル・デバイスのユーザ入力は、ローカル・デバイス・ユーザ・インターフェイスでユーザによって試みられた第1のユーザ入力と同じであるが、ローカル・デバイス・ユーザ・インターフェイスが応答しなかったため、モバイル・デバイス・ユーザ・インターフェイスで提供されてよい。
モバイル・デバイスの1つまたは複数のプロセッサは、モバイル・デバイスの複数のユーザ入力を、第2のデータとして、ローカル・デバイス・ユーザ・インターフェイスを備えているローカル・デバイスに送信するように構成されてよい。ローカル・デバイスは、ローカル・デバイスが設置されている施設内のネットワークに接続されてよい。ローカル・デバイスは、ローカル・デバイスから既定の近さの範囲内にある場合にローカル・デバイスとモバイル・デバイスとの間のワイヤレス通信を容易にするように構成されたワイヤレス通信モジュールを含んでよい。
別の実施形態では、ローカル・デバイスは、ユーザの動き、ユーザ入力、またはユーザの活動を検出するように構成されたセンサからデータを受信することによってユーザの対話を監視するために構成されてよい。さらに、1つまたは複数のセンサが、ユーザの対話を監視することから受信された指標を追跡するために構成されてよい。追跡され得る指標の例は、センサ・データ(例えば、圧力、入力、音声)または入力の取り消しの何らかの指示である。
実施形態では、ローカル・デバイスの1つまたは複数のプロセッサは、指標または指標データを処理して分析し、指標がユーザのいらだちとの任意の相関関係を有するかどうかを判定するために構成されてよい。分析がユーザのいらだちを示す結果を生成する場合、1つまたは複数のプロセッサは、モバイル・デバイス・ユーザ・インターフェイス上の表示およびユーザの対話のために、ローカル・デバイス・ユーザ・インターフェイスの機能を近接するモバイル・デバイスにオフロードするように構成されてよい。言い換えると、1つまたは複数のプロセッサは、ローカル・デバイスからモバイル・デバイスへのワイヤレス・データ送信を介して、モバイル・デバイス・ユーザ・インターフェイス上でローカル・デバイス・ユーザ・インターフェイスの機能を反映するように構成されてよい。しかし、分析がユーザのいらだちを指し示さない結果を生成する場合、1つまたは複数のプロセッサは、指標または指標データを引き続き処理して分析するように構成されてよい。
ここで、図を参照して本発明が詳細に説明される。
図1は、本発明の実施形態に従う、失敗したユーザ・インターフェイス機能を解決するための分散データ処理環境100のブロック図を示している。図1は、単に本発明の一実施形態の例を提供しており、さまざまな実施形態が実装され得る環境に関して、どのような制限も意味していない。
示された実施形態では、分散データ処理環境100は、ネットワーク110を経由して相互接続されたローカル・デバイス120と、データベース124と、モバイル・デバイス130とを含んでいる。ネットワーク110は、例えば、ローカル・エリア・ネットワーク(LAN:local area network)、インターネットなどの広域ネットワーク(WAN:wide area network)、またはこれらの2つの組合せとすることができ、有線接続、ワイヤレス接続、または光ファイバ接続を含むことができる。ネットワーク110は、音声情報、データ情報、およびビデオ情報を含んでいるマルチメディア信号を含むデータ信号、音声信号、もしくはビデオ信号、またはそれらの組合せを受信または送信できる1つまたは複数の有線ネットワークもしくはワイヤレス・ネットワークまたはその両方を含むことができる。一般に、ネットワーク110は、ローカル・デバイス120、データベース124、およびモバイル・デバイス130の間の通信をサポートする接続およびプロトコルの任意の組合せとすることができる。実施形態では、ネットワーク110は、外向きの通信を許可しながら、ネットワーク110との間での許可されていないアクセスを遮断するためにファイアウォールを含み得る、プライベートな/セキュリティで保護されたネットワークであってよい。分散データ処理環境100は、図に示されていない追加のサーバ、コンピュータ、または他のデバイスを含んでよい。
ネットワーク110は、1つまたは複数のユーザ選択可能要素126を表示するユーザ・インターフェイス122を有するローカル・デバイス120と通信してよい。一実施形態では、ローカル・デバイス120は、ローカル・デバイス・ユーザ・インターフェイス122でユーザ140によるユーザ入力を受信するように構成されてよい。ユーザ入力は、ローカル・デバイス・ユーザ・インターフェイス122に表示されたユーザ選択可能要素126でタッチ動作を検出することを含んでよい。ユーザ入力は、タッチ・スクリーンが押されるか、またはタッチされるときに画面に加えられる圧力を測定することによって決定され得る、変化する大きさを有してよい。したがって、第1のユーザ入力は第1の入力の大きさを有してよく、第2のユーザ入力は、第1の入力の大きさより小さいか、大きいか、または等しい第2の入力の大きさを有してよい。
1つまたは複数のユーザ選択可能要素でのユーザ入力の検出時に、ローカル・デバイスの1つまたは複数のプロセッサは、ローカル・デバイス・ユーザ・インターフェイス122がユーザ入力に応答しないということを決定してよい。第1の入力の後、または後続のユーザ入力の後に、ローカル・デバイス120が、ローカル・デバイス・ユーザ・インターフェイス122が応答しないということを決定した場合、ローカル・デバイス120の1つまたは複数のプロセッサは、次に、モバイル・デバイス130が、データをモバイル・デバイス130に正常に送信するための範囲内にあるように、ローカル・デバイス120への既定の近さの範囲内にあるかどうかを判定してよい。
ローカル・デバイス120の1つまたは複数のプロセッサは、ローカル・デバイス120の1つまたは複数のプロセッサが、モバイル・デバイス130がローカル・デバイス120への既定の近さの範囲内にあるということを決定した後に、ユーザ・インターフェイス・オフロード・プロンプトに対応するデータをユーザ140に関連付けられたモバイル・デバイス130に送信するように構成されてよい。ワイヤレス通信媒体を使用して、ローカル・デバイス120からモバイル・デバイス130にデータが送信されてよい。
実施形態では、モバイル・デバイス130は、ユーザ・インターフェイス・オフロード・プロンプトに対応するデータを受信するように構成されてよい。モバイル・デバイス130の1つまたは複数のプロセッサは、データの受信時に、モバイル・デバイス・ユーザ・インターフェイス132に表示されるモバイル・デバイスのユーザ選択可能要素136を生成するように構成されてよい。モバイル・デバイス130は、ローカル・デバイス・ユーザ・インターフェイス122に似ているモバイル・デバイス・ユーザ・インターフェイス132を生成するように構成されてよい。任意選択的に、モバイル・デバイス・ユーザ・インターフェイス132は、ローカル・デバイス・ユーザ・インターフェイス122を反映してよい。しかし、モバイル・デバイス・ユーザ・インターフェイス132が、ローカル・デバイス・ユーザ・インターフェイス122上に表示されたユーザ・インターフェイスと同じであるか、または同様に描かれたユーザ・インターフェイスを表示する限り、ローカル・デバイス・ユーザ・インターフェイス122がユーザ入力に応答しないとしても、モバイル・デバイス・ユーザ・インターフェイス132は、ユーザ140がローカル・デバイス120と引き続き対話するのに十分な正確さを有するものとなる。
モバイル・デバイス130は、モバイル・デバイス・ユーザ・インターフェイス132に表示されたモバイル・デバイスのユーザ選択可能要素136でユーザ入力を検出するように構成されてよい。モバイル・デバイス130の1つまたは複数のプロセッサは、ユーザ選択可能要素136に関連付けられたコマンドを処理するように構成されてよい。さらに、モバイル・デバイス130は、モバイル・デバイス130のユーザ入力および関連するコマンドに対応するデータを格納するためのメモリ(図示されていない)を含んでよい。1つまたは複数のプロセッサは、前述したように、モバイル・デバイス130のユーザ入力および関連するコマンドに対応するデータを、ワイヤレス通信チャネルを介してローカル・デバイス120に送信するように構成されてよい。
実施形態では、ローカル・デバイス120は、複数のユーザ入力および関連するコマンドに対応するデータをモバイル・デバイス130から受信するように構成されてよい。ローカル・デバイス120は、モバイル・デバイス130からのデータの受信時に、意図された通りにデータを処理し、コマンドを実行するように構成されてよい。例えば、モバイル・デバイス130からのデータが、モバイル・デバイスのユーザ選択可能要素136によって表されたメニューに表示された商品の選択に対応する場合、ローカル・デバイス120の1つまたは複数のプロセッサは、そのような商品の選択に関連付けられたコマンドを実行し、データに含まれている支払い情報を処理し、注文が正常に受信されたことの確認をユーザ140に提供するように構成されてよい。
ローカル・デバイス120は、複数のユーザとインターフェイスをとるためのローカル・ユーザ・インターフェイス122を備えるコンピューティング・デバイスとして動作する。実施形態では、ローカル・デバイス120は、ビジネス(例えば、ファーストフード・レストラン、空港のチェックイン・ステーション、もしくは小売店の精算、またはそれらの組合せ)の顧客向けのセルフサービス・キオスクとして動作する。一部の実施形態では、ローカル・デバイス120は、それぞれ、管理サーバ、Webサーバ、またはデータを受信および送信できる任意の他の電子デバイスもしくはコンピューティング・システムであってよい。一部の実施形態では、ローカル・デバイス120は、ラップトップ・コンピュータ、タブレット・コンピュータ、ネットブック・コンピュータ、パーソナル・コンピュータ(PC:personal computer)、デスクトップ・コンピュータ、スマートフォン、またはネットワーク110を介して他のIoTデバイスと通信できる任意のプログラム可能な電子デバイスであってよい。図4でさらに詳細に説明されるように、ローカル・デバイス120はコンポーネントを含んでよい。
モバイル・デバイス130は、モバイル・デバイス130の所有者もしくは許可されたユーザ140またはその両方と対話するために、ユーザ・インターフェイス132を実行して表示するように動作してよい。実施形態の一例では、モバイル・デバイス130は、ネットワーク110もしくはローカル・デバイス120またはその両方へのデータの送信、またはそれらからのデータの受信、またはその両方を実行するように構成されてよい。一部の実施形態では、モバイル・デバイス130は、それぞれ、ラップトップ・コンピュータ、タブレット・コンピュータ、ネットブック・コンピュータ、パーソナル・コンピュータ(PC)、デスクトップ・コンピュータ、スマートフォン、スマート・デバイス、またはネットワーク110を介して他のコンピューティング・デバイスと通信できる任意のプログラム可能な電子デバイスであってよい。図4でさらに詳細に説明されるように、モバイル・デバイス130はコンポーネントを含んでよい。
ユーザ・インターフェイス132は、モバイル・デバイス130上でモバイル・ユーザ・インターフェイスとして動作し、ユーザ・インターフェイス132を介して、モバイル・デバイス130の1人または複数のユーザがモバイル・デバイス130と対話する。一部の実施形態では、ユーザ・インターフェイス132は、グラフィカル・ユーザ・インターフェイス(GUI:graphical user interface)、Webユーザ・インターフェイス(WUI:web user interface)、もしくは音声ユーザ・インターフェイス(VUI:voice user interface)、またはそれらの組合せであり、ネットワーク105を介してモバイル・デバイス130上の1つまたは複数のプロセッサからの情報をユーザ140に表示する(すなわち、視覚的に表示する)か、提示する(すなわち、聞こえるように提示する)か、または情報(すなわち、グラフィックス、テキスト、もしくは音、またはそれらの組合せ)をユーザ140がそれらのプロセッサに対して入力、もしくはそれらのプロセッサから受信できるようにするか、またはそれらの組合せを実行することができる。実施形態では、ユーザ・インターフェイス132は、ユーザ140がデータを送信および受信できるようにする(すなわち、ネットワーク110を介して1つまたは複数のプロセッサとの間で送信および受信できるようにする)。
実施形態では、ユーザ・インターフェイス132は、モバイル・デバイス130のワークフローを表示するか、提示するか、またはユーザ140がそのワークフローを設定できるようにする。実施形態では、ユーザ・インターフェイス132は、モバイル・デバイス130の過去の使用パターンに基づいて作成されたワークフローを表示するか、提示するか、またはユーザ140がそのワークフローを承認できるようにする。実施形態では、ユーザ・インターフェイス132は、例えば、メニューの商品のユーザ選択可能要素を表示する通知を、モバイル・デバイスの1つまたは複数のプロセッサから表示するか、提示するか、またはユーザ140がその通知を受信できるようにする。実施形態では、ユーザ・インターフェイス132は、ユーザ140がモバイル・デバイスの1つまたは複数のプロセッサによって要求された情報を入力することを可能にし、例えば、リストからの商品の選択に対応するユーザ入力を受信する。
データは、ネットワーク110と通信するデータベース124に格納されてよい。データベース124は、モバイル・デバイス・データ、ローカル・デバイス・データ、およびモバイル・デバイス・データまたはローカル・デバイス・データに関連付けられ得る他のデータ(例えば、デバイス・タイプ・プロファイル、デバイス・プロファイル)のためのリポジトリとして動作してよい。データベースは、データの構造化された集合である。データベース124は、データベース・サーバ、ハード・ディスク・ドライブ、またはフラッシュ・メモリなどの、ローカル・デバイス120またはモバイル・デバイス130のうちのどちらかによってアクセスされて利用され得るデータおよび構成ファイルを格納できる任意の種類のストレージ・デバイスを使用して実装され得る。実施形態では、データベース124は、ローカル・デバイス・データ、モバイル・デバイス・データ、デバイス・タイプ・プロファイル、デバイス・プロファイルを格納するために、ローカル・デバイス120によってアクセスされてよい。別の実施形態では、データベース124は、モバイル・デバイス・データ、デバイス・タイプ・プロファイル、デバイス・プロファイルにアクセスするために、モバイル・デバイス130によってアクセスされてよい。示された実施形態では、データベース124は、ネットワークから独立して存在してよい。別の実施形態では、データベース124は、データベース124がネットワーク110にアクセスできるという条件で、分散データ処理環境100内のどこかに存在してよい。
実施形態の別の一例では、ユーザ140は、ネットワーク110を使用してコンピューティング・デバイスを設定するときに、条件およびサービス契約に合意することが許可されてよい。ユーザの合意は、ローカル・デバイス120とモバイル・デバイス130との間で共有する情報およびデータの目的を文書化し、ネットワーク110への参加が指定されたネットワーク110上のデバイスに対するアクセス権限を提供し得る。ユーザの合意は、ユーザの元の要求に基づいて制御、トリガー、または動作が実行されることを許可する、言及された一時的なすべてのデバイスを含んでよい。複数のユーザおよび複数のコンピューティング・デバイスを含むネットワークの場合、新しいユーザ140が、定義されたグループまたは動的グループに参加するときに、システムは、使用の合意を前述のグループに拡張してよい。
ここで図2を参照すると、図2は、本発明の実施形態に従う、失敗したユーザ・インターフェイス機能を解決するための方法200のフローチャートを示している。方法200は、ローカル・デバイス・ユーザ・インターフェイス122に表示された1つまたは複数のユーザ選択可能要素で、ユーザによる第1のユーザ入力を検出する(202)ために構成された、1つまたは複数のプロセッサを含んでいるローカル・デバイス120を含んでよく、第1のユーザ入力は第1の大きさを有する。
さらに、方法200は、ローカル・デバイス・ユーザ・インターフェイス122が第1のユーザ入力に応答しないということを決定する(204)ために構成された1つまたは複数のプロセッサを含んでよい。実施形態では、1つまたは複数のプロセッサは、さまざまな方法で、ローカル・デバイス・ユーザ・インターフェイス122が第1のユーザ入力に応答しないということを決定するように構成されてよい。実施形態では、1つまたは複数のプロセッサは、1つまたは複数のプロセッサが、ローカル・デバイス・ユーザ・インターフェイス122に表示された1つまたは複数のユーザ選択可能要素126に対応するコマンドを実行することに失敗したということを決定するようにさらに構成されてよい。例えば、1ポンド毎平方インチ(psi)(0.07キログラム毎平方センチメートル(kgf/cm))の入力の大きさを有する第1のユーザ入力が、「開始」という単語が表示されたユーザ選択可能アイコンにユーザがタッチすることに対応する場合、そのユーザ入力に対応するコマンドは、選択された場合に開始または実行することになっている実行可能な関数であってよい。1psi(1kgf/cm)の入力の大きさは、タッチ・スクリーンがユーザ・インターフェイス122上の選択を登録するのに十分であってよい。しかし、ローカル・デバイス・ユーザ・インターフェイス122が、ユーザ入力を、対応するコマンドを開始するための入力として適切に登録しなかったため、対応するコマンドが実行できないことがある。ローカル・デバイス・ユーザ・インターフェイス122のタッチ・スクリーン機能に伴う技術的問題が存在することがある。
さらに、2psi(0.14kgf/cm)の入力の大きさを有する第2のユーザ入力が、「開始」という単語が表示された同じユーザ選択可能アイコンにユーザ140がタッチすることに対応する場合、対応するコマンドが、前述の例を含むさまざまな理由のために、やはり実行できないことがある。失敗の理由に関わらず、ローカル・デバイス120は、第1のユーザ入力の入力の大きさより大きい入力の大きさを有する第2のユーザ入力の後に、ローカル・デバイス・ユーザ・インターフェイス122が第2のユーザ入力に応答しないということを決定するように構成されてよい。
方法200は、ローカル・デバイス・ユーザ・インターフェイス122がユーザ入力に応答しないということを1つまたは複数のプロセッサが決定するための他の方法を含んでよい。例えば、1つまたは複数のプロセッサは、ユーザの画像、ユーザのボディ・ランゲージ、またはユーザの顔の表情を分析することによって、ユーザの欲求不満によって示された非応答性を決定するように構成されてよい。実施形態では、ローカル・デバイス120に通信可能に結合された1つまたは複数の画像センサ(例えば、カメラ、赤外線センサ)が、ユーザの顔の画像を捕捉し、ユーザの顔の特徴に対する分析を実行して、ユーザの感情を示す表現を検出するように構成されてよい。例えば、ユーザの顔の表情が渋面である場合、1つまたは複数のプロセッサは、ユーザ140が悲しんでいるか、または動揺しているということを決定するように構成されてよい。
別の例では、ユーザの顔の表情が、上に曲がった内側の眉、わずかに閉じられた目、または引き下げられた口角を含んでいる場合、1つまたは複数のプロセッサは、ユーザ140が悲しんでいるということを決定するように構成されてよい。さらに、別の例では、ユーザの顔の表情が、一緒に引き下げられた内側の眉、広く開かれた目、互いに押し付けられた唇、または開かれて歯を露出している唇を含んでいる場合、1つまたは複数のプロセッサは、ユーザ140が怒っているということを決定するように構成されてよい。怒り、悲しみ、または欲求不満を示すために、顔の表情の他の組合せが決定されてよい。したがって、ローカル・デバイス・ユーザ・インターフェイス122で1つまたは複数のユーザ入力を検出することに加えて、1つまたは複数のプロセッサが、ユーザ140が悲しんでいるか、または怒っているということを示すユーザの顔の表情に基づいて、ユーザ140が不満を抱いているということを決定する場合、1つまたは複数のプロセッサは、ローカル・デバイス・ユーザ・インターフェイスが応答しないということを決定してよい。
別の実施形態では、ローカル・デバイス120に通信可能に結合された1つまたは複数の画像センサ(例えば、カメラ、赤外線センサ)が、ユーザのボディ・ランゲージの1つまたは複数の画像を捕捉するように構成されてよい。例えば、1つまたは複数のプロセッサがユーザの体の画像を分析し、ユーザの手が固めた拳になっているということを決定する場合、1つまたは複数のプロセッサは、ユーザのボディ・ランゲージが欲求不満を示すということを決定するように構成されてよい。当業者によって知られているように、画像に基づいてボディ・ランゲージの他の種類が決定されてよい。
さらに、方法200は、1つまたは複数のユーザ選択可能要素126で、ユーザによる第2のユーザ入力を検出する(206)ために構成されたローカル・デバイスの1つまたは複数のプロセッサを含んでよく、第2のユーザ入力は、第1の入力の大きさより大きいか、小さいか、または等しいことがある第2の大きさを有する。
さらに、方法200は、本明細書における前述の実施形態と同様に、ローカル・デバイス・ユーザ・インターフェイス122が第2のユーザ入力に応答しないということを決定する(208)ために構成された1つまたは複数のプロセッサを含んでよい。
ローカル・デバイス120は、さまざまな方法で、ローカル・デバイス・ユーザ・インターフェイス122がユーザ入力に応答しないということを決定してよい。実施形態では、ローカル・デバイス120は、失敗したユーザ入力のしきい値数を検出し、このしきい値数が、コマンドを実行するために必要になることがある試行回数を超えているということを決定してよい。例えば、ローカル・デバイス・ユーザ・インターフェイス122が、同じローカル・デバイスのユーザ選択可能要素126で2つ以上のユーザ入力を検出した場合、ローカル・デバイス120は、ローカル・デバイス・ユーザ・インターフェイス122が応答しないということを決定してよい。
別の実施形態では、ローカル・デバイス・ユーザ・インターフェイス122が、ローカル・デバイスの1つまたは複数のユーザ選択可能要素126のいずれかで2つ以上のユーザ入力を検出し、連続するユーザ入力ごとの入力の大きさが既定のしきい値量だけ増えた場合、ローカル・デバイス120は、ローカル・デバイス・ユーザ・インターフェイス122が応答しないということを決定してよい。例えば、第2の入力の大きさが、第1の入力の大きさの25%という既定のしきい値だけ第1の入力の大きさより大きく、1つまたは複数のプロセッサが対応するコマンドを実行できない場合、1つまたは複数のプロセッサは、ローカル・デバイス・ユーザ・インターフェイス122がローカル・デバイスのユーザ入力に応答しないということを決定してよい。非応答性を決定するために、他の既定のしきい値量が使用されてよい。ローカル・デバイス・ユーザ・インターフェイス122は、ディスプレイ上で検出された各ユーザ入力の圧力を測定するように構成された圧力センサを含んでよい。圧力センサが、既定のしきい値を超える圧力の量の増加または圧力変化を検出した場合、ローカル・デバイス120は、ローカル・デバイス・ユーザ・インターフェイス122が応答しないということを決定してよい。
代替として、別の実施形態では、ローカル・デバイス120は、ユーザの音声を検出するように構成された音声センサを含んでよく、1つまたは複数のプロセッサが、ユーザの音声を処理してユーザ音声データに変換するように構成されてよい。ユーザの意図を決定するために、自然言語ユニット(NLU:Natural Language Unit)エンジンもしくは自動音声認識(ASR:Automatic Speech Recognition)エンジンまたはその両方によってユーザ音声データが処理されてよい。この実施形態では、NULもしくはASRまたはその両方は、ユーザ音声データがローカル・デバイス・ユーザ・インターフェイス122と対話することの困難さに対応するユーザの欲求不満またはユーザのいらだちを示しているということを決定するように、構成されてよい。したがって、ユーザ140が不満を抱いているか、またはいらだっているということを1つまたは複数のプロセッサが決定した場合、ローカル・デバイス120は、ローカル・デバイス・ユーザ・インターフェイスが応答しないということを決定してよい。
さらに別の実施形態では、ローカル・デバイス・ユーザ・インターフェイスは、ローカル・デバイス・ユーザ・インターフェイスとの対話を取り消すためのコマンドに対応するローカル・デバイスのユーザ選択可能要素126を含んでよい。対話取り消しユーザ選択可能要素は、ローカル・デバイス・ユーザ・インターフェイスがユーザ入力に応答しない場合でも、ユーザ140が対話を取り消し得るように構成されてよい。
ネットワーク110に接続された任意のデバイスで収集されたデータが、処理、格納、または再ルーティングのために1つまたは複数のプロセッサのいずれかにルーティングされ得るように、1つまたは複数のプロセッサが、分散データ処理環境100内の任意の位置にあってよい。例えば、ローカル・デバイス120で収集されたデータは、ネットワーク110に送信され、分散データ処理環境100で使用可能な何らかの他の処理リソースによって処理するためにデータベース124に保存されてよい。同様に、モバイル・デバイス130で収集されたデータは、ネットワーク110に送信され、分散データ処理環境100で使用可能な何らかの他の処理リソースによって処理するためにデータベース124に保存されてよい。したがって、1つまたは複数のプロセッサは、ネットワーク110に接続されたいずれかの特定のデバイスに限定されない。しかし、一部の実施形態は、利便性の要因のために、プロセスを実行するのに最適であるデバイスで発生するプロセスを処理することについて説明することがある。
さらに、方法200は、ローカル・デバイス・データをユーザに関連付けられたモバイル・デバイスに送信する(210)ために構成された1つまたは複数のプロセッサを含んでよい。ローカル・デバイス・データは、ローカル・デバイスで収集されるか、または生成され、ネットワーク110を介して他のネットワーク接続されたデバイスに使用可能にされてよい。ローカル・デバイス・データは、本明細書では、ローカル・デバイスによって生成されたデータまたは第1のデータとして説明されてもよい。ローカル・デバイス・データは、ユーザ・インターフェイス・オフロード・プロンプトに対応するデータを含んでよく、ユーザ・インターフェイス・オフロード・プロンプトは、ユーザ140に提示される、ローカル・デバイスが応答しないという通知を含んでよく、ローカル・デバイス・ユーザ・インターフェイスをユーザに関連付けられたモバイル・デバイスにオフロードするためのユーザの選択肢を提供する。実施形態では、ローカル・デバイスは、モバイル・デバイスがローカル・デバイスへの既定の近さの範囲内にあるかどうかを判定するために構成されてよい。
ローカル・デバイス・データは、モバイル・デバイスがローカル・デバイス・データを受信して処理した場合に、モバイル・デバイス上に通知を生成するように構成されてよい。例えば、モバイル・デバイスがローカル・デバイス・データまたはデータをローカル・デバイスから受信する場合、モバイル・デバイスの1つまたは複数のプロセッサは、ユーザに警告するための通知をモバイル・デバイス上に生成するように構成されてよい。この通知は、聞き取れる通知、可視の通知、振動する通知、またはローカル・デバイス・ユーザ・インターフェイスがユーザ入力に応答しないということを示すためのこれらの何らかの組合せであってよい。例えば、ローカル・デバイス・ユーザ・インターフェイスがユーザ入力に応答しないということをローカル・デバイスが決定した後に、ローカル・デバイスは、通知を含んでいるローカル・デバイス・データをモバイル・デバイスに送信してよく、モバイル・デバイスがローカル・デバイス・データを処理するときに、ローカル・デバイス・ユーザ・インターフェイスの失敗を示すメッセージと共に、聞き取れる通知、振動する通知、または可視の通知が生成されてよい。
モバイル・デバイス・ユーザ・インターフェイスは、モバイル・デバイス上で方法200を実行するローカル・ソフトウェア・アプリケーションとして、モバイル・デバイスのディスプレイ上で生成されてよい。ローカル・デバイス・データは、モバイル・デバイス・ユーザ・インターフェイス上にローカル・デバイス・ユーザ・インターフェイスのバージョンを生成するように構成されたユニフォーム・リソース・ロケータ(URL:uniform resource locator)またはWebアドレスを含んでよい。代替として、モバイル・デバイスのカメラによって捕捉するために、クイック・レスポンス(QR:quick response)コードがローカル・デバイス・ユーザ・インターフェイス上に表示されてよく、このQRコード(登録商標)は、モバイル・デバイス上でのローカル・デバイス・データへのアクセスを提供してよい。
通知は、ユーザ選択可能要素を選択してローカル・デバイス・ユーザ・インターフェイスをモバイル・デバイス・ユーザ・インターフェイスにオフロードするための、ユーザ140の目に見えるプロンプトを含んでもよい。ユーザ選択可能要素を選択して、ローカル・デバイス・ユーザ・インターフェイスをオフロードすることに応答して、モバイル・デバイスは、ローカル・デバイス・ユーザ・インターフェイスに似ているモバイル・デバイス・ユーザ・インターフェイスを生成するコマンドを実行するように構成されてよい。代替として、モバイル・デバイスは、ローカル・デバイス・ユーザ・インターフェイスに似ていないモバイル・デバイス・ユーザ・インターフェイスを生成するが、ローカル・デバイスのユーザ選択可能要素126の機能に一致するモバイル・デバイスのユーザ選択可能要素136を含んでいるモバイル・デバイス・ユーザ・インターフェイスを生成するコマンドを実行するように構成されてよい。例えば、ローカル・デバイスのユーザ選択可能要素126は、ローカル・デバイス・ユーザ・インターフェイスのディスプレイの表示特性(例えば、ディスプレイのサイズ、解像度)に適した特定の配置に配置されてよく、一方、モバイル・デバイスのユーザ選択可能要素136は、モバイル・デバイス・ユーザ・インターフェイス132の表示特性(例えば、ディスプレイのサイズ、解像度)に適した、ローカル・デバイス・ユーザ・インターフェイスと異なる配置に配置されてよい。
さらに、方法200は、ローカル・デバイスがモバイル・デバイス130からモバイル・デバイス・データを受信すること(212)を含んでよい。モバイル・デバイス・データは、モバイル・デバイス・ユーザ・インターフェイス132でユーザ140によって入力されたモバイル・デバイスの複数のユーザ入力に対応してよい。モバイル・デバイス・ユーザ・インターフェイス132は、ユーザ140がローカル・デバイス120と対話する方法と同じ方法で、ユーザ140がモバイル・デバイス130と対話し得るように、ローカル・デバイス・ユーザ・インターフェイス122に似ていてよい。モバイル・デバイス・データは、本明細書では、モバイル・デバイス120によって生成されたデータまたは第2のデータとして説明されてもよい。モバイル・デバイス・データは、モバイル・デバイス120で収集されたか、または生成されたデータを含んでよい。
ここで図3を参照すると、図3は、本発明の別の実施形態に従う、失敗したユーザ・インターフェイス機能を解決するための方法300のフローチャートを示している。方法300は、ローカル・デバイス・ユーザ・インターフェイス122に表示されたローカル・デバイスのユーザ選択可能要素126で、ユーザによる第1の入力の大きさを有する第1のユーザ入力を検出する(302)ために構成された、1つまたは複数のプロセッサをローカル・デバイス120に含んでよい。方法300は、1つまたは複数のプロセッサが、第1のローカル・デバイスのユーザ選択可能要素126に対応する第1のコマンドを実行することに失敗したということを決定する(304)ために構成された、1つまたは複数のプロセッサをさらに含んでよい。
さらに、1つまたは複数のプロセッサは、ローカル・デバイス・ユーザ・インターフェイス122に表示された第2のローカル・デバイスのユーザ選択可能要素126で、ユーザによる第2の入力の大きさを有する第2のユーザ入力を検出すること(306)と、1つまたは複数のプロセッサが、第2のローカル・デバイスのユーザ選択可能要素126に対応する第2のコマンドを実行することに失敗したということを決定すること(308)と、ローカル・デバイス・ユーザ・インターフェイス122が第1のユーザ入力および第2のユーザ入力に応答しないということを決定すること(310)とを実行するために構成されてよい。
ローカル・デバイス・ユーザ・インターフェイス122が第2のユーザ入力に応答しないことを決定すること(310)に応答して、1つまたは複数のプロセッサは、第1のデータ(例えば、ローカル・デバイス・データ)を、ユーザに関連付けられた近接するモバイル・デバイスに送信する(312)ためにさらに構成されてよい。第1のデータは、本明細書において前述したように、ユーザ・インターフェイス・オフロード・プロンプトに対応するか、またはユーザ・インターフェイス・オフロード・プロンプトに対応するデータを含んでよい。
別の実施形態では、1つまたは複数のプロセッサは、モバイル・デバイス・ユーザ・インターフェイス132をモバイル・デバイス130のディスプレイ上に生成する(314)ためにさらに構成されてよい。モバイル・デバイス・ユーザ・インターフェイス132は、ローカル・デバイス・ユーザ・インターフェイス122に表示されると、上で説明された第1のローカル・デバイスのユーザ選択可能要素126および第2のローカル・デバイスのユーザ選択可能要素126に対応するユーザ選択可能要素136を含んでよい。言い換えると、モバイル・デバイス・ユーザ・インターフェイス132は、ローカル・デバイス・ユーザ・インターフェイス122に似ているか、またはローカル・デバイス・ユーザ・インターフェイス122を反映するように構成されてよい。モバイル・デバイス・ユーザ・インターフェイス132は、ローカル・デバイス120から受信された少なくとも第1のデータを使用して生成されてよい。例えば、モバイル・デバイス・ユーザ・インターフェイス132は、モバイル・デバイスにインストールされたインターネット・ブラウザ・アプリケーション内に生成されてよい。代替として、モバイル・デバイス・ユーザ・インターフェイス132は、ローカル・デバイス120の所有者またはエージェントによって公開されたアプリケーション内に生成されてよく、一方、このアプリケーションは、ローカル・デバイス120上で実行されているソフトウェアと互換性がある。言い換えると、モバイル・デバイス・ユーザ・インターフェイス132上でローカル・デバイス・ユーザ・インターフェイス122のバージョンを実行して表示するように特に設計されたソフトウェア・アプリケーションが、ユーザ140がダウンロードするためにモバイル・デバイス130のユーザに提供されてよい。したがって、ローカル・デバイス・データがローカル・デバイス120からモバイル・デバイス130に送信される場合、モバイル・デバイス130は、ローカル・デバイス・データを使用してモバイル・デバイス130上でソフトウェア・アプリケーションを実行するように構成されてよい。
さらに別の実施形態では、方法300は、モバイル・デバイスの1つまたは複数のプロセッサが、モバイル・デバイスの複数のユーザ入力に対応するデータをモバイル・デバイス・ユーザ・インターフェイス132から受信する(316)ことを含んでよい。モバイル・デバイスの複数のユーザ入力は、モバイル・デバイス130のタッチ・スクリーン・ディスプレイ上で検出されたタッチ動作を含んでよく、タッチ動作は、ユーザ140が、タッチ・スクリーンに表示されたモバイル・デバイスの1つまたは複数のユーザ選択可能要素136をタッチするか、または選択することに対応する。例えば、第1のユーザ入力は、ユーザ140が、「注文を開始する」というラベルが付けられたモバイル・デバイスのユーザ選択可能要素136を選択することであってよく、このユーザ選択可能要素136は、メニューの選択肢のユーザ選択可能要素に対応するメニューの選択肢のリストを表示するように構成されてよい。第2のユーザ入力は、ユーザ140がメニューの選択肢のユーザ選択可能要素のうちの1つまたは複数を選択することなどであってよい。第3のユーザ入力は、ユーザ140が注文を完了するために支払い情報を提供することであってよい。それでも、ローカル・デバイス120を介してネットワーク110に送信するか、またはネットワーク110への別の接続を介してネットワークに直接送信するために、各ユーザ入力が、モバイル・デバイスの複数のユーザ入力として捕捉され、モバイル・デバイスのメモリに格納されてよい。
さらに、方法300は、モバイル・デバイスの複数のユーザ入力を含む第2のデータをローカル・デバイス120に送信する(318)ために構成された、モバイル・デバイスの1つまたは複数のプロセッサを含んでよい。第2のデータは、ワイヤレス通信媒体または何らかの他の形態のネットワーク接続を介してネットワーク110に直接送信されてよい。それでも、失敗したローカル・デバイス・ユーザ・インターフェイス機能を解決するために、モバイル・デバイス130でのユーザ入力に対応するデータは、モバイル・デバイス・ユーザ・インターフェイス132上で捕捉される。
実施形態では、ローカル・デバイス120は、ローカル・デバイス120と別のネットワーク接続されたデバイスとの間の通信を容易にするために、ネットワーク110に登録されるように構成されてよい。例えば、ローカル・デバイス120は、ローカル・デバイス120上で実行するように構成されたソフトウェア・アプリケーションに対応するデータを含んでよい。ソフトウェア・アプリケーションは、ローカル・デバイス120上で実行された場合、ローカル・デバイス120が使用されているビジネスに関連付けられたサーバへの登録を容易にしてよい。登録は、ローカル・デバイス120およびサーバが接続されているネットワーク110を介して発生してよい。ローカル・デバイス120がどのようにしてネットワーク110に登録され得るかと同様に、図に示されていない他のネットワーク接続されたデバイスとの通信を容易にするために、モバイル・デバイス130がネットワーク110に登録されてもよい。
実施形態では、ローカル・デバイス120およびモバイル・デバイス130で受信されたユーザ入力は不可知であってよく、すなわち、ユーザ入力は、本明細書において説明されたようなタッチ動作に限定されなくてよい。むしろ、ユーザ入力は、音声コマンド入力、他の周辺機器タイプの入力、またはユーザによる指示に従ってコンピュータによって生成された入力であってよい。
図4は、本発明の例示的な実施形態に従う、失敗したユーザ・インターフェイス機能を解決するのに適しているコンピュータ400のブロック図を示している。図4は、一実装形態の例示を提供するに過ぎず、さまざまな実施形態を実装し得る環境に関して、いかなる制限も意味していないと理解されるべきである。図に示された環境に対して、多くの変更が行われてよい。
コンピュータ400(例えば、モバイル・デバイス130)は、キャッシュ416、メモリ406、永続的ストレージ408、通信ユニット410、および入出力(I/O:input/output)インターフェイス412の間の通信を提供する通信ファブリック402を含んでいる。通信ファブリック402は、プロセッサ(マイクロプロセッサ、通信プロセッサ、およびネットワーク・プロセッサなど)、システム・メモリ、周辺デバイス、およびシステム内の任意の他のハードウェア・コンポーネントの間で、データもしくは制御情報またはその両方を渡すために設計された、任意のアーキテクチャを使用して実装され得る。例えば、通信ファブリック402は、1つまたは複数のバスまたはクロスバー・スイッチを使用して実装され得る。
メモリ406および永続的ストレージ408は、コンピュータ可読ストレージ媒体である。この実施形態では、メモリ406はランダム・アクセス・メモリ(RAM:random access memory)を含んでいる。一般に、メモリ406は、任意の適切な揮発性または不揮発性のコンピュータ可読ストレージ媒体を含むことができる。キャッシュ416は、メモリ406から最近アクセスされたデータ、およびアクセスされたデータに近いデータを保持することによって、コンピュータ・プロセッサ404の性能を向上させる高速なメモリである。
ソフトウェアおよびデータ414は、キャッシュ416を介してそれぞれのコンピュータ・プロセッサ404のうちの1つまたは複数によって実行する、もしくはアクセスする、またはその両方のために、永続的ストレージ408およびメモリ406に格納されてよい。実施形態では、永続的ストレージ408は、磁気ハード・ディスク・ドライブを含んでいる。磁気ハード・ディスク・ドライブに対する代替または追加として、永続的ストレージ408は、半導体ハード・ドライブ、半導体ストレージ・デバイス、読み取り専用メモリ(ROM:read-only memory)、消去可能プログラマブル読み取り専用メモリ(EPROM:erasable programmable read-only memory)、フラッシュ・メモリ、またはプログラム命令もしくはデジタル情報を格納できる任意のその他のコンピュータ可読ストレージ媒体を含むことができる。
永続的ストレージ408によって使用される媒体は、取り外し可能であってもよい。例えば、取り外し可能ハード・ドライブが、永続的ストレージ408に使用されてよい。その他の例としては、永続的ストレージ408の一部でもある別のコンピュータ可読ストレージ媒体に転送するためのドライブに挿入される、光ディスクおよび磁気ディスク、サム・ドライブ、ならびにスマート・カードが挙げられる。
これらの例において、通信ユニット410は、他のデータ処理システムまたはデバイスとの通信を提供する。これらの例において、通信ユニット410は、1つまたは複数のネットワーク・インターフェイス・カードを含む。通信ユニット410は、物理的通信リンクおよびワイヤレス通信リンクのどちらかまたは両方を使用して通信を提供してよい。ソフトウェアおよびデータ414は、通信ユニット410を介して永続的ストレージ408にダウンロードされてよい。
I/Oインターフェイス412は、コンピュータ400に接続されてよい他のデバイスとのデータの入力および出力を可能にする。例えば、I/Oインターフェイス412は、キーボード、キーパッド、タッチ・スクリーン、もしくはその他の適切な入力デバイス、またはそれらの組合せなどの、外部デバイス418への接続を提供してよい。外部デバイス418は、例えばサム・ドライブ、ポータブル光ディスクまたはポータブル磁気ディスク、およびメモリ・カードなどの、ポータブル・コンピュータ可読ストレージ媒体を含むこともできる。本発明の実施形態を実践するために使用されるソフトウェアおよびデータ414は、そのようなポータブル・コンピュータ可読ストレージ媒体に格納することができ、I/Oインターフェイス412を介して永続的ストレージ408に読み込むことができる。I/Oインターフェイス412は、ディスプレイ420にも接続される。
ディスプレイ420は、データをユーザ140に表示するためのメカニズムを提供し、例えば、コンピュータのモニタであってよい。
IoTデータは、IoTデバイスによって使用され、IoTデバイスに格納され、IoTデバイスによって送信または受信される任意のデータを含んでよく、機密扱いのIoTデータを含むことができる。機密扱いのIoTデータは、生体測定データ、クレジット・カード番号、個人識別番号、医療記録、パスワード、アクセス・コードなどを含むが、これらに限定されない。
本発明は、ユーザ140が処理されないことを望む個人データ、コンテンツ、または情報を含み得る、データベース124などの、さまざまなアクセス可能なデータ・ソースを含んでよい。個人データは、個人を特定する情報または機密扱いの個人情報に加えて、追跡情報または地理的位置情報などのユーザ情報を含む。処理とは、任意の自動化されたかまたは自動化されない動作または動作のセットのことを指し、そのような動作としては、個人データに対して実行される、収集、記録、編成、構造化、格納、適応、変更、検索、参照、使用、送信、配布、または他の方法で使用可能にすることによる開示、結合、制限、消去、または破壊などがある。ソフトウェアおよびデータ414は、個人データの許可された安全な処理を可能にしてよい。ソフトウェアおよびデータ414は、個人データの収集の通知と共に、情報に基づく同意を提供するように構成されてよく、ユーザ140が、個人データを処理することを許可または拒否できるようにする。同意は、複数の形態をとることができる。許可の同意は、個人データが処理される前に、積極的行動を取ることをユーザ140に強制することができる。代替として、拒否の同意は、個人データが処理される前に、個人データの処理を防ぐための積極的行動を取ることをユーザ140に強制することができる。ソフトウェアおよびデータ414は、個人データおよび処理の性質(例えば、種類、範囲、目的、期間など)に関する情報を提供してよい。ソフトウェアおよびデータ414は、格納された個人データのコピーをユーザ140に提供する。ソフトウェアおよびデータ414は、正しくない個人データまたは不完全な個人データの修正または完成を可能にする。ソフトウェアおよびデータ414は、個人データの即時の削除を可能にする。
本発明は、任意の可能な統合の技術的詳細レベルにおける、システム、方法、もしくはコンピュータ・プログラム製品、またはそれらの組合せであってよい。コンピュータ・プログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令を有するコンピュータ可読ストレージ媒体を含んでよい。
コンピュータ可読ストレージ媒体は、命令実行デバイスによって使用するための命令を保持および格納できる有形のデバイスであることができる。コンピュータ可読ストレージ媒体は、例えば、電子ストレージ・デバイス、磁気ストレージ・デバイス、光ストレージ・デバイス、電磁ストレージ・デバイス、半導体ストレージ・デバイス、または上述の任意の適切な組合せであってよいが、これらに限定されない。コンピュータ可読ストレージ媒体のさらに具体的な例の非網羅的リストは、ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROMまたはフラッシュ・メモリ)、スタティック・ランダム・アクセス・メモリ(SRAM:static random access memory)、ポータブル・コンパクト・ディスク読み取り専用メモリ(CD-ROM:compact disc read-only memory)、デジタル・バーサタイル・ディスク(DVD:digital versatile disk)、メモリ・スティック、フロッピー・ディスク、命令が記録されているパンチカードまたは溝の中の隆起構造などの機械的にエンコードされているデバイス、および上述の任意の適切な組合せを含む。本明細書において使用されるとき、コンピュータ可読ストレージ媒体は、それ自体が、電波もしくは他の自由に伝搬する電磁波、導波管もしくは他の送信媒体を伝搬する電磁波(例えば、光ファイバ・ケーブルを通過する光パルス)、またはワイヤを介して送信される電気信号などの一過性の信号であると解釈されるべきではない。
本明細書に記載されたコンピュータ可読プログラム命令は、コンピュータ可読ストレージ媒体からそれぞれのコンピューティング・デバイス/処理デバイスへ、またはネットワーク(例えば、インターネット、ローカル・エリア・ネットワーク、広域ネットワーク、もしくはワイヤレス・ネットワーク、またはそれらの組合せ)を介して外部コンピュータもしくは外部ストレージ・デバイスへダウンロードされ得る。このネットワークは、銅伝送ケーブル、光伝送ファイバ、ワイヤレス送信、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、もしくはエッジ・サーバ、またはそれらの組合せを備えてよい。各コンピューティング・デバイス/処理デバイス内のネットワーク・アダプタ・カードまたはネットワーク・インターフェイスは、コンピュータ可読プログラム命令をネットワークから受信し、それらのコンピュータ可読プログラム命令をそれぞれのコンピューティング・デバイス/処理デバイス内のコンピュータ可読ストレージ媒体に格納するために転送する。
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ(ISA:instruction-set-architecture)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路のための構成データ、またはSmalltalk、C++などのオブジェクト指向プログラミング言語、および「C」プログラミング言語または同様のプログラミング言語などの手続き型プログラミング言語を含む1つまたは複数のプログラミング言語の任意の組合せで記述されたソース・コードまたはオブジェクト・コードでのいずれかであってよい。コンピュータ可読プログラム命令は、ユーザのコンピュータ上で全体的に実行すること、ユーザのコンピュータ上でスタンドアロン・ソフトウェア・パッケージとして部分的に実行すること、ユーザのコンピュータ上およびリモート・コンピュータ上でそれぞれ部分的に実行すること、またはリモート・コンピュータ上またはサーバ上で全体的に実行することができる。後者のシナリオでは、リモート・コンピュータが、ローカル・エリア・ネットワーク(LAN)もしくは広域ネットワーク(WAN)を含む任意の種類のネットワークを介してユーザのコンピュータに接続されてもよいし、または接続が、(例えば、インターネット・サービス・プロバイダを使用してインターネットを介して)外部コンピュータに対して行われてよい。一部の実施形態では、本発明の態様を実行するために、例えばプログラマブル論理回路、フィールドプログラマブル・ゲート・アレイ(FPGA:field-programmable gate arrays)、またはプログラマブル・ロジック・アレイ(PLA:programmable logic arrays)を含む電子回路は、コンピュータ可読プログラム命令の状態情報を利用することによって、電子回路をカスタマイズするためのコンピュータ可読プログラム命令を実行してよい。
本発明の態様は、本明細書において、本発明の実施形態に従って、方法、装置(システム)、およびコンピュータ・プログラム製品のフローチャート図もしくはブロック図またはその両方を参照して説明される。フローチャート図もしくはブロック図またはその両方の各ブロック、ならびにフローチャート図もしくはブロック図またはその両方に含まれるブロックの組合せが、コンピュータ可読プログラム命令によって実装され得るということが理解されるであろう。
これらのコンピュータ可読プログラム命令は、コンピュータまたはその他のプログラム可能なデータ処理装置のプロセッサを介して実行される命令が、フローチャートもしくはブロック図またはその両方のブロックに指定される機能/動作を実施する手段を作り出すべく、コンピュータ、または他のプログラム可能なデータ処理装置のプロセッサに提供されてマシンを作り出すものであってよい。これらのコンピュータ可読プログラム命令は、命令が格納されたコンピュータ可読ストレージ媒体がフローチャートもしくはブロック図またはその両方のブロックに指定される機能/動作の態様を実施する命令を含んでいる製品を含むように、コンピュータ可読ストレージ媒体に格納され、コンピュータ、プログラム可能なデータ処理装置、もしくは他のデバイス、またはそれらの組合せに特定の方式で機能するように指示できるものであってもよい。
コンピュータ可読プログラム命令は、コンピュータ上、その他のプログラム可能な装置上、またはその他のデバイス上で実行される命令が、フローチャートもしくはブロック図またはその両方のブロックに指定される機能/動作を実施するように、コンピュータ実装プロセスを生成すべく、コンピュータ、その他のプログラム可能なデータ処理装置、またはその他のデバイスに読み込まれ、コンピュータ上、その他のプログラム可能な装置上、またはその他のデバイス上で一連の動作可能なステップを実行させるものであってもよい。
図内のフローチャートおよびブロック図は、本発明のさまざまな実施形態に従って、システム、方法、およびコンピュータ・プログラム製品の可能な実装のアーキテクチャ、機能、および動作を示す。これに関連して、フローチャートまたはブロック図内の各ブロックは、規定された論理機能を実装するための1つまたは複数の実行可能な命令を備える、命令のモジュール、セグメント、または部分を表してよい。一部の代替の実装では、ブロックに示された機能は、図に示された順序とは異なる順序で発生してよい。例えば、連続して示された2つのブロックは、実際には、含まれている機能に応じて、1つのステップとして実行されるか、同時に実行されるか、時間的に部分的または完全に重複する方法で実質的に同時に実行されるか、または場合によっては逆の順序で実行されてよい。ブロック図もしくはフローチャート図またはその両方の各ブロック、ならびにブロック図もしくはフローチャート図またはその両方に含まれるブロックの組合せは、規定された機能もしくは動作を実行するか、または専用ハードウェアとコンピュータ命令の組合せを実行する専用ハードウェアベースのシステムによって実装できるということにも注意されたい。
本発明のさまざまな実施形態の説明は、例示の目的で提示されているが、網羅的であることは意図されておらず、開示された実施形態に制限されない。本発明の範囲および思想を逸脱することなく多くの変更および変形が可能であることは、当業者にとって明らかである。本明細書で使用された用語は、実施形態の原理、実際の適用、または市場で見られる技術を超える技術的改良を最も良く説明するため、または他の当業者が本明細書で開示された実施形態を理解できるようにするために選択されている。

Claims (20)

  1. 失敗したユーザ・インターフェイス機能を解決するための方法であって、
    1つまたは複数のプロセッサによって、ローカル・デバイスのローカル・デバイス・ユーザ・インターフェイスに表示された1つまたは複数のユーザ選択可能要素で、第1の入力の大きさを有する第1のユーザ入力を検出することであって、前記第1のユーザ入力がユーザによる、前記検出することと、
    前記1つまたは複数のプロセッサによって、前記ローカル・デバイス・ユーザ・インターフェイスが前記第1のユーザ入力に応答しないということを決定することと、
    前記1つまたは複数のユーザ選択可能要素で、前記第1の入力の大きさより大きい第2の入力の大きさを有する第2のユーザ入力を検出することであって、前記第2のユーザ入力が前記ユーザによる、前記検出することと、
    前記1つまたは複数のプロセッサによって、前記ローカル・デバイス・ユーザ・インターフェイスが前記第2のユーザ入力に応答しないということを決定することと、
    前記1つまたは複数のプロセッサによって、ユーザ・インターフェイス・オフロード・プロンプトに対応する第1のデータを、前記ユーザに関連付けられたモバイル・デバイスに送信することであって、前記モバイル・デバイスが前記ローカル・デバイス・ユーザ・インターフェイスからの既定の近さの範囲内にある、前記送信することと、
    前記1つまたは複数のプロセッサによって、モバイル・デバイスの複数のユーザ入力に対応する第2のデータを前記モバイル・デバイスから受信することと
    を含む方法。
  2. 前記ローカル・デバイス・ユーザ・インターフェイスが前記第1のユーザ入力に応答しないということを決定することが、
    前記1つまたは複数のプロセッサによって、前記ローカル・デバイスが、前記1つまたは複数のユーザ選択可能要素に対応するコマンドを実行することに失敗したということを決定することをさらに含む、請求項1に記載の方法。
  3. 前記1つまたは複数のプロセッサによって、前記モバイル・デバイスのディスプレイ上にモバイル・デバイス・ユーザ・インターフェイスを生成することをさらに含み、前記モバイル・デバイス・ユーザ・インターフェイスが、前記1つまたは複数のユーザ選択可能要素に対応するモバイル・デバイスのユーザ選択可能要素を含む、請求項1に記載の方法。
  4. 前記ローカル・デバイス・ユーザ・インターフェイスが前記第2のユーザ入力に応答しないということを決定することに応答して、前記ユーザ・インターフェイス・オフロード・プロンプトが前記モバイル・デバイスに送信される、請求項1に記載の方法。
  5. 前記モバイル・デバイスの複数のユーザ入力のうちの少なくとも1つが、前記1つまたは複数のユーザ選択可能要素での前記第1のユーザ入力に対応する、請求項1に記載の方法。
  6. 前記ローカル・デバイス・ユーザ・インターフェイスが前記第2のユーザ入力に応答しないということを決定することが、1つまたは複数のセンサから指標データを受信することをさらに含み、前記指標データがユーザのいらだちに対応する、請求項1に記載の方法。
  7. 前記ローカル・デバイス・ユーザ・インターフェイスが前記第2のユーザ入力に応答しないということを決定することが、前記第2の入力の大きさが既定のしきい値だけ前記第1の入力の大きさより大きいということを決定することをさらに含む、請求項1に記載の方法。
  8. 失敗したユーザ・インターフェイス機能を解決するためのコンピュータ・プログラム製品であって、前記コンピュータ・プログラム製品が、
    1つまたは複数のコンピュータ可読ストレージ媒体と、前記1つまたは複数のコンピュータ可読ストレージ媒体に格納されたプログラム命令とを備え、前記プログラム命令が、
    ローカル・デバイス・ユーザ・インターフェイスに表示された1つまたは複数のユーザ選択可能要素で、第1の入力の大きさを有する第1のユーザ入力を検出するためのプログラム命令であって、前記第1のユーザ入力がユーザによる、前記プログラム命令と、
    1つまたは複数のプロセッサによって、前記ローカル・デバイス・ユーザ・インターフェイスが前記第1のユーザ入力に応答しないということを決定するためのプログラム命令と、
    前記1つまたは複数のユーザ選択可能要素で、前記第1の入力の大きさより大きい第2の入力の大きさを有する第2のユーザ入力を検出するためのプログラム命令であって、前記第2のユーザ入力が前記ユーザによる、前記プログラム命令と、
    前記1つまたは複数のプロセッサによって、前記ローカル・デバイス・ユーザ・インターフェイスが前記第2のユーザ入力に応答しないということを決定するためのプログラム命令と、
    前記1つまたは複数のプロセッサによって、ユーザ・インターフェイス・オフロード・プロンプトに対応する第1のデータを、前記ユーザに関連付けられたモバイル・デバイスに送信するためのプログラム命令であって、前記モバイル・デバイスが前記ローカル・デバイス・ユーザ・インターフェイスからの既定の近さの範囲内にある、前記プログラム命令と、
    前記1つまたは複数のプロセッサによって、モバイル・デバイスの複数のユーザ入力に対応する第2のデータを前記モバイル・デバイスから受信するためのプログラム命令と
    を含む、コンピュータ・プログラム製品。
  9. 前記ローカル・デバイス・ユーザ・インターフェイスが前記第1のユーザ入力に応答しないということを決定することが、
    前記1つまたは複数のプロセッサによって、前記1つまたは複数のプロセッサが、前記1つまたは複数のユーザ選択可能要素に対応するコマンドを実行することに失敗したということを決定することをさらに含む、請求項8に記載のコンピュータ・プログラム製品。
  10. 前記1つまたは複数のプロセッサによって、前記モバイル・デバイスのディスプレイ上にモバイル・デバイス・ユーザ・インターフェイスを生成することをさらに含み、前記モバイル・デバイス・ユーザ・インターフェイスが、前記1つまたは複数のユーザ選択可能要素に対応するモバイル・デバイスのユーザ選択可能要素を含む、請求項8に記載のコンピュータ・プログラム製品。
  11. 前記ローカル・デバイス・ユーザ・インターフェイスが前記第2のユーザ入力に応答しないということを決定することに応答して、前記ユーザ・インターフェイス・オフロード・プロンプトが前記モバイル・デバイスに送信される、請求項8に記載のコンピュータ・プログラム製品。
  12. 前記モバイル・デバイスの複数のユーザ入力のうちの少なくとも1つが、前記1つまたは複数のユーザ選択可能要素での前記第1のユーザ入力に対応する、請求項8に記載のコンピュータ・プログラム製品。
  13. 前記ローカル・デバイス・ユーザ・インターフェイスが前記第2のユーザ入力に応答しないということを決定することが、1つまたは複数のセンサから指標データを受信することをさらに含み、前記指標データがユーザのいらだちに対応する、請求項8に記載のコンピュータ・プログラム製品。
  14. 前記ローカル・デバイス・ユーザ・インターフェイスが前記第2のユーザ入力に応答しないということを決定することが、前記第2の入力の大きさが既定のしきい値だけ前記第1の入力の大きさより大きいということを決定することをさらに含む、請求項8に記載のコンピュータ・プログラム製品。
  15. ネットワーク内のコマンドを処理するためのコンピュータ・システムであって、前記コンピュータ・システムが、
    1つまたは複数のコンピュータ・プロセッサと、
    1つまたは複数のコンピュータ可読ストレージ媒体と、
    前記1つまたは複数のプロセッサのうちの少なくとも1つによって実行するために前記1つまたは複数のコンピュータ可読ストレージ媒体に格納されたプログラム命令と
    を備え、前記プログラム命令が、
    ローカル・デバイス・ユーザ・インターフェイスに表示された1つまたは複数のユーザ選択可能要素で、第1の入力の大きさを有する、ユーザによる第1のユーザ入力を検出するためのプログラム命令と、
    1つまたは複数のプロセッサによって、前記ローカル・デバイス・ユーザ・インターフェイスが前記第1のユーザ入力に応答しないということを決定するためのプログラム命令と、
    前記1つまたは複数のユーザ選択可能要素で、前記ユーザによる第2のユーザ入力を検出するためのプログラム命令であって、前記第2のユーザ入力が、前記第1の入力の大きさより大きい第2の入力の大きさを有する、前記プログラム命令と、
    前記1つまたは複数のプロセッサによって、前記ローカル・デバイス・ユーザ・インターフェイスが前記第2のユーザ入力に応答しないということを決定するためのプログラム命令と、
    前記1つまたは複数のプロセッサによって、ユーザ・インターフェイス・オフロード・プロンプトに対応する第1のデータを、前記ユーザに関連付けられたモバイル・デバイスに送信するためのプログラム命令であって、前記モバイル・デバイスが前記ローカル・デバイス・ユーザ・インターフェイスからの既定の近さの範囲内にある、前記プログラム命令と、
    前記1つまたは複数のプロセッサによって、モバイル・デバイスの複数のユーザ入力に対応する第2のデータを前記モバイル・デバイスから受信するためのプログラム命令と
    を含む、コンピュータ・システム。
  16. 前記ローカル・デバイス・ユーザ・インターフェイスが前記第1のユーザ入力に応答しないということを決定することが、
    前記1つまたは複数のプロセッサによって、前記1つまたは複数のプロセッサが、前記1つまたは複数のユーザ選択可能要素に対応するコマンドを実行することに失敗したということを決定することをさらに含む、請求項15に記載のコンピュータ・システム。
  17. 前記1つまたは複数のプロセッサによって、前記モバイル・デバイスのディスプレイ上にモバイル・デバイス・ユーザ・インターフェイスを生成することをさらに含み、前記モバイル・デバイス・ユーザ・インターフェイスが、前記1つまたは複数のユーザ選択可能要素に対応するモバイル・デバイスのユーザ選択可能要素を含む、請求項15に記載のコンピュータ・システム。
  18. 前記ローカル・デバイス・ユーザ・インターフェイスが前記第2のユーザ入力に応答しないということを決定することに応答して、前記ユーザ・インターフェイス・オフロード・プロンプトが前記モバイル・デバイスに送信される、請求項15に記載のコンピュータ・システム。
  19. 前記第2のデータを、前記ローカル・デバイス・ユーザ・インターフェイスを備えているローカル・デバイスに送信するためのプログラム命令をさらに備え、前記ローカル・デバイスがネットワークに接続される、請求項15に記載のコンピュータ・システム。
  20. 前記ローカル・デバイス・ユーザ・インターフェイスが前記第2のユーザ入力に応答しないということを決定することが、1つまたは複数のセンサから指標データを受信することをさらに含み、前記指標データがユーザのいらだちに対応する、請求項15に記載のコンピュータ・システム。
JP2023507617A 2020-08-17 2021-08-16 失敗したユーザ・インターフェイスの解決 Pending JP2023538832A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/994,737 US11269453B1 (en) 2020-08-17 2020-08-17 Failed user-interface resolution
US16/994,737 2020-08-17
PCT/CN2021/112775 WO2022037533A1 (en) 2020-08-17 2021-08-16 Failed user-interface resolution

Publications (1)

Publication Number Publication Date
JP2023538832A true JP2023538832A (ja) 2023-09-12

Family

ID=80224121

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023507617A Pending JP2023538832A (ja) 2020-08-17 2021-08-16 失敗したユーザ・インターフェイスの解決

Country Status (6)

Country Link
US (1) US11269453B1 (ja)
JP (1) JP2023538832A (ja)
CN (1) CN116261714A (ja)
DE (1) DE112021004323T5 (ja)
GB (1) GB2613730B (ja)
WO (1) WO2022037533A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11711259B2 (en) * 2021-02-12 2023-07-25 Zebra Technologies Corporation Method, system and apparatus for detecting device malfunctions
WO2023211849A1 (en) * 2022-04-29 2023-11-02 Lancer Corporation Methods and apparatus for alternative input or alternative feedback

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6971072B1 (en) * 1999-05-13 2005-11-29 International Business Machines Corporation Reactive user interface control based on environmental sensing
TW523666B (en) * 2001-03-30 2003-03-11 Silitek Corp Display data conversion device
US7836168B1 (en) * 2002-06-04 2010-11-16 Rockwell Automation Technologies, Inc. System and methodology providing flexible and distributed processing in an industrial controller environment
US8106856B2 (en) * 2006-09-06 2012-01-31 Apple Inc. Portable electronic device for photo management
US20080079757A1 (en) * 2006-09-29 2008-04-03 Hochmuth Roland M Display resolution matching or scaling for remotely coupled systems
DE102006057097B4 (de) * 2006-12-04 2012-10-11 Siemens Ag Anzeigevorrichtung zur Darstellung eines Anlagenzustands
JP5612807B2 (ja) * 2007-03-13 2014-10-22 セイコーエプソン株式会社 画像送信方式の決定方法、画像供給システム、画像供給装置、プログラム及びコンピュータに読取り可能な記録媒体
GB2442818B (en) * 2007-06-11 2008-11-05 Cvon Innovations Ltd Methodologies and systems for determining mobile device capabilities
CN101378434A (zh) * 2007-08-31 2009-03-04 鹏智科技(深圳)有限公司 图片显示装置及方法
US20090128504A1 (en) 2007-11-16 2009-05-21 Garey Alexander Smith Touch screen peripheral device
US7958387B2 (en) * 2008-05-30 2011-06-07 Spirent Communications, Inc. Realtime test result promulgation from network component test device
JP2011138039A (ja) * 2009-12-28 2011-07-14 Brother Industries Ltd 表示装置、表示制御方法、および表示制御プログラム
US20120075204A1 (en) * 2010-09-27 2012-03-29 Google Inc. Using a Touch-Sensitive Display of a Mobile Device with a Host Computer
WO2012052964A1 (en) * 2010-10-20 2012-04-26 Nokia Corporation Adaptive device behavior in response to user interaction
US20120287163A1 (en) * 2011-05-10 2012-11-15 Apple Inc. Scaling of Visual Content Based Upon User Proximity
US20120327099A1 (en) * 2011-06-24 2012-12-27 William John Vojak Dynamically adjusted display attributes based on audience proximity to display device
KR101802760B1 (ko) 2011-06-27 2017-12-28 엘지전자 주식회사 이동 단말기 및 그 제어방법
US9013510B2 (en) * 2011-07-29 2015-04-21 Google Inc. Systems and methods for rendering user interface elements in accordance with a device type
CN102938703A (zh) 2011-08-15 2013-02-20 联想(北京)有限公司 一种应用管理方法及设备
US20140267281A1 (en) 2013-03-13 2014-09-18 Ericom Software Ltd. Method for displaying a remote desktop on a portable touch screen device
EP4283605A3 (en) * 2013-11-08 2024-01-17 Siemens Healthcare Diagnostics Inc. Proximity aware content switching user interface
CN105745585B (zh) 2013-11-26 2018-05-08 西门子公司 卸载人机交互任务
US9746901B2 (en) * 2014-07-31 2017-08-29 Google Technology Holdings LLC User interface adaptation based on detected user location
US10416861B2 (en) 2016-04-06 2019-09-17 Blackberry Limited Method and system for detection and resolution of frustration with a device user interface
US10237740B2 (en) * 2016-10-27 2019-03-19 International Business Machines Corporation Smart management of mobile applications based on visual recognition
KR102448803B1 (ko) * 2018-02-14 2022-09-29 삼성전자주식회사 수중 상태에서 압력 센서를 이용하여 사용자 입력을 획득하는 전자 장치 및 상기 전자 장치를 제어하는 방법
US10580414B2 (en) * 2018-05-07 2020-03-03 Microsoft Technology Licensing, Llc Speaker recognition/location using neural network
CN108829320A (zh) 2018-06-21 2018-11-16 Oppo广东移动通信有限公司 交互方法、装置、存储介质、移动终端及交互系统
CN111135557B (zh) 2019-12-26 2024-01-12 三星电子(中国)研发中心 用于多屏的交互方法和装置
US11290576B2 (en) * 2019-12-27 2022-03-29 Snap Inc. Messaging system with circumstance configuration framework for hardware

Also Published As

Publication number Publication date
US11269453B1 (en) 2022-03-08
US20220050547A1 (en) 2022-02-17
CN116261714A (zh) 2023-06-13
GB2613730B (en) 2023-11-15
DE112021004323T5 (de) 2023-07-20
GB202303295D0 (en) 2023-04-19
GB2613730A (en) 2023-06-14
WO2022037533A1 (en) 2022-02-24

Similar Documents

Publication Publication Date Title
US11152100B2 (en) Health application user interfaces
US20230334522A1 (en) User interface for loyalty accounts and private label accounts
US9639174B2 (en) Mobile device display content based on shaking the device
US10438200B1 (en) Vending machine authorization and customization based on confidences of user identities
US20140122270A1 (en) Managing returns using electronic receipts
US10678876B1 (en) Computing system for presenting supplemental content in context
EP3726376A1 (en) Program orchestration method and electronic device
US20140081801A1 (en) User terminal device and network server apparatus for providing evaluation information and methods thereof
JP2023538832A (ja) 失敗したユーザ・インターフェイスの解決
EP2937831A1 (en) Method, device and system for identifying target terminals and method and device for monitoring terminals
KR102607791B1 (ko) 거래 이력 기반의 서비스 제공 방법 및 그 전자 장치
US10754518B1 (en) Techniques for providing customized user interface components in a push notification
CN115699002A (zh) 配置用于第二用户身份的账户
US20240202720A1 (en) Systems and methods for conducting remote user authentication
US20240171679A1 (en) Systems and methods for generating customized customer service menu
WO2020238915A1 (zh) 用户身份识别方法及装置、电子设备、存储介质
KR102362868B1 (ko) 사용자의 선호도에 따라 사용자에게 컨텐트들을 제공하는 방법 및 이를 위한 전자 장치
US11435896B1 (en) Secured operation with optional cancellation on touch-sensitive devices
US11657054B2 (en) Co-applicant candidate identification by way of edge graphs
US11829559B2 (en) Facilitating interactions on a mobile device interface based on a captured image
US11651404B2 (en) Virtual shopping assistant
US20230410962A1 (en) System and method for automatic display of contextually related data on multiple devices
US20230196450A1 (en) Recommending electronic products based on user specification
JP2008217722A (ja) 契約受付システム
JP2024088633A (ja) デジタル識別クレデンシャルユーザインタフェース

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230221

RD16 Notification of change of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7436

Effective date: 20230317

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240123