KR20180099813A - 사용자 인터페이스 - Google Patents

사용자 인터페이스 Download PDF

Info

Publication number
KR20180099813A
KR20180099813A KR1020187021854A KR20187021854A KR20180099813A KR 20180099813 A KR20180099813 A KR 20180099813A KR 1020187021854 A KR1020187021854 A KR 1020187021854A KR 20187021854 A KR20187021854 A KR 20187021854A KR 20180099813 A KR20180099813 A KR 20180099813A
Authority
KR
South Korea
Prior art keywords
data
user
stored
processor
machine
Prior art date
Application number
KR1020187021854A
Other languages
English (en)
Inventor
마리아 프란시스카 존스
알렉산더 존스
Original Assignee
마리아 프란시스카 존스
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 마리아 프란시스카 존스 filed Critical 마리아 프란시스카 존스
Publication of KR20180099813A publication Critical patent/KR20180099813A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0605Supply or demand aggregation
    • 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
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/954Navigation, e.g. using categorised browsing
    • G06F17/2235
    • G06F17/30873
    • 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/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
    • 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/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/134Hyperlinking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/405Establishing or using transaction specific rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0633Lists, e.g. purchase orders, compilation or processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0641Shopping interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • General Engineering & Computer Science (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Software Systems (AREA)
  • Development Economics (AREA)
  • Human Computer Interaction (AREA)
  • Marketing (AREA)
  • Databases & Information Systems (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Data Mining & Analysis (AREA)
  • Remote Sensing (AREA)
  • Human Resources & Organizations (AREA)
  • Operations Research (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Computer Security & Cryptography (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)
  • Telephone Function (AREA)

Abstract

머신에서 구현되는 사용자 인터페이스 방법은, 1인 이상 사용자의 집합에 단축키 데이터를 저장하는 단계로서, 상기 단축키 데이터는 1인 이상 사용자의 집합에 있어서 머신의 복수의 상태에 대한 단축키에 대해 복수의 식별자 세트를 포함하며, 단축키마다 저장된 각 식별자는 대응하는 저장된 머신 커맨드를 갖는 것인, 상기 단축키 데이터를 저장하는 단계와, 상기 사용자에 대한 머신의 현재 상태를 결정하는 단계와, 상기 사용자로부터의 입력을 수신하는 단계와, 상기 입력이 상기 단축키 데이터 중의 단축키에 대한 저장된 식별자와 매칭하는지 결정하는 단계와, 상기 매칭에 의존하여 상기 저장된 식별자에 대응하는 저장된 디바이스 커맨드를 실행하는 단계와, 상기 사용자 집합에 대한 저장된 이력 데이터를 업데이트하는 단계와, 상기 업데이트된 이력 데이터를 사용하여 상기 단축키 데이터를 업데이트하는 단계를 포함한다.

Description

사용자 인터페이스
본 발명은 사용자 인터페이스 방법 및 장치에 관한 것이며, 일 양태에 있어서 적어도 1인의 사용자로 하여금 입력을 행하게 하여 머신을 한 상태에서 다른 상태로 전환시키는 커맨드를 실행시킬 수 있는 사용자 인터페이스 방법 및 머신에 관한 것이다.
컴퓨터, 미디어 디바이스, 및 모바일 디바이스를 비롯한 전자 프로세싱 디바이스는 사람들의 생활의 거의 모든 면에서 널리 사용된다. 사용자가 이들 디바이스와 상호작용할 수 있는 용이성은 상당한 연구와 상업적 노력의 대상이다. 전자 머신의 사용자 인터페이스를 사용자에게 더 용이하게 만드는 것이 보다 중요하며, 매우 강력하고 유용한 장치라도 사용하기 어렵다면 사용자의 입장에서는 무용한 것일 수 있다.
예를 들어, 웹 브라우징(web browsing) 분야에서는, 웹 페이지에 액세스하기 위해 사용자가 HTTP 요청을 포함한 텍스트 문자를 입력하는 것이 때때로 필요하다. HTTP의 신택스가 다수의 사용자에게 직관적이지 못하다. 텍스트의 입력은 오류의 대상이 될 수 있으므로 사용자는 올바른 웹 페이지에 정확하게 액세스할 수 없는 불만을 겪을 수 있다. 이러한 문제는 예컨대 Bing(Microsoft Corporation의 상표)이 사용자가 입력한 문자에 대응하는 잠재적인 HTTP 어드레스를 검색할 수 있게 함으로써, 자동완성기능을 가진 텍스트 제안(predictive text suggestion)을 사용하여 부분적으로 해결되었다. 그러나 이 기능은 가능한 결과를 검색하는 서버에 문자가 전송되는 것을 필요로 한다. 이 검색은 입력된 문자를 사용하는 것과는 별개로 사용자가 찾고자 하는 것에 대한 어떤 컨텍스트로도 수행되지 않는다.
일 양태는 머신에서 구현되는 사용자 인터페이스 방법을 제공하며, 이 방법은, 적어도 1인의 사용자에 대한 단축키 데이터를 저장하는 단계로서, 상기 단축키 데이터는 적어도 1인의 사용자에 있어서 머신의 복수의 상태에 대한 단축키에 대해 복수의 식별자 세트를 포함하며, 단축키마다 저장된 각 식별자는 대응하는 저장된 머신 커맨드를 갖는 것인, 상기 단축키 데이터를 저장하는 단계와, 상기 사용자에 대한 머신의 현재 상태를 결정하는 단계와, 상기 사용자로부터의 입력을 수신하는 단계와, 상기 입력이 상기 단축키 데이터 중의 단축키에 대한 저장된 식별자와 매칭하는지 결정하는 단계와, 상기 매칭에 의존하여 상기 저장된 식별자에 대응하는 저장된 디바이스 커맨드를 실행하는 단계와, 상기 적어도 1인의 사용자에 대한 저장된 이력 데이터를 업데이트하는 단계와, 상기 업데이트된 이력 데이터를 사용하여 상기 단축키 데이터를 업데이트하는 단계를 포함한다.
본 발명의 또 다른 양태는 사용자 인터페이스를 제공하는 머신을 제공하며, 상기 머신은, 프로그램 코드를 저장한 프로그램 메모리와, 상기 프로그램 메모리에 저장된 프로그램 코드를 구현하는 프로세서를 포함하고, 상기 프로그램 코드는, 적어도 1인의 사용자에 대한 단축키 데이터를 저장하도록 상기 프로세서를 제어하는 코드로서, 상기 단축키 데이터는 적어도 1인의 사용자에 있어서 상기 머신의 복수의 상태에 대한 단축키에 대해 복수의 식별자 세트를 포함하며, 단축키마다 저장된 각 식별자는 대응하는 저장된 머신 커맨드를 갖는 것인, 상기 프로세서를 제어하는 코드와, 상기 사용자에 대한 머신의 현재 상태를 결정하도록 상기 프로세서를 제어하는 코드와, 상기 사용자로부터의 입력을 수신하도록 상기 프로세서를 제어하는 단계와, 상기 입력이 상기 단축키 데이터 중의 단축키에 대한 저장된 식별자와 매칭하는지 결정하도록 상기 프로세서를 제어하는 코드와, 상기 매칭에 의존하여 상기 저장된 식별자에 대응하는 저장된 디바이스 커맨드를 실행하도록 상기 프로세서를 제어하는 코드와, 상기 적어도 1인의 사용자에 대한 저장된 이력 데이터를 업데이트하도록 상기 프로세서를 제어하는 코드와, 상기 업데이트된 이력 데이터를 사용하여 상기 단축키 데이터를 업데이트하도록 상기 프로세서를 제어하는 코드를 포함한다.
도 1은 일 실시형태에 따른 머신인 사용자 디바이스를 도시하는 개략도이다.
도 2는 일 실시형태에 따른 프로세스를 도시하는 흐름도이다.
도 3은 일 실시형태에 따라 이력 데이터와 단축키 데이터를 원격의 서버와 동기화시키는 머신인 사용자 디바이스를 도시하는 개략도이다.
도 4는 일 실시형태에 따른 다중 사용자 머신인 서버를 도시하는 개략도이다.
도 5a와 도 5b는 일 실시형태에 따른 사용자 인터페이스 출력의 예시이다.
도 6은 일 실시형태에 따라 이력 데이터와 단축키 데이터를 원격의 서버와 동기화시키는 다중 사용자 머신인 서버를 도시하는 개략도이다.
도 7은 일 실시형태에서 사용하는 기본 컴퓨팅 디바이스의 개략도이다.
다음의 상세한 설명에서는, 본 명세서의 일부를 형성하고 발명의 요지가 실시될 수 있는 특정 실시형태들을 예시적으로 도시하는 첨부 도면을 참조한다. 이들 실시형태는 당업자가 이를 실시할 수 있도록 충분히 상세하게 설명되며, 다른 실시형태들도 이용될 수 있고, 발명의 요지의 범위를 벗어나지 않고서 구조적, 논리적 및 전기적 변화가 이루어질 수 있음이 이해되어야 한다. 이러한 발명의 요지의 실시형태들은, 자발적으로 본원의 범위를 임의의 단일 발명으로 또는 사실상 하나 이상이 개시되는 경우의 발명적 개념으로 제한하려는 의도 없이 여기에서 그저 편의상 "발명"이라는 용어로 개별적으로 그리고/또는 집합적으로 칭해질 수 있다.
그러므로, 이하의 설명은 한정된 의미로 해석되어서는 안 되며, 발명의 요지의 범위는 첨부하는 청구범위에 의해 정해진다.
이하의 실시형태에 있어서, 같은 구성요소에는 같은 참조 번호가 표기된다.
이하의 실시형태에서는, 데이터가 적어도 하나의 데이터베이스에 저장되는 것으로 설명된다. 데이터베이스라는 용어는, 관계형 데이터베이스(예컨대, Oracle 데이터베이스, mySQL 데이터베이스 등), 비관계형 데이터베이스(예컨대, NoSQL 데이터베이스 등), 인메모리 데이터베이스, 스프레드시트, CSV(Comma Separated Value) 파일, XML(eXtendible Markup Language) 파일, TXT(TeXT) 파일, 플랫 파일, 스프레드시트 파일, 및/또는 데이터 저장을 위한 기타 범용 또는 독점 포맷을 포함하나 이들에 한정되는 않는, 데이터 저장 및/또는 구성을 위한 모든 데이터 구조(및/또는 여러 데이터 구조의 조합)를 망라하는 것이 의도된다. 데이터베이스는 통상 하나 이상의 데이터 스토어에 저장된다. 따라서, 여기(예를 들어, 본원의 상세한 설명 및/또는 본원의 도면)에서 언급하는 각각의 데이터베이스는 하나 이상의 데이터 스토어에 저장되는 것으로 이해되어야 한다. "파일 시스템"은 데이터의 저장 및/또는 검색 방법(예컨대, FAT, NTFS, 광 디스크 등과 같은 디스크 파일 시스템, 플래시 파일 시스템, 테이프 파일 시스템, 데이터베이스 파일 시스템, 트랜잭션 파일 시스템, 네트워크 파일 시스템 등)을 제어할 수 있다. 단순화를 위해, 여기에서는 데이터베이스와 관련하여 본 개시내용을 설명한다. 그러나, 여기에 개시하는 시스템 및 기술은 파일 시스템으로도 또는 데이터베이스와 파일 시스템의 조합으로도 구현될 수 있다.
이하의 실시형태에 있어서, 데이터 스토어라는 용어는 임의의 컴퓨터 판독 가능한 저장 매체 및/또는 디바이스(또는 데이터 저장 매체 및/또는 디바이스의 집합)를 포함하는 것이 의도된다. 데이터 스토어의 예는, 광 디스크(예컨대, CD-ROM, DVD-ROM 등), 자기 디스크(예컨대, 하드 디스크, 플로피 디스크 등), 메모리 회로(예컨대, 솔리드 스테이트 드라이브, 랜덤 액세스 메모리(RAM) 등), 및/또는 등등을 포함하나 이들에 한정되지는 않는다. 데이터 스토어의 또 다른 예는, 원격으로 액세스 가능하며 필요에 따라 신속하게 프로비저닝될 수 있는 물리적 데이터 저장 디바이스의 집합(일반적으로 "클라우드" 저장이라고 칭해짐)을 포함하는 호스트형 저장 환경이다.
여기에서 설명하는 기능 또는 알고리즘은 일 실시형태에서는 하드웨어, 소프트웨어 또는 소프트웨어와 하드웨어의 조합으로 구현된다. 소프트웨어는 메모리 또는 다른 유형의 저장 디바이스와 같은 컴퓨터 판독 가능한 매체 상에 저장된 컴퓨터 실행 가능한 명령어를 포함한다. 또한, 설명하는 기능은 소프트웨어, 하드웨어, 펌웨어 또는 이들의 임의의 조합일 수 있는 모듈에 대응할 수도 있다. 원한다면 여러 기능들이 하나 이상의 모듈에서 수행되는데, 설명하는 실시형태들은 예시일 뿐이다. 소프트웨어는 퍼스널 컴퓨터, 서버, 라우터, 또는 네트워크 상호접속 디바이스를 비롯한 기타 데이터 프로세싱 디바이스 등의 시스템에서 동작하는, 디지털 신호 프로세서, ASIC, 마이크로프로세서 또는 다른 유형의 프로세서 상에서 실행된다.
일부 실시형태는 관련 제어 및 데이터 신호를 모듈을 통해 통신하는 2개 이상의 특정 상호접속된 하드웨어 모듈 또는 디바이스에서, 또는 ASIC(application-specific integrated circuit)의 부분으로서 기능을 구현한다. 따라서, 예시적인 프로세스 흐름은 소프트웨어, 펌웨어, 및 하드웨어 구현에 적용 가능하다.
일반화된 실시형태는 적어도 1인의 사용자에 대해 또는 다시 말해 1인 이상 사용자의 집합에 대해 저장된 단축키 데이터를 사용하여 사용자 인터페이스를 제공하는 머신 및 방법을 제공한다. 단축키 데이터는 1인 이상 사용자의 집합에 있어서 또는 1인 이상 사용자의 집합에 대한 복수의 상태 세트에 있어서 머신의 대응하는 복수의 상태에 대한 단축키에 대해 복수의 식별자 세트를 포함한다. 단축키마다 저장된 각 식별자는 대응하는 저장된 머신 커맨드를 갖는다. 사용자가 사용하는 머신 현재 상태가 결정되고, 사용자로부터 입력이 수신될 때, 그 입력이 단축키 데이터 중의 단축키에 대한 저장된 식별자와 매칭하는지 결정된다. 매칭하면, 저장된 식별자에 대응하는 저장된 디바이스 커맨드가 실행되고, 1인 이상 사용자의 집합에 대한 저장된 이력 데이터가 업데이트되며, 업데이트된 이력 데이터를 사용하여 단축키 데이터가 업데이트된다.
이에, 머신은 이력 데이터를 저장하여 업데이트된 단축키 데이터의 결정에 사용되는 특정 머신 상태에 대한 사용자 입력에 대해 학습하고, 1인 이상 사용자의 집합이 현재 머신 상태에서 입력하여 다음 머신 상태로 전환하기를 원한다는 커맨드에 대한 적절한 단축키를 저장할 수 있다.. 따라서, 단축키는 사용자 및 컨텍스트에 특유하다.
사용자 인터페이스 방법은 동일한 머신 상태를 사용하는, 예컨대 동일한 애플리케이션, 프로그램 또는 프로세스를 사용하는 사용자 집합에 대한 입력을 학습하는데 사용될 수 있다. 사용자 집합은 단일 사용자를 포함해 임의 수일 수 있다. 사용자 인터페이스 방법은 사무실 또는 사업체 등의 사용자들의 그룹에서 사용될 수 있다.
본 발명은 머신에 커맨드를 입력하기 위해 사용자 입력을 수신할 필요가 있는 모든 전자 머신에 적용 가능하다. 컴퓨터와 같은 프로그래머블 머신의 경우, 사용자 인터페이스는 키보드, 포인터 디바이스, 터치 스크린 입력, 오디오 또는 스피치 입력, 또는 제스처 입력과 같은 임의의 형태의 사용자 입력을 모니터링할 수 있다. 입력은 또한, 물체를 스캐닝 또는 촬영하여서 또는 네트워크를 통해 이미지 소스로부터 이미지를 다운로딩하여서 취득된 이미지를 포함할 수 있다. 입력이 이미지인 경우, 식별자에 대한 입력의 매칭은 입력 이미지를, 커맨드 또는 커맨드 시퀀스와 연관된 저장된 이미지에 매칭시키는 것을 포함할 수 있다. 매칭은 정확할 수 있고 또는 유사도 수준을 기초로 할 수도 있다.
사용자 인터페이스는 운영 체제가 운영하는 임의의 애플리케이션에 대한 입력을 또는 운영 체제 자체에 대한 입력을 모니터링할 수 있다는 점에서 소프트웨어 애그노스틱(software agnostic)일 수 있다. 따라서 머신은 사용자 또는 사용자들에게 멀티모드 인터페이스를 제공할 수 있다.
한 시스템이 사용자 입력으로부터 또는 다른 사용자 행동으로부터 사용자 행동에 대해 학습하는 경우, 그 시스템은 사용자가 다음 머신 상태로 전환하기 위해 현재 머신 상태에서 입력하려고 하는 적절한 커맨드를 저장하기 위한 단축키 데이터를 결정할 수 있다. 이 저장된 단축키 데이터는 동일한 사용자가 사용하는 동일한 머신 상태를 갖는 다른 머신으로 전송될 수 있어 단축키 데이터는 머신 사용을 더 용이하게 하는데 이용될 수 있다.
일 실시형태에 있어서, 사용자로부터의 입력이 저장된 식별자와 매칭하지 않으면, 그 입력이 커맨드인지 결정되고, 그래서 커맨드가 실행되면, 사용자에 대한 저장된 이력 데이터가 업데이트되며, 업데이트된 이력 데이터를 사용하는 단축키 데이터가 업데이트된다. 이 방식에 있어서, 사용자의 이전 입력 세트로부터 학습된 이력 데이터가 없는 초기 상태에서는, 사용자의 입력이 임의의 단축키 식별자와 매칭할 수 없고, 그래서 머신은 러닝 프로세스(learning process)를 시작하기 위해 이력 데이터를 업데이트할 수 있다. 사용자가 단축키 식별자가 아닌 입력을 입력할 때마다 이력 데이터를 업데이트하는 이 러닝 프로세스가 계속될 수 있다. 이력 데이터가 업데이트되고, 업데이트된 이력 데이터를 사용하여 사용자 집합에 대해 더 나은 제안 단축키를 작성할 수 있다.
단축키 식별자는 머신의 현재 상태에 대해 사용자 집합에 출력될 수도 출력되지 않을 수도 있다. 단축키 식별자는 예컨대 디스플레이 상에 시각적으로, 오디오 출력에 의해 청각적으로, 또는 진동 출력으로서 출력될 수 있다. 단축키 식별자의 출력은 단축키의 선택으로 커맨드를 입력함에 있어서 사용자 집합을 지원한다. 이에 사용자는 단축키를 기억할 필요가 없다. 그러나 사용자는 단축키 식별자의 출력이 현재 상태의 머신의 출력과 혼동되어 방해된다고 느낄 수도 있다. 예를 들어, 사용자는 머신의 현재 상태에 대한 디스플레이를 보는 동안에, 버튼 또는 아이콘으로서 선택 가능한 단축 식별자의 디스플레이가 시각적으로 혼란을 준다고 생각할 수도 있다.
단축키 식별자는 이력 데이터에 의존하는 순서로 출력될 수 있다. 이 경우 사용자는 더 자주 사용하는 단축키를 더 쉽게 선택할 수 있다. 예를 들어, 일 실시형태에 있어서, 단축키 식별자가 디스플레이되는지에 관계없이, 이력 데이터가 커맨드의 결정을 가능하게 하고, 그래서 사용자 집합이 다른 것들보다 더 자주 또는 보다 최근에 입력한 단축키는 보다 눈에 띄게 또는 리스트 또는 배열된 순서에서 가장 높은 위치에 디스플레이될 수 있다. 오디오 출력 실시형태에 있어서, 더 자주 사용되거나 보다 최근에 사용된 커맨드에 대한 단축키 식별자는 먼저 청각적으로 출력되어 사용자 집합이 단축키 식별자의 오디오 선택/입력을 더 빨리 하게 돕는다.
저장된 머신 커맨드는 단일 커맨드 또는 머신에 의해 순차적으로 실행되는 복수의 순차적 커맨드를 포함할 수 있다. 커맨드의 시퀀스의 저장은, 이력 데이터로부터 사용자에 의한 사용자 입력의 반복된 패턴을 학습함으로써 단축키로서 결정될 수 있다. 그런 다음 이 패턴은 단일 단축키에서 커맨드 시퀀스로서 저장될 수 있다.
일 실시형태에 있어서, 사용자 집합에 대한 저장된 단축키 데이터 및 저장된 이력 데이터는 그 사용자 집합을 포함한 복수의 사용자에 대한 원격 데이터베이스의 단축키 데이터 및 이력 데이터와 동기화될 수 있다. 따라서, 이 실시형태에 있어서, 원격 데이터베이스는 원격으로 프로세싱될 수 있도록 복수의 사용자에 대한 단축키 데이터 및 이력 데이터를 저장할 수 있다. 예를 들어, 일 실시형태에서, 동기화에 있어서 원격 데이터베이스로부터 수신된 이력 데이터는 사용자 집합의 선호도(preference)를 나타내는 사용자 선호도 데이터를 포함하고, 단축키 데이터는 사용자 선호도 데이터를 사용하여 업데이트된다. 사용자 선호도 데이터는 판매자 충성도 프로그램 및 판매자 트랜잭션 데이터와 같은 다수의 소스로부터의 사용자로부터 또는 사용자에 대해 수집된 데이터로부터 수집될 수 있다. 사용자 트랜잭션 행동에 대한 데이터는 사용자 선호도를 결정하기 위해 프로세싱될 수 있다.
머신은 단일 사용자 머신, 독립형 머신, 또는 서버와 같은 다중 사용자 머신(multiuser machine)일 수 있으며, 단축키 데이터는 머신의 단일의 사용자 집합 또는 복수의 사용자 집합에 대해 저장될 수 있다. 복수의 사용자 집합의 경우, 사용자 집합마다 1 세트씩 다수 세트의 이력 데이터 및 단축키 데이터가 저장되어야 한다. 일 실시형태에 있어서, 사용자에 대한 저장된 단축키 데이터 및 저장된 이력 데이터는 머신의 사용자를 포함한 복수의 사용자 집합에 대한 원격 데이터베이스의 단축키 데이터 및 이력 데이터와 동기화될 수 있다. 따라서, 이 실시형태에 있어서, 다중 사용자 머신은 벤더(vendor)나 판매자(merchant)의 고객들 또는 다수의 사업체와 같은 다수의 사용자 집합에 대한 데이터를 저장할 수 있고, 원격 데이터베이스는 원격에서 프로세싱될 수 있도록 복수의 사용자 세트에 대한(예컨대, 복수의 벤더 또는 사업체에 대한) 이력 데이터 및 단축키 데이터를 저장할 수 있다. 예를 들어, 일 실시형태에서, 동기화에 있어서 원격 데이터베이스로부터 수신된 이력 데이터는 사용자의 선호도를 나타내는 사용자 선호도 데이터를 포함하고, 단축키 데이터는 사용자 선호도 데이터를 사용하여 업데이트된다. 사용자 선호도 데이터는 판매자 충성도 프로그램 및 판매자 트랜잭션 데이터와 같은 다수의 소스로부터의 사용자 집합으로부터 또는 사용자 집합에 대해 수집된 데이터로부터 수집될 수 있다. 사용자 트랜잭션 행동에 대한 데이터는 사용자 선호도를 결정하기 위해 프로세싱될 수 있다. 실시형태는 또한 돈이나 통화와 같은 금융 상품의 관리를 포함한다. 사용자의 결제 또는 지출 선호도 또는 습관은, 사용자가 결제를 할 수 있게 하는 것과 같은, 다음 머신 상태로의 시스템 상태에 대한 단축키를 제공하도록 학습될 수 있다.
일 실시형태에 있어서, 사용자로부터의 입력은 디스플레이된 텍스트 입력 필드에 하나 이상의 텍스트 문자를 포함할 수 있고, 단축키에 대한 저장된 식별자는 복수의 텍스트 문자를 포함할 수 있고, 대응하는 커맨드는 복수의 텍스트 문자를 포함할 수 있다. 입력이 단축키 데이터 중의 단축키에 대한 저장된 식별자와 매칭하는지를 결정하기 위해, 입력된 하나 이상의 텍스트 문자는 저장된 식별자의 복수의 텍스트 문자 중 하나 이상과 매칭된다.
본 발명의 이 실시형태는 본 발명이 사용자 인터페이스의 텍스트 필드에 적용되는 것을 가능하게 한다. 사용자가 텍스트 필드에 문자를 입력할 때, 그 문자는, 머신의 현재 상태 및 사용자의 개인 입력 이력에 기초하여 커맨드에 대한 제안된 단축키를 출력하기 위해 그 커맨드에 대한 텍스트 형태의 단축키 식별자와 비교된다. 예를 들어, 사용자 인터페이스가 웹 페이지를 디스플레이할 때에, 사용자의 이력은 사용자가 해당 웹 페이지에서 이전에 특정 입력을 했음을 나타낼 것이며, 따라서 단축키 데이터는 사용자가 입력할 가능성이 더 높은 입력에 대한 단축키 식별자를 가진 그런 입력을 반영한다.
일 실시형태에 있어서, 사용자 인터페이스는 동일한 출원인 및 발명자들에 의해 발명의 명칭이 "전자 트랙재션 방법 및 장치(AN ELECTRONIC TRANSACTION METHOD AND APPARATUS)"인, 본 출원과 동일자로 출원된 동시 계류중인 출원 번호 제-호(대리인 참조 번호 11043PUSA)에 개시된 전자 트랜잭션 방법에 사용될 수 있으며, 그 내용은 전체가 여기에 포함된다.
이하, 도면을 참조하여 구체적인 실시형태들에 대해 설명할 것이다.
도 1과 도 2를 참조하여 제1 실시형태를 설명할 것이다. 도 1은 어떤 네트워크에도 접속되지 않은 1인 이상 사용자의 집합이 사용하는 디바이스(100)(독립형 머신)를 도시한다. 사용자 집합은 단일 사용자를 포함해 임의 수일 수 있다. 사용자 인터페이스 방법은 사무실 또는 사업체 등의 사용자 집합에 의해, 동일한 머신 상태를 사용하여, 예컨대 사용자 집합 중의 한 멤버가 사용자 집합 내의 다른 멤버와 동일한 방식으로 머신 상태에서 커맨드를 입력하기를 원할 가능성이 있는 동일한 애플리케이션, 프로그램 또는 프로세스를 사용하여, 이용될 수 있다.
디바이스(100)는 퍼스널 컴퓨터, 랩탑, 태블릿 컴퓨터, 개인용 오거나이저, 모바일 디바이스, 스마트 폰, 이동 전화, 비디오 플레이어, 텔레비전, 오디오 플레이어, 멀티미디어 디바이스, 개인용 디지털 어시스턴트 등과 같은 임의 유형의 컴퓨팅 또는 프로세싱 머신을 포함할 수 있다.
프로세서(20)는 프로그램 코드 스토어(70)로부터 프로그램 코드(21)를 로드하여 작업용 휘발성 메모리(30)를 이용해 프로그램 코드(21)를 실행하기 위해 제공된다. 프로그램 코드(21)는 본 발명의 일 실시형태의 기능을 실행한다. 다른 프로그램 코드는 운영 체제의 형태로 로딩될 수 있고, 사용자가, 직접 입력하거나, 일 실시형태에 따라 커맨드에 대한 단축키를 입력함으로써 입력하는 커맨드를 수신하는 애플케이션일 수 있다.
사용자 인터페이스(5)는 입력 디바이스(10)와 출력 디바이스(40)를 포함한다. 입력 디바이스는 키보드, 터치 스크린, 포인터 디바이스(마우스, 트랙볼, 트랙 패드 또는 펜 디바이스 등), 사용자로부터의 사운드 또는 말을 인식할 수 있는 오디오 인식 하드웨어 및/또는 소프트웨어, 제스처 인식 입력 하드웨어 및/또는 소프트웨어 등과 같은, 사용자 입력을 수신하기 위한 임의의 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합을 포함할 수 있다. 출력 디바이스는 사용자에게 단축키 식별자를 포함한 정보를 출력하기 위한, 디스플레이 화면 또는 오디오 스피커와 같은 임의의 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합을 포함할 수 있다. 따라서, 사용자 인터페이스(5)는 프로세서(20)로부터의 사용자로의 출력 및 사용자로부터 프로세서(20)로의 입력을 제공한다.
디바이스(100)는 또한 단축키 데이터베이스(61)에 단축키를 저장하고 이력 데이터베이스(62)에 이력 데이터를 저장하는 데이터 스토어(60)도 제공된다. 이 실시형태에서는 단축키 데이터와 이력 데이터가 데이터베이스에 저장되는 것으로 설명되지만, 이들 데이터는 임의의 편리한 형태 또는 데이터 구조로 저장될 수도 있다.
1인 이상 사용자의 집합에 대한 이력 데이터는 1인 이상 사용자의 집합이 사용하는 머신의 각 상태 세트마다 1인 이상 사용자의 집합에 대한 데이터 세트를 포함한다. 머신의 각 상태마다, 직접 입력되거나 (예를 들어, 인터페이스에서 하이퍼링크와 같은 디스플레이된 선택 가능한 옵션을 클릭하는)사용자 선택의 결과로서 입력되는 커맨드를 등록하기 위해 하나 이상 사용자 입력 커맨드의 세트가 저장된다. 이런 식으로, 1인 이상 사용자의 각 집합마다 이력 데이터가 등록될 수 있고, 그리고 1인 이상 사용자의 집합이 사용하는 각 머신 상태마다 입력 커맨드의세트가 등록될 수 있다.
일 실시형태에 있어서, 이력 데이터는 사용자의 선호도를 나타내는 사용자 선호도 데이터도 포함할 수 있다. 사용자 선호도 데이터는, 사용자 입력을 분석하고, 사용자가 입력한 사용자의 선호도를 나타낼 수 있는 다른 사용자 데이터를 프로세싱함으로써 취득될 수 있다. 선호도 데이터는 등록된 사용자 입력 이력 데이터와 함께, 단축키 데이터의 업데이트를 결정하는데 사용될 수 있다.
단축키 데이터는, 머신 상태마다, 단축키 식별자와, 머신에 의해 실행되는 하나 이상의 커맨드를 저장한다. 복수의 커맨드가 존재하면, 이들 커맨드는 순차적으로 실행되어야 한다. 단축키 식별자는 사용자가 단축키를 간단하게 선택할 수 있는 태그, 예컨대 1, 2, 3, 4, … 또는 A, B, C, …를 포함할 수 있다. 이 태그는 단축키에 자동 지정될 수도 또는 사용자가 태그를 선택할 수도 있다. 태그는 사용자가 어떤 형태의 텍스트 문자열을 타이핑한다기보다는 태그, 예컨대 2 또는 D를 입력함으로써 간단히 입력을 하게 할 수 있다. 단축키는 또한 단축키 식별자가 예컨대 아이콘, 이미지, 버튼 등으로서 선택을 위해 디스플레이될 때에 사용자에게 디스플레이할 정보도 포함할 수 있다. 이 정보는 단축키로서 선택에 이용할 수 있는 커맨드를 식별할 때에 사용자를 지원할 수 있다.
대안으로, 단축키 식별자는 사용자에 의한 입력으로서 입력된 텍스트 커맨드 문자열, 예컨대 웹 페이지를 브라우저에 로딩하기 위한 http 입력 커맨드, 파일 시스템에서 애플리케이션에 로딩되거나 검색되는 파일명, 또는 운영 체제에서 실행되는 애플리케이션명에 대응하는 텍스트 문자열을 포함할 수 있다. 이 예에서는, 이전에 타이핑된 커맨드에 기초하여 사용자가 타이핑하려고 시도할 가능성이 있는 커맨드를 제안하기 위해 사용자가 타이핑한 대로 텍스트 문자를 매칭시킴으로써 사용자 입력의 매칭이 달성될 수 있다. 처음부터 사용자가 선택할 수 있는 다수의 가능한 매칭이 식별될 수 있도록 사용자 입력 텍스트는 저장된 단축키 식별자 텍스트와 부분 매칭 방식으로 매칭될 수도 있고, 이들은 사용자가 더 많은 문자를 타이핑할 때 일부 초기 단축키 식별자가 더 이상 매칭하지 않도록 감소되고 사용자의 옵션에 따라 제거된다. 이것은 자동완성기능 텍스트의 형태이지만, 사용자 및 머신의 현재 상태, 예컨대 사용자가 사용하는 브라우저에 의해 디스플레이되는 웹 페이지, 사용자가 열어본 문서, 운영 체제 내의 문서에 대해 열린 검색 창, 검색 엔진 등에 특유하다는 점에서 사용자 및 컨텍스트 특유적이다.
본 발명의 실시형태에 있어서, 머신 상태는 머신의 사용자에 의해 현재 인스턴스화된 임의의 동작 상태를 포함할 수 있다. 프로그래밍된 디바이스에서, 상태는 웹 브라우저 애플리케이션의 웹 페이지, 워드 프로세서 애플리케이션의 문서, 스프레드시트 애플리케이션의 워크시트, 이메일 애플리케이션의 이메일, 운영 체제 내비게이션 및 검색 기능, 또는 임의의 검색(search) 및 검색(retrieval) 애플리케이션과 같은 컴퓨터 프로그램의 동작 상태를 포함할 수 있다.
이제, 도 2의 흐름도를 참조하여 일 실시형태의 동작에 대해 설명한다.
단계 S10에서 머신의 현재 상태, 예컨대 브라우저에서 열린 현재 웹 페이지, 워드 프로세서에서 열린 현재 문서, 이메일 애플리케이션에서 열린 현재 이메일 등이 결정된다. 현재 머신 상태에 기초하여, 프로세스는 단계 S11에서 이용 가능한 임의의 저장된 단축키의 존재 여부를 결정한다. 일 실시형태에 있어서, 이용 가능한 단축키는 최근에 생성되었거나 사용된 단축키만 포함할 수 있다. 오랫동안 사용되지 않은 단축키는 사용자와 관련이 없을 것이며, 따라서 삭제되어 오래된 단축키를 사용자에게 제시하는 것을 피할 수 있다. 단계 S11에서 이용 가능하다고 결정된 가용 단축키가 있다면, 단계 S16에서, 프로세스는 선택을 위해 이용자에게 단축키를 출력할지 결정한다. 사용자가 단축키의 출력을 활성화 또는 비활성화하지 않은 경우(예를 들어, 이용 가능한 단축키에 익숙해져서 예컨대 디스플레이되어 출력될 필요가 없거나 원하지 않기 때문에), 프로세스는 단계 S17로 진행하여 사용자로부터의 입력을 대기한다. 단계 S16에서 단축키의 출력이 결정되면, 프로세스는 단계 S15로 진행하여 사용자에게 단축키 옵션을 출력하는데, 예컨대, 단축키 식별자가 있는 단축키 아이콘, 버튼, 또는 이미지를, 선택적으로 사용자의 단축키 선택을 지원하기 위한 일부 단축키 정보와 함께 디스플레이한다. 그런 다음, 프로세스는 단계 S17로 진행하여 사용자로부터의 입력을 대기한다.
단계 S11에서 이용 가능한 최신의 단축키가 없다고 결정되면, 단계 S12의 사용자에 대한 이력 데이터 검색, 단계 S13의 이력 데이터를 사용한 현재 머신 상태에 대한 사용자 단축키를 결정, 및 단계 S14의 단축키 데이터 저장을 포함하는 단축키 결정 프로세스(S30)가 수행된다. 이어서 단계 S15에서 단축키를 사용자에게 출력하는데, 예컨대 단축키 식별자가 있는 단축키 아이콘, 버튼, 또는 이미지를, 선택적으로 사용자의 단축키 선택을 지원하기 위한 일부 단축키 정보와 함께 디스플레이한다. 그런 다음, 프로세스는 단계 S17로 진행하여 사용자로부터의 입력을 대기한다.
단계 S17에서 사용자로부터의 입력이 수신되면, 사용자로부터의 입력은 단계 S18에서 현재 상태에 대한 단축키를 룩업하여 머신에 의해 실행되는 하나 이상의 커맨드를 결정하는데 사용된다. 사용자로부터의 입력은 예컨대 텍스트 입력 또는 음성 입력에 의한, 단축키 옵션의 선택의 단축키 식별자의 입력일 수 있고, 이에 따라 그 선택은 현재 머신 상태에 대한 단축키 식별자와의 비교를 위해 사용자 입력으로 변환된다.
단계 S19에서, 사용자로부터의 입력이 단축키와 매칭하는지 여부가 결정된다. 1인 이상 사용자의 집합이 이전에 현재 머신 상태에서 입력을 하지 않아서 단축키의 형성에 사용하기 위한 이력 데이터에 입력이 없다면, 단계 S23에서 프로세스는 입력이 커맨드 입력인지, 머신을 또 다른 상태로 전환시키지 않는 다른 입력 필드의, 문서에의 텍스트의 입력과 같은, 단지 기타 형태의 입력인지를 결정한다. 예를 들어, 웹 형태에서는, 데이터가 서버로 전송되지 않고 입력될 수 있고, 따라서 입력된 텍스트 데이터는 커맨드가 아니다. 데이터는 서버로 전송될 때, 보통 웹 페이지가 업데이트될 것이기 때문에 커맨드이다. 단계 S23에서 사용자 입력이 커맨드가 아니라고 결정되면, 프로세스는 단계 S17로 복귀하여 사용자 입력을 대기한다.
단계 S23에서 커맨드가 입력된 것으로 결정되면, 프로세스는 단계 S24로 이동하여 머신을 다음 상태로 전환시킨다. 이어서 단계 S21에서, 이전 머신 상태에 대한 이력 데이터는 다음 상태로 전환시키는 커맨드로 업데이트된다. 그런 다음, 단계 S22에서, 업데이트된 이력 데이터는 업데이트된 단축키를 생성하는데 사용되며, 프로세스는 단계 S10로 복귀하여 현재 머신 상태를 결정한다.
단계 S19에서, 입력이 단축키와 매칭한다고 결정되면, 단계 S20에서, 단축키에 대한 커맨드가 실행되어 머신을 다음 상태로 전환시킨다. 이어서 단계 S21에서, 이전 머신 상태에 대한 이력 데이터는 다음 상태로 전환시키는 단축키의 선택으로 업데이트된다. 단계 S22에서, 업데이트된 이력 데이터는 업데이트된 단축키를 생성하는데 사용되며, 프로세스는 단계 S10로 복귀하여 현재 머신 상태를 결정한다.
이력 데이터의 업데이트에 있어서, 사용자가 새로운 커맨드를 입력하면, 새로운 단축키가 생성될 수 있다. 사용자가 이전에 생성된 단축키를 선택하면, 사용자의 단축키의 선택은 단축키의 관련성이 높아질 수 있도록 데이터에 등록될 수 있으며, 단축키는 오래된 것이 아니라 최근의 것으로 표시된다. 이전에 생성된 단축키의 선택은 1인 이상 사용자의 집합에 출력하기 위한 단축키를 순위 지정하거나 순서를 지정하는데 사용될 수 있는데, 관련성이 가장 높은 단축키가 출력되고, 관련성에 따라, 즉 선택 빈도에 따라 그리고 최근에 선택되었는지에 따라 순서 지정된다.
도 2에는 이용 가능한 최신 단축키가 없을 때마다 단축키 결정 프로세스(S30)가 수행되는 것으로 도시되지만, 일 실시형태에 있어서, 단축키 결정 프로세스(S30)의 단계들은 각 머신 상태마다 이력 데이터의 프로세싱에 의한 별도의 또는 '오프라인' 프로세스로 1인 이상 사용자의 집합에 있어서 각 머신 상태마다 수행될 수 있다. 이력 데이터가 사용자 선호도 데이터를 포함하는 경우, 사용자 집합 중의 임의의 사용자가 머신 상태를 전환시키는 입력을 하지 않았더라도, 일 실시형태에 있어서, 예컨대 머신을 이용한 사용자 행동으로부터 또는 사용자 파라미터로부터 획득되는 사용자 선호도 데이터에만 기초하여 하나 이상의 단축키가 결정될 수 있다
도 3은 1인 이상 사용자의 복수의 집합에 대한 원격 데이터베이스의 단축키 및 이력 데이터가 제공되는 본 발명의 또 다른 실시형태를 도시한다.
이 실시형태에 있어서, 사용자 디바이스(1)는 도 1을 참조하여 도시하고 설명한 구성요소들을 포함한다. 사용자 디바이스(1)는 도 2의 흐름도를 참조하여 설명한 것과 동일한 방식으로 동작한다. 또한, 사용자 디바이스(1)는 인터넷(80)과 같은 네트워크를 통해 사용자 디바이스(1)를 원격 서버 시스템(90)에 접속시키는 네트워크 인터페이스(50)를 포함한다. 서버 시스템(90)은 글로벌 단축키 데이터베이스(96) 및 글로벌 이력 데이터베이스(97)가 저장된 데이터 스토어(95)에 접속되거나 그 데이터 스토어가 제공된다.
글로벌 단축키 데이터베이스(96)는 사용자 디바이스(1)의 1인 이상 사용자의집합 및 다른 사용자 디바이스의 복수의 다른 사용자 집합에 대한 단축키를 저장한다. 마찬가지로, 글로벌 이력 데이터베이스(97)는 사용자 디바이스(1)의 사용자 집합 및 다른 사용자 디바이스의 복수의 다른 사용자 집합에 대한 이력을 저장한다. 데이터 스토어(95)에 저장된 데이터는 사용자 디바이스 내의 데이터 스토어(60)에 저장된 데이터와 동기화될 수 있다. 이런 식으로, 사용자 선호도 데이터가 이력 데이터에 포함되는 실시형태에서, 데이터 스토어(95)에 저장된 단축키 및 이력은 사용자 선호도를 반영할 수 있고 사용자 디바이스(1) 상의 데이터 스토어(60)로 전송될 수 있다.
도 4는 일 실시형태에 따른 다중 사용자 머신인 서버를 포함하는 또 다른 실시형태를 도시한다.
이 실시형태에서, 서버 시스템(90)은 인터넷(80)과 같은 네트워크를 통한 액세스를, 각각의 웹 브라우저(2)를 작동시키는 사용자 디바이스(1)에 제공하는 웹 서버(92)를 포함한다. 서버 시스템(90)은 또한 애플리케이션 서버(91)를 실행하고, 글로벌 단축키 데이터베이스(96) 및 글로벌 이력 데이터베이스(97)를 저장하는 데이터 스토어(95)에 액세스한다.
이 실시형태에서, 서버 시스템(90)은, 글로벌 단축키 데이터베이스(96)에 서버 시스템(90)의 상태를 포함하는 머신 상태에 대한 사용자 특유의 데이터 세트에 액세스함으로써 복수의 사용자의 각 사용자가 웹 서버(92)에 액세스하는 도 2의 흐름도에 따라 동작한다.
도 5a와 도 5b는 일 실시형태에 따른 도 4의 서버 시스템에 대한 사용자 인터페이스 출력을 예시한다. 이 실시형태에 있어서, 웹 서버(92)는 각 사용자 디바이스(1)의 브라우저(2)에 렌더딩되는 웹 페이지를서빙한다. 이에, 사용자 인터페이스는 헤더 영역(401)에 URL(universal resource locator) 텍스트 입력 필드(402)를 포함하는 디스플레이된 웹 페이지(400)를 포함한다. 도 5a에 디스플레이된 웹 페이지는 "Super web searcher"라고 불리는 검색 엔진 웹 페이지를 포함하고, 텍스트 검색 입력 필드(404)는 사용자로 하여금 웹 검색을 착수하는 커맨드의 일부로서 전송할 검색 문자열로서 텍스트 문자열을 입력하게 하도록 제공된다. 이 실시형태에 있어서, 사용자는 URL 텍스트 입력 필드(402) 또는 텍스트 검색 입력 필드(404) 중 어느 하나에 텍스트 문자열 "http://spee"를 입력하였다(도 5a에는 문자열이 양쪽 필드에 표시되지만, 실제로 사용자는 텍스트 필드(402 및 404) 중 하나에 텍스트를 입력할 것이다). 사용자 입력 텍스트의 결과로서, 사용자 입력이 단축키에 대한 단축키 식별자에 매칭되고, 단축키 아이콘, 윈도우, 드롭다운 리스트, 버튼 또는 이미지(403)가 디스플레이된다. 디스플레이되는 단축키(403)는,
단축키 식별자 커맨드
1 Speedy Shop 웹 페이지에 대한 URL
2 Speedway track 웹 페이지에 대한 URL
3 Speed Savers 웹 페이지에 대한 URL
를 포함한다.
이 실시형태에서, 이 웹 페이지(머신 상태) 상에서, 사용자는 텍스트 입력을 포함하는 사용자 입력만을 하였으므로, 이전에 입력되어 이력에 저장된 텍스트 문자열의 처음 문자를 입력하는 것으로 단축키가 선택될 수 있다.
단축키(403)는 사용자가 단축키를 사용하여 이용 가능한 커맨드 입력 옵션을 식별하는 것을 지원하기 위해 단축키(403)가 선택되면 입력될 커맨드에 대한 이미지 또는 정보를 디스플레이할 수 있다. 이 실시형태에 있어서의 식별자는 짧은 라벨 또는 태그를 포함하여, 포인터 디바이스, 제스처 또는 터치 스크린을 사용하여 단축키(403)의 디스플레이된 위치를 선택하는 것, 키보드를 사용하여 1, 2 또는 3을 입력하는 것, 또는 스피치 인식을 사용하여 입력으로서 1, 2 또는 3을 말하는 것 중 어느 하나로 단축키의 선택이 이루어질 수 있다.
도 5b는 도 5a의 단축키 태그 1의 사용을 선택한 결과로서 디스플레이된 웹 페이지(400a)를 도시한다.
이 실시형태에서, 디스플레이되는 웹 페이지(400a)는 전기 제품의 벤더 또는 판매자인 "Speedy Shop"에 대한 것이다. 웹 페이지는 카메라, 랩톱, 텔레비전 및 라우드 스피커 등의 다양한 상품 유형마다 웹 페이지를 열 수 있는 기존의 하이퍼링크를 디스플레이한다. 헤더(401)에는 URL 텍스트 필드(402)와 함께 단축키(403a)가 제공된다. 이 실시형태에서, 단축키(403a)는 헤더 영역(401)에 디스플레이되어 디스플레이 영역의 나머지를 여유롭게 남겨두고 단축키가 웹 페이지 정보와 오버랩하는 것을 피한다.
디스플레이되는 단축키(403a)는,
단축키 식별자 커맨드
1 랩탑 웹 페이지로의 URL 링크
2 사용자가 바로 사용자의 장바구니 안에 있는 특정 카메라에 대한 벤더의 체크아웃 단계로 갈 수 있는 URL 및 순차적 커맨드
3 스피커 웹 페이지로의 URL 링크
를 포함한다.
따라서, 이 실시형태에서는 단축키가 사용자에 의한 임의의 입력 텍스트와는 별도로 태그에 의해 식별되는 것을 확인할 수 있다. 이 머신 상태에서 사용자가 단축키에 저장된 커맨드의 선택을 이전에 하였고, 그래서 태그를 선택하는 것으로 단축키를 간단히 선택할 수 있다.
도 6은 일 실시형태에 따라 이력 데이터와 단축키 데이터를 원격의 서버와 동기화시키는 다중 사용자 머신인 서버를 도시한다. 이 실시형태에 있어서, 각 벤더 시스템(90A 및 90B)은 도 4를 참조하여 설명한 서버 시스템(90)을 포함한다. 각 벤더 서버(90A 및 90B)는 실질적으로, 각 사용자가 각각의 사용자 디바이스(1)의 웹 브라우저(2)를 사용하여 인터넷(80)과 같은 네트워크를 통해 각각의 벤더 서버(90A 또는 90B)의 웹 서버(92A 또는 92B)에 액세스하는 도 2의 흐름도에서 설명한 바와 같이 동작한다. 각 벤더 서버 시스템(90A 및 90B)은 애플리케이션 서버(91A 및 91B), 각각의 벤더 단축키 데이터베이스(96A 및 96B) 및 각각의 벤더 이력 데이터베이스(97A 및 97B)를 저장하는 데이터 스토어(95A 및 95B)를 포함한다. 이 실시형태에서, 데이터베이스(96A, 96B, 97A 및 97B)는 벤더의 웹 사이트의 복수의 사용자에 대한 데이터를 저장한다.
인터넷(80)을 통해 벤더 서버 시스템(90A 및 90B)에 써드파티 프로바이더 서버 시스템(190)이 접속된다. 써드파티 프로바이더 서버 시스템(190)은 글로벌 단축키 데이터베이스(196)와 글로벌 이력 데이터베이스(197)에 액세스하는 애플리케이션 서버(191)를 포함한다. 글로벌 데이터베이스(196 및 197)은 복수의 벤더 서버 시스템(90A 및 90B)의 복수의 사용자에 대한 데이터를 저장한다. 이에, 도 1의 복수의 사용자 디바이스(1)에 대한 데이터를 보유하는, 도 3의 실시형태의 데이터 스토어(95)와 유사한 방식으로, 이 실시형태에 있어서, 데이터베이스(196 및 197)는 복수의 벤더 서버 시스템(90A 및 90B)의 사용자 집합에 대한 데이터를 보유한다.
글로벌 단축키 데이터베이스(196)는 벤더 서버 시스템(90A 및 90B)을 사용하는 사용자 디바이스(1)의 사용자 및 다른 벤더 서버 시스템을 사용하는 다른 사용자 디바이스의 복수의 다른 사용자에 대한 단축키를 저장한다. 마찬가지로, 글로벌 이력 데이터베이스(197)는 벤더 서버 시스템(90A 및 90B)을 사용하는 사용자 디바이스(1)의 사용자 및 다른 벤더 서버 시스템을 사용하는 다른 사용자 디바이스의 복수의 다른 사용자에 대한 이력을 저장한다. 데이터베이스(196 및 197)에 저장된 데이터는 벤더 서버 시스템(90A 및 90B) 내의 데이터 스토어(95A 및 95B)에 저장된 데이터와 동기화될 수 있다. 이런 식으로, 사용자 선호도 데이터가 이력 데이터에 포함되는 실시형태에서, 데이터베이스(196 및 197)에 저장된 단축키 및 이력은 다수의 벤더 및 다른 소스로부터 결정된 사용자 선호도를 반영할 수 있고, 벤더 서버 시스템(90A 및 90B) 상의 데이터 스토어(95A 및 95B)로 전송될 수 있다. 이에, 벤더는 벤더 서버 시스템을 사용하는 사용자에 의해 머신 상태 전환에 등록된 이력 데이터를 포함할 수 있는 다수의 벤더 데이터로부터 결정될 수 있는 사용자 선호도 데이터를 공유할 수 있다.
웹 서버에 의해 서빙되는 웹 페이지를 포함하는 머신 상태를 참조하여 실시형태들을 설명하였지만, 머신 상태는 사용자가 다음 머신 상태로 전환시키도록 입력을 할 수 있는 프로세싱 머신에서 구현되는 임의의 프로세스 단계를 포함할 수 있다. 예를 들어, 머신 상태는 문서, 스프레드시트, 이메일, 운영 체제 내비게이션 또는 입력, 검색용(searching) 및 검색 소프트웨어(retrieval software)와 같은 임의의 소프트웨어 애플리케이션에서의 프로세싱의 스테이지에 의해 표현될 수도 있다.
실시형태들은 자동완성기능의 사용자 입력(predictive user input)에 제공되는 그래픽 선택 또는 오디오 선택/입력인, 사용자 선택 옵션의 입력을 위한 컨텍스트 기반 옵션을 제공한다.
일 실시형태에서, 현재의 머신 상태는 공통 파라미터를 갖는 웹 페이지 또는 다른 인터페이스 디스플레이와 같은 머신 상태의 세트일 수 있다. 예를 들어, 웹 페이지가 스크롤되거나 줌잉될 수 있고, 프레임이 이름 및 연락처 상세 등의 사용자가 입력한 데이터를 보유할 수 있다. 그러나, 이러한 데이터는 웹 브라우저에 의해 처리되고 웹 서버에 전송되지 않기 때문에, 클라이언트 디바이스의 머신 상태는 웹 서버에 대한 단 하나의 웹 페이지 서빙 단계인 공통 파라미터를 갖는 다중 상태에서 동작할 수 있다.
기본 컴퓨팅 디바이스
도 7은 본 발명의 예시적인 실시형태(들)이 구체화될 수 있는 기본 컴퓨팅 디바이스(600)를 도시하는 블록도이다. 접속, 관계, 및 기능을 비롯한 컴퓨팅 디바이스(600)와 그것의 구성요소는 예시적인 것으로만 의도되었을 뿐, 예시적인 실시형태(들)의 구현을 제한하는 것으로 의도되지 않는다. 예시적인 실시형태(들)을 구현하기에 적합한 다른 컴퓨팅 디바이스는 상이한 접속, 관계 및 기능을 갖는 구성요소를 포함하는 상이한 구성요소를 구비할 수 있다.
컴퓨팅 디바이스(600)는 메인 메모리(606)를 어드세싱하고 디바이스(600)의 다양한 구성요소들 사이에 데이터를 전송하기 위한 버스(602) 또는 다른 통신 메커니즘을 포함할 수 있다.
컴퓨팅 디바이스(600)는 버스(602)와 연결되며 정보를 프로세싱하기 위한 하나 이상의 하드웨어 프로세서(604)도 포함할 수 있다. 하드웨어 프로세서(604)는 범용 마이크로프로세서, 시스템온칩(SoC), 또는 다른 프로세서일 수 있다.
프로세서(들)(604)에 의해 실행되는 소프트웨어 명령어 및 정보를 저장하기 위해 랜덤 액세스 메모리(RAM) 또는 다른 동적 저장 디바이스 등의 메인 메모리(606)도 버스(602)에 연결될 수 있다. 메인 메모리(606)는 또한 프로세서(들)(604)에 의해 실행되는 소프트웨어 명령어의 실행 중에 임시 변수 또는 다른 중간 정보를 저장하는 데에도 사용될 수 있다.
저장 매체에 저장되어 프로세서(들)(604)에 액세스 가능한 소프트웨어 명령어는 컴퓨팅 디바이스(600)를 소프트웨어 명령어에서 특정된 동작을 수행하도록 커스터마이징된 특수 목적 컴퓨팅 디바이스로 렌더링한다. "소프트웨어", "소프트웨어 명령어", "컴퓨터 프로그램", "컴퓨터 실행 가능한 명령어" 및 "프로세서 실행 가능한 명령어"라는 용어는, 컴퓨팅 디바이스로 하여금 특정 동작을 수행하도록 지시하기 위한, 인간 판독 여부와 무관한 머신 판독 가능한 임의의 정보를 포괄하는 것으로 광범위하게 해석되어야 하며, 애플리케이션 소프트웨어, 데스크톱 애플리케이션, 스크립트, 바이너리, 운영 체제, 디바이스 드라이버, 부트 로더, 쉘, 유틸리티, 시스템 소프트웨어, JAVASCRIPT, 웹 페이지, 웹 애플리케이션, 플러그인, 임베디드 소프트웨어, 마이크로코드, 컴파일러, 디버거, 인터프리터, 가상 머신, 링커 및 텍스트 편집기 등을 포함하나 이들에 한정되지 않는다.
컴퓨팅 디바이스(600)는 또한, 프로세서(들)(604)에 대한 정적 정보 및 소프트웨어 명령어를 저장하기 위해 버스(602)에 연결된 리드 온리 메모리(ROM)(608) 또는 다른 정적 저장 디바이스도 포함할 수 있다.
자기, 광학, 솔리드 스테이트, 자기-광학, 플래시 메모리, 또는 기타 이용 가능한 대용량 저장 기술 등의 고정식 또는 분리식 매체 상에 정보 및 소프트웨어 명령어를 영구 저장하기 위해 하나 이상의 대용량 저장 디바이스(610)가 버스(602)에 연결된다. 대용량 저장 디바이스는 네트워크에서 공유될 수도 전용 대용량 저장 디바이스일 수도 있다. 통상, 대용량 저장 디바이스(610) 중 적어도 하나(예컨대, 디바이스용의 메인 하드 디스크)는 운영 체제, 사용자 애플리케이션, 드라이버, 및 다른 지원 파일뿐만 아니라 모든 종류의 다른 데이터 파일을 포함하는, 컴퓨팅 디바이스의 동작을 지시하기 위한 프로그램 및 데이터의 전체를 저장한다.
컴퓨팅 디바이스(600)는 정보를 컴퓨터 사용자에게 디스플레이하기 위해 액정 디스플레이(LCD) 또는 다른 전자적 시각 디스플레이 등의 디스플레이(612)에 버스(602)를 통해 연결될 수 있다. 일부 구성에 있어서, 터치 검출 기술(예컨대, 저항성, 용량성 등)을 통합한 터치 감응 표면이 디스플레이(612) 상에 오버레이되어, 터치 제스처(예컨대, 손가락 또는 스타일러스) 입력을 프로세서(들)(604)에 전달하는 터치 감응 디스플레이를 형성할 수 있다.
영숫자 및 다른 키들을 포함하는 입력 디바이스(614)가프로세서(604)에 정보 및 커맨드 선택을 전달하기 위해 버스(602)에 연결될 수 있다. 입력 디바이스(614)는 영숫자 및 다른 키에 추가하여 또는 이들 대신에, 예컨대 전원(온/오프) 버튼, "홈" 버튼, 볼륨 제어 버튼 등의 하나 이상의 물리적 버튼 또는 스위치를 포함할 수 있다.
다른 유형의 사용자 입력 디바이스는 방향 정보 및 커맨드 선택을 프로세서(604)에 전달하고 디스플레이(612) 상에서의 커서 이동을 제어하기 위한 마우스, 트랙볼, 커서, 또는 터치 스크린 방향 키와 같은 커서 컨트롤(616)일 수 있다. 디바이스로 하여금 평면 내의 위치를 특정하게 하는 이 입력 디바이스는 통상 제1 축(예컨대, x) 및 제2 축(예컨대, y)의 2개 축에서 2 자유도를 갖는다. 다른 입력 디바이스 실시형태는 말과 같은 오디오 입력을 인식하기 위한 오디오 또는 스피치 인식 입력 모듈, 사용자에 의한 제스처를 인식할 수 있는 시각적 입력 디바이스, 및 키보드를 포함한다.
도 7에 도시하는 구성과 같은 일부 구성에서는, 디스플레이(612), 입력 디바이스(614), 및 커서 컨트롤(616) 중 하나 이상이 컴퓨팅 디바이스(600)의 외부 구성요소(즉, 주변 디바이스)이지만, 다른 구성에서는 디스플레이(612), 입력 디바이스(614), 및 커서 컨트롤(616) 중 일부 또는 전부가 컴퓨팅 디바이스(600)의 폼 팩터의 일부로서 통합된다.
디스플레이(612)에 추가하여 또는 디스플레이(612)를 대신하여, 오디오 출력 디바이스 또는 촉각(진동) 출력 디바이스 등의 기타 형태의 사용자 출력 디바이스도 사용될 수 있다.
개시하는 시스템, 방법 및 모듈의 기능은 프로세서(들)(604)가 메인 메모리(606)에 포함된 소프트웨어 명령어의 하나 이상의 프로그램을 실행하는 것에 응답하여 컴퓨팅 디바이스(600)에 의해 수행될 수 있다. 이러한 소프트웨어 명령어는 저장 디바이스(들)(610) 또는 전송 매체 등의 다른 저장 매체로부터 메인 메모리(606)로 판독될 수 있다. 메인 메모리(606)에 포함된 소프트웨어 명령어의 실행은 프로세서(들)(604)로 하여금 예시적인 실시형태(들)의 기능을 수행하게 한다.
예시적인 실시형태(들)의 기능 및 동작이 완전히 소프트웨어 명령어로 구현될 수도 있지만, 다른 실시형태에서는 사용 가능한 특정 구현예의 요건에 따라, 기능을 수행하기 위해 소프트웨어 명령어를 대신하여 또는 소프트웨어 명령어와 함께 컴퓨팅 디바이스(600)의 고정 배선형 또는 프로그래머블 회로(예컨대, ASIC, FPGA 등)가 사용될 수도 있다.
본 명세서에 사용하는 용어인 "저장 매체(storage media)"는 컴퓨팅 디바이스로 하여금 특정 방식으로 동작하게 하는 데이터 및/또는 소프트웨어 명령어를 저장하는 임의의 비일시적인 매체를 지칭한다. 이러한 저장 매체는 비휘발성 매체 및/또는 휘발성 매체를 포함할 수 있다. 비휘발성 매체는 예컨대 저장 디바이스(610)와 같은, 비휘발성 랜덤 액세스 메모리(NVRAM), 플래시 메모리, 광 디스크, 자기 디스크 또는 솔리드 스테이트 드라이브를 포함한다. 휘발성 매체는 메인 메모리(606)와 같은 동적 메모리를 포함한다. 저장 매체의 일반적인 형태는, 예컨대 플로피 디스크, 플렉시블 디스크, 하드 디스크, 솔리드 스테이트 드라이브, 자기 테이프, 또는 기타 자기 데이터 저장 매체, CD-ROM, 기타 광 데이터 저장 매체, 홀 패턴을 가진 기타 물리적 매체, RAM, PROM, 및 EPROM, FLASH-EPROM, NVRAM, 플래시 메모리, 기타 메모리 칩 또는 카트리지를 포함한다.
저장 매체(transmission media)는 전송 매체와 구별되지만 전송 매체와 함께 사용될 수 있다. 전송 매체는 저장 매체 간에 정보를 전송하는데 관여한다. 예를 들어, 전송 매체는 버스(602)를 포함하는 와이어를 비롯해 동축 케이블, 구리 와이어 및 광섬유를 포함한다. 전송 매체는 무선파 및 적외선 데이터 통신 중에 생성되는 것인 음파 또는 광파의 형태를 취할 수도 있다. 코드의 형태로 명령어를 전달하는 머신 판독 가능한 매체는 비일시적인 저장 매체 및 전송 매체를 포함할 수 있다.
실행을 위해 프로세서(들)(604)에 하나 이상의 소프트웨어 명령어의 하나 이상의 시퀀스를 전달할 때에 다양한 형태의 매체가 관여할 수 있다. 예를 들어, 소프트웨어 명령어는 처음에 원격 컴퓨터의 자기 디스크 또는 솔리드 스테이트 드라이브 상에 전달될 수도 있다. 원격 컴퓨터는 소프트웨어 명령어를 동적 메모리에 로드하고 모뎀을 사용하여 전화선을 통해 소프트웨어 명령어를 전송할 수 있다. 컴퓨팅 디바이스(600)에 대해 로컬인 모뎀은 전화선을 통해 데이터를 수신하고 적외선 송신기를 사용하여 데이터를 적외선 신호로 변환할 수 있다. 적외선 검출기가 적외선 신호로 전달되는 데이터를 수신할 수 있고, 적절한 회로가 버스(602) 상에 데이터를 배치시킬 수 있다. 버스(602)는 그 메인 메모리(606)에 데이터를 전달하며, 프로세서(604)는 메인 메모리부터 소프트웨어 명령어를 검색하고 실행한다. 메인 메모리(606)에 의해 수신되는 소프트웨어 명령어는 프로세서(들)(604)에 의한 실행 전 또는 실행 후에 저장 디바이스(들)(610) 상에 선택적으로 저장될 수 있다.
또한, 컴퓨팅 디바이스(600)는 버스(602)에 연결된 하나 이상의 통신 인터페이스(들)(618)를 포함할 수 있다. 통신 인터페이스(618)는 로컬 네트워크(622)(예컨대, 이더넷 네트워크, 무선 근거리 네트워크, 셀룰러 전화 네트워크, 블루투스 무선 네트워크 등)에 접속된 유선 또는 무선 네트워크 링크(620)에 결합된 양방향 데이터 통신을 제공한다. 통신 인터페이스(618)는 다양한 유형의 정보를 표현하는 디지털 데이터 스트림을 전달하는 전기, 전자기 또는 광 신호를 송신 및 수신한다. 예를 들어, 통신 인터페이스(618)는 유선 네트워크 인터페이스 카드, 통합 무선 안테나를 갖는 무선 네트워크 인터페이스 카드, 또는 모뎀(예컨대, ISDN, DSL 또는 케이블 모뎀)일 수 있다.
네트워크 링크(들)(620)는 통상 하나 이상의 네트워크를 통해 다른 데이터 디바이스에 데이터 통신을 제공한다. 예를 들어, 네트워크 링크(620)는 로컬 네트워크(622)를 통해, 호스트 컴퓨터와의, 또는 인터넷 서비스 제공자(ISP)에 의해 운영되는 데이터 장비와의 접속을 제공할 수 있다. ISP(626)는 이제 일반적으로 "인터넷"이라고 칭해지는 월드 와이드 패킷 데이터 통신 네트워크를 통해 데이터 통신 서비스를 제공한다. 로컬 네트워크(들)(622) 및 인터넷은 디지털 데이터 스트림을 전달하는 전기, 전자기 또는 광 신호를 사용한다. 컴퓨팅 디바이스(600)에 그리고 컴퓨팅 디바이스(600)로부터 디지털 데이터를 전달하는, 다양한 네트워크를 통한 신호 및 네트워크 링크(들)(620) 상에서의 그리고 통신 인터페이스(들)(618)를 통한 신호가 전송 매체의 예시적인 형태다.
컴퓨팅 디바이스(600)는 네트워크(들), 네트워크 링크(들)(620) 및 통신 인터페이스(들)(618)를 통해, 프로그램 코드를 포함한, 메시지를 송신하고 데이터를 수신할 수 있다. 인터넷 예에 있어서, 서버는 인터넷, ISP, 로컬 네트워크(들)(622) 및 통신 인터페이스(들)(618)를 통해 애플리케이션 프로그램에 대한 요청된 코드를 전송할 수 있다.
수신된 코드는 수신될 때에 프로세서(604)에 의해 실행되고 그리고/또는 추후 실행을 위해 저장 디바이스(610) 또는 다른 비휘발성 저장 디바이스에 저장될 수 있다.
일 양태는 방법을 수행하도록 머신의 프로세서에 의한 실행을 위해 코드를 저장한 비일시적저장 매체 또는 방법을 수행하기 위해 머신의 프로세서에 의한 실행을 위해 프로세서 실행 가능한 코드를 전달하는 일시적인 매체와 같은 캐리어 매체를 제공한다. 실시형태들은 컴퓨터 코드를 구현하는 프로그래머블 디지털 로직으로구현될 수 있다. 코드는 캐리어 매체를 통해, 프로세서 또는 마이크로프로세서와 같은 프로그래머블 로직에 제공될 수 있다. 캐리어 매체의 이러한 일 실시형태는 일시적인 매체, 즉 전기, 전자기, 음향, 자기 또는 광학 신호와 같은 신호이다. 캐리어 매체의 다른 형태는 솔리드 스테이트 메모리, 자기 매체(하드 디스크 드라이브), 또는 광학 매체(컴팩트 디스크(CD) 또는 디지털 다용도 디스크(DVD)) 등의, 코드를 저장하는 비일시적 저장 매체이다.
당업자라면, 본 발명의 요지의 사상을 설명하기 위해 기술하고 예시한 부품 및 방법 단계의 상세, 재료 및 배치에 있어서의 다양한 다른 변화가, 첨부하는 청구범위에서 표현되는 본 발명의 요지의 원리 및 범위를 벗어나지 않고서 이루어질 수 있음이 자명할 것이다.

Claims (24)

  1. 머신에서 구현되는 사용자 인터페이스 방법에 있어서,
    1인 이상 사용자의 집합에 대한 단축키 데이터(shortcut data)를 저장하는 단계로서, 상기 단축키 데이터는 상기 1인 이상 사용자의 집합에 있어서 머신의 복수의 상태에 대한 단축키에 대해 복수의 식별자 세트를 포함하고, 단축키마다 저장된 각 식별자는 대응하는 저장된 머신 커맨드를 갖는 것인, 상기 단축키 데이터를 저장하는 단계와,
    상기 사용자에 대한 머신의 현재 상태를 결정하는 단계와,
    상기 사용자로부터의 입력을 수신하는 단계와,
    상기 입력이 상기 단축키 데이터 중의 단축키에 대한 저장된 식별자와 매칭하는지 결정하는 단계와,
    상기 매칭에 의존하여 상기 저장된 식별자에 대응하는 저장된 디바이스 커맨드를 실행하는 단계와,
    상기 1인 이상 사용자의 집합에 대한 저장된 이력 데이터를 업데이트하는 단계와,
    상기 업데이트된 이력 데이터를 사용하여 상기 단축키 데이터를 업데이트하는 단계
    를 포함하는 사용자 인터페이스 방법.
  2. 제1항에 있어서, 상기 사용자로부터의 입력이 저장된 식별자와 매칭하지 않으면, 상기 입력이 커맨드인지를 결정하고, 상기 커맨드를 실행하며, 상기 1인 이상 사용자의 집합에 대한 저장된 이력 데이터를 업데이트하고, 상기 업데이트된 이력 데이터를 사용하여 상기 단축키 데이터를 업데이트하는 단계를 포함하는 사용자 인터페이스 방법.
  3. 제1항 또는 제2항에 있어서, 사용자에게 상기 머신의 현재 상태에 대한 단축키 식별자를 출력하는 단계를 포함하는 사용자 인터페이스 방법.
  4. 제3항에 있어서, 상기 단축키 식별자는 상기 이력 데이터에 의존하는 순서로 출력되는 것인 사용자 인터페이스 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서, 상기 저장된 머신 커맨드는 상기 머신에 의해 순차적으로 실행되는 복수의 순차적 커맨드를 포함하는 것인 사용자 인터페이스 방법.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서, 상기 1인 이상 사용자의 집합에 대한 저장된 단축키 데이터 및 저장된 이력 데이터를, 상기 1인 이상 사용자의 집합을 포함하는 1인 이상 사용자의 복수의 집합에 대한 원격 데이터베이스의 단축키 데이터 및 이력 데이터와 동기화시키는 단계를 포함하는 사용자 인터페이스 방법.
  7. 제6항에 있어서, 상기 동기화에 있어서 상기 원격 데이터베이스로부터 수신된 이력 데이터는 상기 1인 이상 사용자의 집합의 선호도(preference)를 나타내는 사용자 선호도 데이터를 포함하고, 상기 단축키 데이터는 상기 사용자 선호도 데이터를 사용하여 업데이트되는 것인 사용자 인터페이스 방법.
  8. 제1항 내지 제5항 중 어느 한 항에 있어서, 상기 머신은 1인 이상 사용자의 복수의 집합이 사용하는 다중 사용자 머신(multiuser machine)이고, 상기 단축키 데이터는 상기 머신의 1인 이상 사용자의 복수의 집합에 대해 저장되는 것인 사용자 인터페이스 방법.
  9. 제8항에 있어서, 상기 사용자 집합에 대한 저장된 단축키 데이터 및 저장된 이력 데이터를, 상기 머신의 사용자 집합을 포함하는 복수의 사용자 집합에 대한 원격 데이터베이스의 단축키 데이터 및 이력 데이터와 동기화시키는 단계를 포함하는 사용자 인터페이스 방법.
  10. 제9항에 있어서, 상기 동기화에 있어서 상기 원격 데이터베이스로부터 수신된 이력 데이터는 상기 사용자 집합의 선호도를 나타내는 사용자 선호도 데이터를 포함하고, 상기 단축키 데이터는 상기 사용자 선호도 데이터를 사용하여 업데이트되는 것인 사용자 인터페이스 방법.
  11. 제1항 내지 제10항 중 어느 한 항에 있어서, 상기 사용자로부터의 입력은 디스플레이된 텍스트 입력 필드에 하나 이상의 텍스트 문자를 포함하고, 상기 단축키에 대한 저장된 식별자는 복수의 텍스트 문자를 포함하며, 대응하는 커맨드는 상기 복수의 텍스트 문자를 포함하고, 상기 입력이 상기 단축키 데이터 중의 단축키에 대한 저장된 데이터와 매칭하는지 결정하는 단계는, 입력된 하나 이상의 텍스트 문자를 상기 저장된 식별자의 복수의 텍스트 문자 중 하나 이상과 매칭시키는 단계를 포함하는 것인 사용자 인터페이스 방법.
  12. 사용자 인터페이스를 제공하는 머신에 있어서,
    프로그램 코드를 저장하는 프로그램 메모리와,
    상기 프로그램 메모리에 저장된 프로그램 코드를 구현하는 프로세서
    를 포함하고,
    상기 프로그램 코드는,
    1인 이상 사용자의 집합에 대한 단축키 데이터를 저장하도록 상기 프로세서를 제어하는 코드로서, 상기 단축키 데이터는 상기 1인 이상 사용자의 집합에 있어서 머신의 복수의 상태에 대한 단축키에 대해 복수의 식별자 세트를 포함하며, 단축키마다 저장된 각 식별자는 대응하는 저장된 머신 커맨드를 갖는 것인, 상기 프로세서를 제어하는 코드와,
    상기 사용자에 대한 머신의 현재 상태를 결정하도록 상기 프로세서를 제어하는 코드와,
    상기 사용자로부터의 입력을 수신하도록 상기 프로세서를 제어하는 코드와,
    상기 입력이 상기 단축키 데이터 중의 단축키에 대한 저장된 식별자와 매칭하는지 결정하도록 상기 프로세서를 제어하는 코드와,
    상기 매칭에 의존하여 상기 저장된 식별자에 대응하는 저장된 디바이스 커맨드를 실행하도록 상기 프로세서를 제어하는 코드와,
    상기 1인 이상 사용자의 집합에 대한 저장된 이력 데이터를 업데이트하도록 상기 프로세서를 제어하는 코드와,
    상기 업데이트된 이력 데이터를 사용하여 상기 단축키 데이터를 업데이트하도록 상기 프로세서를 제어하는 코드
    를 포함하는 것인 사용자 인터페이스를 제공하는 머신.
  13. 제12항에 있어서, 상기 프로세서를 제어하는 코드는, 상기 사용자로부터의 입력이 저장된 식별자와 매칭하지 않으면, 상기 입력이 커맨드인지를 결정하고, 상기 커맨드를 실행하며, 상기 1인 이상 사용자의 집합에 대한 저장된 이력 데이터를 업데이트하고, 상기 업데이트된 이력 데이터를 사용하여 상기 단축키 데이터를 업데이트하도록 상기 프로세서를 제어하는 코드를 포함하는 것인 사용자 인터페이스를 제공하는 머신.
  14. 제12항 또는 제13항에 있어서, 상기 프로세서를 제어하는 코드는, 사용자에게 상기 머신의 현재 상태에 대한 단축키 식별자를 출력하도록 상기 프로세서를 제어하는 코드를 포함하는 것인 사용자 인터페이스를 제공하는 머신.
  15. 제14항에 있어서, 상기 프로세서를 제어하는 코드는, 상기 단축키 식별자를 상기 이력 데이터에 의존하는 순서로 출력하도록 상기 프로세서를 제어하는 코드를 포함하는 것인 사용자 인터페이스를 제공하는 머신.
  16. 제12항 내지 제15항 중 어느 한 항에 있어서, 상기 저장된 머신 커맨드는 상기 머신에 의해 순차적으로 실행되는 복수의 순차적 커맨드를 포함하는 것인 사용자 인터페이스를 제공하는 머신.
  17. 제12항 내지 제16항 중 어느 한 항에 있어서, 상기 프로세서를 제어하는 코드는, 상기 1인 이상 사용자의 집합에 대한 저장된 단축키 데이터 및 저장된 이력 데이터를, 상기 사용자 집합을 포함하는 복수의 사용자 집합에 대한 원격 데이터베이스의 단축키 데이터 및 이력 데이터와 동기화시키도록 상기 프로세서를 제어하는 코드를 포함하는 것인 사용자 인터페이스를 제공하는 머신.
  18. 제17항에 있어서, 상기 동기화에 있어서 상기 원격 데이터베이스로부터 수신된 이력 데이터는 상기 1인 이상 사용자의 집합의 선호도를 나타내는 사용자 선호도 데이터를 포함하고, 상기 프로세서를 제어하는 코드는, 상기 사용자 선호도 데이터를 사용하여 상기 단축키 데이터를 업데이트하도록 상기 프로세서를 제어하는 코드를 포함하는 것인 사용자 인터페이스를 제공하는 머신.
  19. 제12항 내지 제16항 중 어느 한 항에 있어서, 상기 머신은 1인 이상 사용자의 복수의 집합이 사용하는 다중 사용자 머신이고, 상기 프로세서를 제어하는 코드는, 상기 머신의 1인 이상 사용자의 복수의 집합에 대한 단축키 데이터를 저장하도록 상기 프로세서를 제어하는 코드를 포함하는 것인 사용자 인터페이스를 제공하는 머신.
  20. 제19항에 있어서, 상기 프로세서를 제어하는 코드는, 상기 사용자 집합에 대한 저장된 단축키 데이터 및 저장된 이력 데이터를, 상기 머신의 사용자를 포함하는 복수의 사용자 집합에 대한 원격 데이터베이스의 단축키 데이터 및 이력 데이터와 동기화시키도록 상기 프로세서를 제어하는 코드를 포함하는 것인 사용자 인터페이스를 제공하는 머신.
  21. 제20항에 있어서, 상기 동기화에 있어서 상기 원격 데이터베이스로부터 수신된 이력 데이터는 상기 사용자 집합의 선호도를 나타내는 사용자 선호도 데이터를 포함하고, 상기 프로세서를 제어하는 코드는, 상기 사용자 선호도 데이터를 사용하여 상기 단축키 데이터를 업데이트하도록 상기 프로세서를 제어하는 코드를 포함하는 것인 사용자 인터페이스를 제공하는 머신.
  22. 제12항 내지 제21항 중 어느 한 항에 있어서, 사용자로부터의 입력은 디스플레이된 텍스트 입력 필드에 하나 이상의 텍스트 문자를 포함하고, 상기 단축키에 대한 저장된 식별자는 복수의 텍스트 문자를 포함하며, 대응하는 커맨드는 상기 복수의 텍스트 문자를 포함하고, 상기 입력이 상기 단축키 데이터 중의 단축키에 대한 저장된 데이터와 매칭하는지 결정하도록 상기 프로세서를 제어하는 코드는, 입력된 하나 이상의 텍스트 문자를 상기 저장된 식별자의 복수의 텍스트 문자 중 하나 이상과 매칭시키도록 상기 프로세서를 제어하는 코드를 포함하는 것인 사용자 인터페이스를 제공하는 머신.
  23. 제1항 내지 제11항 중 어느 한 항에 따른 방법을 수행하도록 프로세서에 의한 실행을 위한 프로세서 실행 가능한 코드를 전달하는 반송 매체.
  24. 제1항 내지 제11항 중 어느 한 항에 따른 방법을 수행하도록 프로세서에 의한 실행을 위한 프로세서 실행 가능한 코드를 저장하는 비일시적 저장 매체.
KR1020187021854A 2015-12-31 2016-12-30 사용자 인터페이스 KR20180099813A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GBGB1523166.5A GB201523166D0 (en) 2015-12-31 2015-12-31 Direct integration system
GB1523166.5 2015-12-31
PCT/GB2016/054092 WO2017115093A1 (en) 2015-12-31 2016-12-30 User interface

Publications (1)

Publication Number Publication Date
KR20180099813A true KR20180099813A (ko) 2018-09-05

Family

ID=55406529

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020187021854A KR20180099813A (ko) 2015-12-31 2016-12-30 사용자 인터페이스
KR1020187021119A KR20180100343A (ko) 2015-12-31 2016-12-30 전자 트랜잭션 방법 및 장치

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020187021119A KR20180100343A (ko) 2015-12-31 2016-12-30 전자 트랜잭션 방법 및 장치

Country Status (13)

Country Link
US (6) US10599450B2 (ko)
EP (2) EP3398125A1 (ko)
JP (2) JP7171438B2 (ko)
KR (2) KR20180099813A (ko)
CN (2) CN108713207A (ko)
AU (3) AU2016383124A1 (ko)
BR (2) BR112018013420A2 (ko)
CA (2) CA3009877A1 (ko)
DE (1) DE202016008646U1 (ko)
GB (1) GB201523166D0 (ko)
SG (3) SG11201805581WA (ko)
WO (2) WO2017115090A1 (ko)
ZA (2) ZA201804422B (ko)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201523166D0 (en) 2015-12-31 2016-02-17 Jones Maria F Direct integration system
US11043206B2 (en) 2017-05-18 2021-06-22 Aiqudo, Inc. Systems and methods for crowdsourced actions and commands
US11520610B2 (en) 2017-05-18 2022-12-06 Peloton Interactive Inc. Crowdsourced on-boarding of digital assistant operations
US10838746B2 (en) 2017-05-18 2020-11-17 Aiqudo, Inc. Identifying parameter values and determining features for boosting rankings of relevant distributable digital assistant operations
US11340925B2 (en) 2017-05-18 2022-05-24 Peloton Interactive Inc. Action recipes for a crowdsourced digital assistant system
US11056105B2 (en) * 2017-05-18 2021-07-06 Aiqudo, Inc Talk back from actions in applications
AU2018101686A4 (en) * 2017-11-14 2019-01-03 Message 4U Pty Limited A system and method for facilitating payments via mobile messaging
WO2019152511A1 (en) 2018-01-30 2019-08-08 Aiqudo, Inc. Personalized digital assistant device and related methods
US11049160B2 (en) 2018-04-13 2021-06-29 Violet.io, Inc. Headless multi-platform e-commerce distribution system and method
US11055757B2 (en) 2018-04-13 2021-07-06 Violet.io, Inc. Multi-platform e-commerce system with asynchronous cart
US20190318413A1 (en) * 2018-04-13 2019-10-17 Violet.io, Inc. Commerce graph api system and method for multi-platform e-commerce distribution system
USD870139S1 (en) * 2018-06-04 2019-12-17 Apple Inc. Display screen or portion thereof with graphical user interface
JP7302314B2 (ja) * 2019-06-12 2023-07-04 カシオ計算機株式会社 表示制御装置及びプログラム
CN110400181A (zh) * 2019-07-30 2019-11-01 广州吉信网络科技开发有限公司 自动化跳转返佣链接方法、装置、电子设备及存储介质
US11010811B2 (en) * 2019-10-01 2021-05-18 Jane Technologies, Inc. Online marketplace method
US11307738B2 (en) * 2019-10-08 2022-04-19 Visa International Service Association Method and system for navigating through an application in a user device
JP7390886B2 (ja) * 2019-12-23 2023-12-04 東芝テック株式会社 会計処理方法、登録処理方法、会計装置及びプログラム
CN111290623A (zh) * 2020-03-12 2020-06-16 南京酷朗电子有限公司 用于公共信息平台数据录入的用户数据输入法
US11693540B1 (en) * 2021-03-26 2023-07-04 Amazon Technologies, Inc. Technique to emphasize store branding in the multi-store app
US11689696B2 (en) * 2021-03-30 2023-06-27 Snap Inc. Configuring participant video feeds within a virtual conferencing system
WO2022245738A1 (en) * 2021-05-19 2022-11-24 Snap Inc. Combining functions into shortcuts within messaging system
US11853981B2 (en) * 2021-09-02 2023-12-26 Shopify Inc. Systems and methods for e-commerce checkout with delay loading of checkout options
KR102395740B1 (ko) * 2021-09-16 2022-05-10 쿠팡 주식회사 아이템의 정보를 제공하는 전자 장치 및 그 방법
US20230097558A1 (en) * 2021-09-29 2023-03-30 Roku, Inc Order an Advertised Subject from a Third Party Shopping System
CN114968450A (zh) * 2022-04-12 2022-08-30 北京高德云信科技有限公司 信息服务方法、装置、电子设备
US20240045782A1 (en) * 2022-08-08 2024-02-08 Qualcomm Incorporated Suggesting a New and Easier System Function by Detecting User's Action Sequences
CN117579382B (zh) * 2024-01-15 2024-03-15 贵州省林业科学研究院 生态监测台站数据智能实时共享方法

Family Cites Families (94)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1989011694A1 (en) 1988-05-27 1989-11-30 Wang Laboratories, Inc. Document folder icon for display in a data processing system
US5060135A (en) 1988-09-16 1991-10-22 Wang Laboratories, Inc. Apparatus for manipulating documents in a data processing system utilizing reduced images of sheets of information which are movable
JPH0520044A (ja) 1991-07-15 1993-01-29 Personal Joho Kankyo Kyokai ユーザインタフエース装置
US5838326A (en) 1996-09-26 1998-11-17 Xerox Corporation System for moving document objects in a 3-D workspace
US6924827B1 (en) 1998-12-28 2005-08-02 Alogic S.A. Method and system for allowing a user to perform electronic data gathering using foldable windows
US6321209B1 (en) 1999-02-18 2001-11-20 Wired Solutions, Llc System and method for providing a dynamic advertising content window within a window based content manifestation environment provided in a browser
FR2803929B1 (fr) 1999-12-30 2004-09-17 Ferid Allani Procede et dispositif pour acceder a des sources d'information et services sur le web
CA2397762A1 (en) 2000-01-25 2001-08-02 Autodesk, Inc. Method and apparatus for providing access to and working with architectural drawings on the internet
US6678685B2 (en) 2000-01-26 2004-01-13 Familytime.Com, Inc. Integrated household management system and method
US7386512B1 (en) 2000-05-11 2008-06-10 Thomson Licensing Method and system for controlling and auditing content/service systems
US7036082B1 (en) 2000-09-21 2006-04-25 Nortel Networks Limited Controlling communications through a virtual reality environment
JPWO2002056217A1 (ja) 2000-12-27 2004-05-20 富士通株式会社 ショッピングシステム
US20040027383A1 (en) 2001-02-15 2004-02-12 Denny Jaeger Method for agglomerating onscreen objects
US20020147660A1 (en) 2001-04-10 2002-10-10 Bernadette Indence Scheduling, tracking, and synchronization of events with personal portable computers using bar code data input
US20030023594A1 (en) 2001-07-25 2003-01-30 Ramamurthi Ram K. System and method for organizing, preserving, sharing and updating voluminous personal memoirs and for dynamic accounting of assets
US7356490B1 (en) 2001-08-20 2008-04-08 Amazon.Com, Inc. Services for increasing the utility of electronic wish lists
JP2003108846A (ja) 2001-09-28 2003-04-11 Fujitsu Ltd 販売促進方法及び販売促進装置
US20030074278A1 (en) 2001-10-11 2003-04-17 International Business Machines Corporation Apparatus and method of effectuating real-time price calculations based on user preferences
US20030126461A1 (en) * 2001-12-28 2003-07-03 John Barker Audio/visual URL icon
US7580863B2 (en) 2002-07-25 2009-08-25 International Business Machines Corporation Method, system, and computer program product for operating a publicly accessible purchasing system
US7570943B2 (en) 2002-08-29 2009-08-04 Nokia Corporation System and method for providing context sensitive recommendations to digital services
US8700504B2 (en) * 2002-12-30 2014-04-15 Exactor, Inc. Integrated e-commerce sales and use tax exchange system and method
US20040143650A1 (en) 2003-01-10 2004-07-22 Michael Wollowitz Method and system for transmission of computer files
JP4225085B2 (ja) * 2003-03-12 2009-02-18 カシオ計算機株式会社 ネット販売管理装置およびプログラム
US20040179430A1 (en) 2003-03-13 2004-09-16 Reuben Bahar Pill dispensing reminder capable of communicating with a remotely situated computer
US20040267593A1 (en) 2003-06-11 2004-12-30 Sammons Barbara N. Systems and methods for managing litigation and other matters
GB0322877D0 (en) 2003-09-30 2003-10-29 British Telecomm Search system and method
US7614004B2 (en) 2003-12-15 2009-11-03 Microsoft Corporation Intelligent forward resource navigation
GB2418504A (en) 2004-09-28 2006-03-29 Robert Kaplan Accessing data online utilising a code and associated graphic device
US20060122916A1 (en) 2004-10-19 2006-06-08 Peter Kassan System and method for dynamic e-commerce shopping icons
US7640507B2 (en) 2005-02-28 2009-12-29 At&T Intellectual Property I, L.P. Methods, systems, and products for calendaring applications
US20060259867A1 (en) 2005-05-13 2006-11-16 Microsoft Corporation System and method for automatic generation of browsing favorites
US20070174286A1 (en) 2005-05-17 2007-07-26 Yahoo!, Inc. Systems and methods for providing features and user interface in network browsing applications
US7996391B2 (en) 2005-06-20 2011-08-09 Google Inc. Systems and methods for providing search results
US8627222B2 (en) 2005-09-12 2014-01-07 Microsoft Corporation Expanded search and find user interface
JP2009508274A (ja) * 2005-09-13 2009-02-26 スペースタイムスリーディー・インコーポレーテッド 3次元グラフィカル・ユーザ・インターフェースを提供するシステム及び方法
US7877295B2 (en) 2005-11-23 2011-01-25 Ebay Inc. System and method for transaction automation
US20070174777A1 (en) 2006-01-26 2007-07-26 William Derek Finley Three dimensional graphical user interface representative of a physical work space
US20070260591A1 (en) 2006-04-28 2007-11-08 Ahi Michele E System and method of providing integrated calendaring and concierge services
US10503342B2 (en) 2006-08-04 2019-12-10 Apple Inc. User interface spaces
US8726195B2 (en) 2006-09-05 2014-05-13 Aol Inc. Enabling an IM user to navigate a virtual world
CN101231722B (zh) * 2007-01-22 2014-09-17 阿里巴巴集团控股有限公司 一种网络支付方法及系统
GB0703974D0 (en) 2007-03-01 2007-04-11 Sony Comp Entertainment Europe Entertainment device
CN101136094A (zh) * 2007-09-29 2008-03-05 腾讯科技(深圳)有限公司 一种电子商务交易方法及系统
JP5042787B2 (ja) 2007-11-20 2012-10-03 富士フイルム株式会社 商品検索システム、商品検索方法及び商品検索プログラム
US20090152349A1 (en) 2007-12-17 2009-06-18 Bonev Robert Family organizer communications network system
US8612880B2 (en) 2008-03-07 2013-12-17 Inware, Llc System and method for document management
US7912852B1 (en) 2008-05-02 2011-03-22 Amazon Technologies, Inc. Search-caching and threshold alerting for commerce sites
US8438148B1 (en) 2008-09-01 2013-05-07 Google Inc. Method and system for generating search shortcuts and inline auto-complete entries
US8055638B2 (en) 2008-12-11 2011-11-08 Microsoft Corporation Providing recent history with search results
CN101770339B (zh) * 2009-01-05 2012-12-19 深圳富泰宏精密工业有限公司 使用者行为追踪及记录系统与方法
US8161398B2 (en) 2009-05-08 2012-04-17 International Business Machines Corporation Assistive group setting management in a virtual world
US8407613B2 (en) 2009-07-13 2013-03-26 Apple Inc. Directory management on a portable multifunction device
US8326859B2 (en) 2009-11-02 2012-12-04 Microsoft Corporation Task prediction
US20110239117A1 (en) 2010-03-25 2011-09-29 Microsoft Corporation Natural User Interaction in Shared Resource Computing Environment
US10025458B2 (en) 2010-04-07 2018-07-17 Apple Inc. Device, method, and graphical user interface for managing folders
US9411907B2 (en) * 2010-04-26 2016-08-09 Salesforce.Com, Inc. Method and system for performing searches in a multi-tenant database environment
US8416066B2 (en) 2010-04-29 2013-04-09 Microsoft Corporation Active vibrations
JP2011238129A (ja) * 2010-05-12 2011-11-24 Sony Corp 端末装置、電子機器、アクセスキーの割り当て方法及びプログラム
WO2011146276A2 (en) 2010-05-19 2011-11-24 Google Inc. Television related searching
WO2012009100A1 (en) 2010-07-16 2012-01-19 Kalu Onuka Kalu Mobile wireless communications device with search shortcut and related methods
CN101901111B (zh) * 2010-07-30 2014-08-20 中兴通讯股份有限公司 一种在移动终端上实现自动化操作的方法及装置
US20120078731A1 (en) * 2010-09-24 2012-03-29 Richard Linevsky System and Method of Browsing Electronic Catalogs from Multiple Merchants
JP5195881B2 (ja) 2010-11-30 2013-05-15 コニカミノルタビジネステクノロジーズ株式会社 文書閲覧装置、文書閲覧装置における表示方法、および表示プログラム
CN102109995A (zh) * 2010-12-28 2011-06-29 青岛海信宽带多媒体技术有限公司 一种生成快捷键的方法及装置
TWI546700B (zh) 2011-01-13 2016-08-21 宏達國際電子股份有限公司 手持電子裝置及其控制方法與電腦程式產品
CN102087583A (zh) * 2011-01-30 2011-06-08 深圳市乐通天下科技有限公司 一种对网页页面的操作方法
JP5669102B2 (ja) 2011-03-30 2015-02-12 株式会社Nttドコモ ショートカット提供装置、通信システム、ショートカット提供方法及びプログラム
US20130249947A1 (en) 2011-08-26 2013-09-26 Reincloud Corporation Communication using augmented reality
US8751972B2 (en) 2011-09-20 2014-06-10 Google Inc. Collaborative gesture-based input language
KR101934998B1 (ko) * 2011-10-04 2019-01-04 삼성전자주식회사 복수의 애플리케이션에 대한 사용자 인터페이스를 제공하는 방법 및 시스템
US20130204862A1 (en) 2012-02-03 2013-08-08 Volunia Italia S.R.L. Internet searching and social interaction techniques
EP3800854B1 (en) 2012-02-14 2024-06-12 INTEL Corporation Peer to peer networking and sharing systems and methods
US20130211938A1 (en) 2012-02-14 2013-08-15 Microsoft Corporation Retail kiosks with multi-modal interactive surface
US9552597B2 (en) * 2012-02-17 2017-01-24 Ebay Inc. Electronic commerce file system
US9311417B2 (en) 2012-03-09 2016-04-12 Oracle International Corporation Personalized navigation shortcuts
US9158560B2 (en) * 2012-10-26 2015-10-13 Verizon Patent And Licensing Inc. Dynamic application arranger
EP3454284A1 (en) 2012-12-18 2019-03-13 Touchize Sweden AB Object selection and presentation of object-related data in one consistent page view
US10120914B2 (en) 2013-03-15 2018-11-06 Salesforce.Com, Inc. Mechanism for facilitating improved searching
KR102141155B1 (ko) 2013-04-22 2020-08-04 삼성전자주식회사 모바일 장치의 상태에 대응하는 변경된 숏컷 아이콘을 제공하는 모바일 장치 및 그 제어 방법
US9483565B2 (en) 2013-06-27 2016-11-01 Google Inc. Associating a task with a user based on user selection of a query suggestion
JP2015053642A (ja) * 2013-09-09 2015-03-19 三星電子株式会社Samsung Electronics Co.,Ltd. 情報システム及びリモートコントローラ並びに情報提供装置
CN105874417A (zh) 2013-12-27 2016-08-17 宇龙计算机通信科技(深圳)有限公司 跨界面数据转移方法和终端
US9549028B2 (en) 2014-02-18 2017-01-17 Ebay Inc. Systems and methods for automatically saving a state of a communication session
US20150332230A1 (en) * 2014-05-15 2015-11-19 Ebay Inc. Selection of merchant and device specific payment flow
US9754284B2 (en) 2014-05-22 2017-09-05 Excalibur Ip, Llc System and method for event triggered search results
US20150356643A1 (en) * 2014-06-04 2015-12-10 VendOp, LLC Dual-Identity Review System
CN104077684A (zh) * 2014-06-09 2014-10-01 中国建设银行股份有限公司 一种在线支付方法和装置
US9612732B2 (en) 2014-11-13 2017-04-04 Microsoft Technology Licensing, Llc Content transfer to non-running targets
CN104503668A (zh) * 2014-12-02 2015-04-08 东莞宇龙通信科技有限公司 一种菜单快捷方式的生成方法、系统及终端
EP3356929A4 (en) 2015-10-02 2019-02-27 United States Postal Service SYSTEM AND METHOD FOR GENERATING AND IMPLEMENTING A HOME CUSTOMER DATABASE
US11170451B2 (en) 2015-10-02 2021-11-09 Not So Forgetful, LLC Apparatus and method for providing gift recommendations and social engagement reminders, storing personal information, and facilitating gift and social engagement recommendations for calendar-based social engagements through an interconnected social network
US20170098256A1 (en) 2015-10-06 2017-04-06 Robert A. Long System and method for conveying entertainment or social events
GB201523166D0 (en) 2015-12-31 2016-02-17 Jones Maria F Direct integration system

Also Published As

Publication number Publication date
JP7171438B2 (ja) 2022-11-15
WO2017115090A1 (en) 2017-07-06
AU2016383124A1 (en) 2018-07-05
AU2016383127A1 (en) 2018-07-05
US20190258495A1 (en) 2019-08-22
US10922103B2 (en) 2021-02-16
JP6838077B2 (ja) 2021-03-03
CN108701042A (zh) 2018-10-23
JP2019508822A (ja) 2019-03-28
DE202016008646U1 (de) 2018-10-22
EP3398124A1 (en) 2018-11-07
KR20180100343A (ko) 2018-09-10
CA3009892A1 (en) 2017-07-06
SG10202000292YA (en) 2020-03-30
CN108713207A (zh) 2018-10-26
BR112018013425A2 (pt) 2018-12-04
ZA201804421B (en) 2019-09-25
CA3009877A1 (en) 2017-07-06
US20170193123A1 (en) 2017-07-06
US20170193507A1 (en) 2017-07-06
AU2022259768A1 (en) 2022-12-01
BR112018013420A2 (pt) 2018-12-11
US20210081223A1 (en) 2021-03-18
WO2017115093A1 (en) 2017-07-06
US10599450B2 (en) 2020-03-24
JP2019505935A (ja) 2019-02-28
SG11201805581WA (en) 2018-07-30
US20200150984A1 (en) 2020-05-14
US20170192798A1 (en) 2017-07-06
EP3398125A1 (en) 2018-11-07
SG11201805520UA (en) 2018-07-30
ZA201804422B (en) 2019-09-25
GB201523166D0 (en) 2016-02-17

Similar Documents

Publication Publication Date Title
JP7171438B2 (ja) ユーザインタフェース方法及び装置
US11941244B1 (en) Presenting suggestions from search corpora
US9852227B2 (en) Control for persistent search results and iterative searching
US20180268068A1 (en) Method for searching and device thereof
US9189500B2 (en) Graphical flash view of documents for data navigation on a touch-screen device
US10936568B2 (en) Moving nodes in a tree structure
CN108369600B (zh) web浏览器扩展
KR102310648B1 (ko) 상황 정보 탐색 및 내비게이션 기법
US11526575B2 (en) Web browser with enhanced history classification
CN105283843B (zh) 可嵌入的媒体内容搜索微件
JP2016527615A (ja) アプリケーション情報の検索方法及びその装置
US10572497B2 (en) Parsing and executing commands on a user interface running two applications simultaneously for selecting an object in a first application and then executing an action in a second application to manipulate the selected object in the first application
KR102044614B1 (ko) 입력방법 기반의 웹사이트 정보 제공방법 및 장치
US10567845B2 (en) Embeddable media content search widget
US20180300029A1 (en) Smart Bookmarks For Viewing Content
JP2024509824A (ja) ドキュメントの編集方法、装置、デバイス及び記憶媒体
US10417288B2 (en) Search of web page metadata using a find function
JP2017068645A (ja) 情報処理装置、情報処理装置の制御方法、プログラム
Koster et al. The mobile library catalogue

Legal Events

Date Code Title Description
E902 Notification of reason for refusal