KR20100080345A - 최소 개의 입력들로 액티비티를 수행하는 바람직한 명령 시퀀스를 최종 사용자에게 프롬프팅하기 위한 시스템 및 방법 - Google Patents

최소 개의 입력들로 액티비티를 수행하는 바람직한 명령 시퀀스를 최종 사용자에게 프롬프팅하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR20100080345A
KR20100080345A KR1020090107525A KR20090107525A KR20100080345A KR 20100080345 A KR20100080345 A KR 20100080345A KR 1020090107525 A KR1020090107525 A KR 1020090107525A KR 20090107525 A KR20090107525 A KR 20090107525A KR 20100080345 A KR20100080345 A KR 20100080345A
Authority
KR
South Korea
Prior art keywords
command
definition
database
inputs
end user
Prior art date
Application number
KR1020090107525A
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 KR20100080345A publication Critical patent/KR20100080345A/ko

Links

Images

Classifications

    • 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
    • G06F9/453Help systems
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units

Abstract

최소 개의 입력들로 액티비티(activity)를 수행하는 바람직한 명령 시퀀스(preferred sequence of commands)를 최종 사용자에게 프롬프팅(prompting)하기 위한 방법이 개시된다. 그 방법은 컴퓨터 시스템에서 최종 사용자로부터 수신된 입력과, 컴퓨터가 그 최종 사용자 입력을 수신하는 결과로서의 상태 트랜지션들(state transitions), 둘 다를 모니터링함으로써 시작한다. 그 수신된 입력은 그 최종 사용자가 실행하고자 하는 액티비티를 용이하도록 하며, 그 상태 트랜지션들은 그 액티비티를 실행하는 것의 결과이다. 다음으로, 의미있는 방법(meaningful way)으로 그 최종 사용자로부터 수신된 입력을 정의한다. 그런 다음 그 수신된 입력을 그 최종 사용자의 입력과 동일한 액티비티를 수행하는 적어도 하나의 다른 명령 시퀀스들과 비교한다. 마지막으로, 가능한 최소 개의 입력들로 액티비티를 수행하는 바람직한 명령 시퀀스를 그 최종 사용자에게 프롬프팅한다.

Description

최소 개의 입력들로 액티비티를 수행하는 바람직한 명령 시퀀스를 최종 사용자에게 프롬프팅하기 위한 시스템 및 방법{SYSTEM AND METHOD FOR PROMPTING AN END USER WITH A PREFERRED SEQUENCE OF COMMANDS WHICH PERFORMS AN ACTIVITY IN A LEAST NUMBER OF INPUTS}
본 발명은 일반적으로 컴퓨터 프로세스 최적화와 관련되고, 더 상세하게는 주어진 컴퓨터 프로세스를 수행하기 위한 대체할만한(alternative) 더 짧은 방법을 찾아내는 것과 관련된다.
컴퓨터 프로세스의 성공적인 실행에 관한 지식은 주로 최종 사용자(end user)의 마음 속에 있다. 통상적으로, 배운 접근법들, 지름길들, 문제 해결 방법들 등은 거의 문서화되지 않고, 및/또는 다른 사람들과 공유되지 않는다. 그 결과, 각각의 최종 사용자는 그들 자신의 접근법들, 지름길들, 솔루션들 등을 개발해야 한다.
결국, 최종 사용자 각각은 최소 개의 입력들을 사용하여 프로세스를 수행하기 위한 최적의 방법을 결코 배울 수 없고, 및/또는 결코 알아낼 수 없다. 또한, 최종 사용자가 이용할 수 있는 정보는 종종 불완전, 부정확, 또는 진부하다. 따라 서 최종 사용자는 이를 일일이 확인해서 사용해야만 한다.
본 발명은 최소 개의 입력들로 액티비티(activity)를 수행하는 바람직한 명령 시퀀스(preferred sequence of commands)를 최종 사용자에게 프롬프팅(prompting)하기 위한 방법을 제공하며, 상기 방법은,
컴퓨터 시스템에서 상기 액티비티를 수행하는 적어도 하나의 명령을 모니터링하는 단계 - 상기 적어도 하나의 명령은 상기 최종 사용자에 의해 수행됨 -;
상기 컴퓨터 시스템에 존재하는 적어도 하나의 상태 트랜지션(state transition), 즉 변화(change) - 상기 변화는 상기 컴퓨터 시스템이 상기 적어도 하나의 명령을 수신하는 것의 결과임 - 를 모니터링하는 단계;
상기 적어도 하나의 상태 트랜지션에 대해 모니터링하는 단계로부터 상기 적어도 하나의 상태 트랜지션 변화를 확인하는 것에 응답하여, 상기 적어도 하나의 명령에 대한 제1 정의(definition)를 제공하는 단계 - 상기 제1 정의는 상기 적어도 하나의 명령의 기능(function)임 -;
상기 적어도 하나의 명령을, 데이터베이스에 존재하며 상기 제1 정의와 매치하는 제2 정의를 갖는 적어도 하나의 명령 시퀀스(at least one sequence of commands)와 비교하는 단계; 및
상기 최소 개의 입력들로 상기 액티비티를 수행하는 상기 바람직한 명령 시퀀스를 상기 최종 사용자에게 프롬프팅하는 단계 - 상기 바람직한 명령 시퀀스는 상기 비교의 결과로 확인됨 - 를 포함한다.
여기서 사용되는 "액티비티(activity)" 라는 용어는 하나의 동작(action)을 집합적으로(collectively) 수행하는 특정 시퀀스에서, 최종 사용자에 의해 컴퓨터 시스템 내에 입력되는 하나의 명령 시퀀스(a sequence of commands)를 의미한다.
여기서는 본 발명의 일정 실시예들이 설명되지만, 본 발명의 방향 및 범위를 벗어나지 않고서 본 발명에 대한 변경들이 행해질 수 있다는 것이 이해되어야 한다. 본 발명의 범위는 구성요소들의 개수, 재료들, 형태들, 상대적인 배열들 등으로 한정되어서는 아니된다. 나아가, 첨부되는 도면들은 본 발명의 일정 실시예들을 예시하지만, 이러한 도면들은 반드시 동일 스케일로 도시된 것은 아니다.
도 1은 본 발명의 실시예들에 따라서 최소 개의 입력들로 액티비티를 수행하는 바람직한 명령 시퀀스를 최종 사용자에게 프롬프팅하기 위한 방법(100)을 도시한다. 방법(100)은 컴퓨터 상의 최종 사용자의 액티비티들을 모니터링하는 것을 포함하는 단계 102로써 시작한다.
본 발명의 일 실시예에서, 단계 102는 최종 사용자에 의해 수행된 모든 키보드 입력들 및 마우스 움직임들을 모니터링하여 데이터베이스(120)에 로그(log)한다. 단계 102의 완료 후, 방법(100)은 최종 사용자의 액티비티를 내부 컴퓨터 시스템 상태들에 매핑(mapping)하는 것을 포함하는 단계 104로 계속된다.
단계 104는 단계 102에 따라 모니터링된 최종 사용자의 액티비티를 내부 컴퓨터 시스템 상태들에 매핑한다. 본 발명의 일 실시예에서, 단계 104는 내부 상태 모니터를 이용하여 그 컴퓨터 시스템의 내부 변수들을 체크하고 각각의 변수를 내 부 상태에 매핑한다. 최종 사용자의 명령 시퀀스는 그 컴퓨터 시스템으로 하여금 하나의 내부 상태로부터 또 하나의 내부 상태로 이동하도록 한다.
예를 들어, 1) 문자들/이미지들을 하이라이트함(hightlight); 2) <Ctrl> 누름; 및 3) <c> 누름의 시퀀스는 그 하이라이트된 문자들/이미지들이 컴퓨터 시스템의 RAM(random access memory)에 카피되도록 하는 결과를 가져온다. 그 컴퓨터 시스템의 내부 상태는 입력된 시퀀스에 응답하여 변화되었고; RAM은 그 하이라이트된 문자들/이미지들을 수신하여 저장했다.
일부의 상태 트랜지션들(state transitions)은 본 발명에서 그다지 중요하지 않으나(즉, 응용프로그램 열기, 응용프로그램 종료, 응용프로그램들 간의 전환 등), 다른 일부의 트랜지션들은 명령의 완료 또는 액티비티의 완료를 포함(imply)한다. 이들 트랜지션들은 최종 사용자의 액티비티로부터 성공적인 명령 시퀀스들을 결정하고 추출하기 위해 사용된다.
최종 사용자 액티비티를 내부 컴퓨터 시스템 상태들에 매핑한 후, 단계 104는 끝나고 방법(100)은 최종 사용자의 액티비티가 이전에 정의되어 있었는지의 여부를 결정하는 것을 포함하는 단계 106으로 계속된다. 최종 사용자가 액티비티를 언제 완료하는지에 관한 결정이 내려질 수 있고, 특히, 최종 사용자에 의해 수행된 시퀀스에서의 명령들의 개수, 최종 사용자에 의해 입력된 마지막 명령 후에 경과되는(accrued) 시간의 길이, 최종 사용자에 의해 입력되는 명령들에 응답하여 변화되는 내부 상태들의 개수(아래 참조) 등이 결정될 수 있다.
본 발명의 일 실시예에서, 단계 106은 캡쳐된(captured) 최종 사용자 액티비 티를 데이터베이스(120)에 저장된 알려진 명령 시퀀스들에 비교한다. 데이터베이스(120)는 단계 102에 따라 캡쳐되거나 방법(100)의 처음에 앞서 미리 로드된 복수의 액티비티들, 및 데이터베이스(120) 내에 저장된 각 액티비티에 대응하는 정의를 함께 포함한다.
만약 데이터베이스(120) 내에 단계 102에 따라 캡쳐된 액티비티가 존재한다면, 단계 106은 응답 "예" 로 리턴하고 방법(100)은 사용자가 방금 입력한 액티비티를 수행하는 다른 명령 시퀀스들(different command sequences)을 비교하는 것을 포함하는 단계 114로 계속된다. 최종 사용자에 의해 입력된 액티비티를 수행하는 다른 명령 시퀀스들은 데이터베이스(120)에 존재하고 각각은 고유의 명령 시퀀스들(unique command sequences)을 갖는다.
그러나, 만약 단계 102에 따른 액티비티 캡쳐가 데이터베이스(120) 내에 존재하지 않는다면, 단계 106은 응답 "아니오" 로 리턴하고 방법(100)은 정의(definition)를 위해 그 입력된 액티비티에서 명령 시퀀스를 파싱(parsing)하는 단계를 포함하는 단계 108로 계속된다.
단계 108은 정의를 위해 단계 102에 따라 캡쳐된 입력된 액티비티에서 명령 시퀀스를 파싱하는 단계를 포함한다. 본 발명의 일 실시예에서, 단계 108은 최종 사용자에 의해 수행되는 액티비티(명령 시퀀스), 특히, 최종 사용자의 액티비티를 모니터링하기 이전의 시스템 관리자와의 프롬프트 및 응답을 통해 최종 사용자에 의해 수행되는 액티비티를 정의한다. 단계 108의 완료 후, 방법(100)은 데이터베이스(120)에 그 정의를 저장하는 것을 포함하는 단계 112로 계속된다.
본 발명의 다른 실시예에서, 단계 108은 최종 사용자에 의해 입력된 액티비티에서의 각각의 명령으로부터 의미있는 키워드들을 추출하기 위해 언어 파싱 엔진(language parsing engine)을 이용한다. 예를 들어, 1) 문자들/이미지들을 하이라이트함; 2) <Ctrl> 누름; 3) <c> 누름; 및 4) 그 하이라이트된 문자들/이미지들을 RAM에 카피(Copy)하는 것의 시퀀스에서, 의미있는 키워드들은 'highlight', 'Ctrl', 'C', 및 'Copy' 일 수 있다.
단계 108의 완료 후, 방법(100)은 단계 108에 따라 파싱된 명령 네임들(command names)의 중요성을 계산하는 것을 포함하는 단계 110으로 계속된다.
본 발명의 일 실시예에서, 단계 110은 디지털 사전(즉, WordNet)을 이용하여 최종 사용자에 의해 수행되는 액티비티에서의 명령에 대응하는 각각의 명령 네임의 중요성을 결정할 수 있다. 반복적이며 덜 중요한 명령 네임들은 제거되고 남는 것은 최종 사용자에 의해 수행되는 액티비티를 정의하기 위해 방법(100)에 의해 사용되는 정의이다. 본 발명의 일 실시예에서, 각각의 명령 네임에 대한 더 큰 및/또는 더 작은 중요성은 사전의 워드들의 시맨틱 계층적 트리(semantic hierarchical tree)에서의 단어의 뎁스(depth)에 의해 결정된다.
예를 들어, 키워드들 'highlight', 'Ctrl', 'C', 및 'Copy'에서, 키워드들 'Ctrl' 및 'C'은 수행된 액티비티에 대한 의미를 거의 전달하지 못하여 단계 110에 의해 제거될 것이다. 이와 유사하게, 'highlight' 는 키워드 'Copy'에 비해 덜 중요하여 단계 110에 의해 또한 제거될 것이다. 남는 키워드인 'Copy'는 단계 102에 따라 최종 사용자에 의해 수행된 액티비티에 대응하는 정의가 될 것이다.
단계 110의 완료 후, 방법(110)은 데이터베이스(120)에 정의를 저장하는 것을 포함하는 단계 112로 계속된다.
본 발명의 일 실시예에서, 단계 112는 단계 108 및 110에 따라 결정된 정의를 데이터베이스(120)에 저장한다. 더욱이, 단계 112는 결정된 정의를 최종 사용자에 의해 입력된 액티비티와 상관(correlate)시킨다. 그리하여, 데이터베이스(120)는 그 정의 및 액티비티를 수신하여, 비교들을 위해 데이터베이스(120) 내에 저장한다. 단계 112의 완료 후, 방법(100)은 단계 102에 따라 캡쳐된 동일 액티비티를 수행하는 다른 명령 시퀀스들을 비교하는 것을 포함하는 단계 114로 계속된다.
본 발명의 일 실시예에서, 단계 114는 단계 102에 따라 최종 사용자에 의해 수행되는 액티비티에 할당된 정의와 상관되는 데이터베이스(120)에 존재하는 모든 명령 시퀀스들을 찾아낸다(loacte). 찾아진(located) 명령 시퀀스들 모두는 단계 102에 따라 캡쳐된 액티비티와 동일한 액티비티를 수행한다. 그러나 각각의 찾아진(located) 명령 시퀀스는 다른 명령들 및/또는 시퀀스들에 의해 그 액티비티를 수행한다.
모든 관련 명령 시퀀스들을 찾은 후, 단계 114는 그 액티비티를 수행하기 위한 최적 시퀀스를 확인하기 위해 각각의 명령 시퀀스를 비교한다. 최적 시퀀스는 특히 최종 사용자에 의해 입력된 최소 개의 명령들을 갖는 시퀀스로서, 그 시퀀스는 최소 개의 내부 상태 트랜지션들이 수행되도록 하며, 그 시퀀스는 최소 개의 보드 키들이 최종 사용자에 의해 타이핑되도록 하며, 그 시퀀스는 가장 많은 키보드 키들이 최종 사용자에 의해 타이핑되도록 할 수도 있다. 관리자는 방법(100)의 시 작 단계 전에 방법(100)에 의해 어느 최적의 레벨이 사용되는지에 관한 결정을 할 수 있다. 최종 사용자에 의해 실행되는 액티비티를 수행할 수 있는 다른 명령 시퀀스들은 또한 다음의 단계 116에 대해 사용하기 위해 수치적으로 레이팅될(rated) 수 있다.
예를 들어, 단계 114는 'Copy'를 위한 대체(alternative) 명령 시퀀스 - 예를 들어 1) 문자들/이미지들을 하이라이트함; 2) 'Edit' 누름 ; 3) 'Copy' 입력 ; 및 4) RAM에 그 하이라이트된 문자들/이미지들을 기록함 - 를 찾아낸다. 단계 114는 그 액티비티 'Copy'를 위한 이 명령 시퀀스를 최종 사용자에 의해 입력된 시퀀스, 즉, 1) 문자들/이미지들을 하이라이트함; 2) <Ctrl> 누름; 및 3) <c> 누름 및 4) RAM에 그 하이라이트된 문자들/이미지들을 기록하는 시퀀스와 비교할 수 있다. 위의 명령 시퀀스들은 둘 다 4 단계들을 포함하므로, 단계들의 개수는 명령 시퀀스가 최적이라는 적절한 표시(indication)는 아닐 것이다. 만약 타이핑된 키보드 키들의 가장 많은 숫자가 측정기준(metric)이라면, 최종 사용자에 의해 입력되는 명령 시퀀스는, 데이터 베이스(120)에서 발견되는 명령 시퀀스가 어떠한 키보드 타이핑도 포함하지 않으므로 최적일 것이다. 이와 유사하게, 만약 타이핑된 키보드 키들의 가장 적은 숫자가 측정기준이라면, 데이터베이스(120)에서 발견되는 명령 시퀀스는, 그것이 어떠한 키보드 사용도 전혀 포함하지 않으므로 최적일 것이다.
단계 114의 완료 후, 방법(110)은 단계 102에 따른 최종 사용자에 의해 입력된 명령 시퀀스가 상기 입력된 시퀀스에 상관되는 액티비티를 수행하기 위한 최적 명령 시퀀스인지의 여부를 결정하는 것을 포함하는 단계 116으로 계속된다. 본 발 명의 일 실시예에서, 단계 116은 최종 사용자에 의해 입력된 명령 시퀀스에 관련된 레이팅(rating)과 상기 액티비티에 대응하는 데이터베이스(120)에서 발견되는 가장 높게 레이팅된 명령 시퀀스를 비교한다.
만약 단계 102에 따라 최종 사용자에 의해 입력된 명령 시퀀스의 레이팅이 상기 액티비티에 대응하는 데이터베이스(120)에서 발견되는 가장 높게 레이팅된 명령 시퀀스와 동일하거나 더 크다면, 단계 116은 응답 "예" 로 리턴하며 방법(100)은 끝난다. 그러나, 만약 단계 102에 따라 최종 사용자에 의해 입력된 명령 시퀀스의 레이팅이 상기 액티비티에 대응하는 데이터베이스(120)에서 발견되는 가장 높게 레이팅된 명령 시퀀스보다 더 작다면, 단계 116은 응답 '아니오'로 리턴하고 방법(100)은 상기 액티비티에 대응하는 데이터베이스(120)에서 발견되는 더 높게 레이팅된 명령 시퀀스를 최종 사용자에게 프롬프팅하는 것을 포함하는 단계 118로 계속된다.
본 발명의 일 실시예에서, 단계 118은 출력 디바이스(910)에 의해 최종 사용자에 대한 하나의 프롬프트(a prompt)를 보낸다(아래의 도 2 참조). 그 프롬프트는 더 높은 레이팅을 가지며 데이터베이스(120)에 존재하는 명령 시퀀스와 함께 단계 102에 따라 입력된 최종 사용자의 액티비티에 대한 정의를 포함한다. 최종 사용자에게 보내지고 있는 그 프롬프트의 결과는, 상기 최종 사용자가 더 효율적 및/또는 더 적은 명령들을 갖는 사전에 실행된 액티비티를 수행하는 방법에 관해 그 컴퓨터 시스템으로부터 정보를 받는다는 것이다. 단계 118의 완료 후, 방법(100)은 끝난다.
도 2는 본 발명의 실시예들에 따라서 최소 개의 입력들로 액티비티를 수행하는 바람직한 명령 시퀀스를 최종 사용자에게 프롬프팅하기 위한 명령들을 용이하게 할 수 있는 컴퓨터 시스템(900)을 도시한다.
컴퓨터 시스템(900)은 프로세스(908), 프로세스(908)에 결합된 입력 디바이스(906), 프로세스(908)에 결합된 출력 디바이스(910), 및 프로세서(908)에 각각 결합된 메모리 디바이스들(902 및 912)을 포함한다.
입력 디바이스(906)는, 특히, 키보드, 마우스, 키패드, 터치스크린, 음성 인식 디바이스, 센서, 네트워크 인터페이스 카드(network interface card, NIC), VoIP(Voice/video over Internet Protocol), 무선 어댑터, 전화 어댑터, 전용 회로 어댑터 등일 수 있다. 출력 디바이스(910)는, 특히, 프린터, 플로터, 컴퓨터 스크린, 자기 테이프, 착탈식 하드 디스크, 플로피 디스크, NIC, VoIP 어댑터, 무선 어댑터, 전화 어댑터, 전용 회로 어댑터, 오디오 및/또는 비쥬얼 신호 발생기, 발광 다이오드(LED) 등일 수 있다.
메모리 디바이스들(902 및 912)은, 특히, 캐쉬 메모리, RAM, ROM, 하드 디스크, 플로피 디스크, 자기 테이프, CD와 같은 광 스토리지 또는 DVD 등일 수 있다. 메모리 디바이스(912)는 컴퓨터 실행가능 명령들을 포함하는 컴퓨터 프로그램인 컴퓨터 코드(914)를 포함한다.
컴퓨터 코드(914)는, 특히, 본 발명에 따라 최소 개의 입력들로 액티비티를 수행하는 바람직한 명령 시퀀스를 최종 사용자에게 프롬프팅하기 위해 사용되는 알고리즘을 포함한다. 프로세서(908)는 컴퓨터 코드(914)를 실행한다. 메모리 디바이 스(902)는 입력 데이터(904)를 포함한다. 입력 데이터(904)는 컴퓨터 코드(914)에 의해 요구되는 입력을 포함한다. 출력 디바이스(910)는 컴퓨터 코드(914)로부터의 출력을 디스플레이한다. 메모리 디바이스들 902 및 912(또는 도 2에 도시되지 않은 하나 또는 그 이상의 추가 메모리 디바이스들) 중 어느 하나 또는 둘 다는 컴퓨터 판독가능 프로그램을 갖는 컴퓨터 사용가능 매체(또는 컴퓨터 판독가능 매체 또는 프로그램 스토리지 디바이스)로서 사용될 수 있다. 상기 컴퓨터 판독가능 프로그램은 상기 컴퓨터 사용가능 매체 내에 구현되고, 및/또는 상기 컴퓨터 사용가능 매체 내에 저장된 다른 데이터를 가지며, 여기서 상기 컴퓨터 판독가능 프로그램은 컴퓨터 코드(914)를 포함한다. 일반적으로, 컴퓨터 시스템(900)의 컴퓨터 프로그램 제품(또는, 다르게는, 제조의 한 품목)은 상기 컴퓨터 사용가능 매체(또는 상기 프로그램 스토리지 디바이스)를 포함할 수 있다.
본 발명의 구성요소들 중 어떤 것은 최소 개 입력들로 액티비티를 수행하는 바람직한 명령 시퀀스를 최종 사용자에게 프롬프팅하기 위한 프로세스에 관한 컴퓨팅 기반구조를 배치 또는 통합하기 위해 제공되는 서비스 제공자에 의해 배치, 관리, 서비스될 수 있다. 그리하여, 본 발명은 컴퓨팅 시스템(예, 컴퓨팅 시스템 900) 내에 컴퓨터 판독가능 코드를 통합, 호스팅, 유지 및 배치하는 것을 포함하는 컴퓨터 기반구조를 지원하기 위한 프로세스를 개시한다. 여기서 컴퓨팅 시스템과 관련되는 상기 코드는 최소 개의 입력들로 액티비티를 수행하는 바람직한 명령 시퀀스를 최종 사용자에게 프롬프팅하기 위한 방법을 수행할 수 있다.
또 다른 실시예에서, 본 발명은 가입(subscription), 광고 및/또는 요금 기 반으로 본 발명의 프로세스 단계들을 수행하는 사업 방법을 제공한다. 즉, 솔루션 인티그레이터(Solution Integrator)와 같은 서비스 제공자는 최소 개의 입력들로 액티비티를 수행하는 바람직한 명령들 시퀀스를 최종 사용자에게 프롬프팅하기 위한 프로세스를 생성, 유지, 지원하도록 제공할 수 있다. 이 경우, 서비스 제공자는 하나 또는 그 이상의 고객들에 대해 발명의 프로세스 단계들을 수행하는 컴퓨터 기반구조를 생성, 유지, 지원할 수 있다. 또한, 서비스 제공자는 가입 및/또는 요금 합의(agreement)하에 있는 고객(들)로부터 요금을 받을 수 있고, 및/또는 서비스 제공자는 하나 또는 그 이상의 제3 자들에게 광고 컨텐츠의 판매로부터 요금을 받을 수 있다.
도 2는 하드웨어와 소프트웨어의 특정 구성으로서 컴퓨터 시스템(900)을 보여주고 있지만, 당해 기술 분야에서 통상의 지식을 가진 자라면 알 수 있는 하드웨어와 소프트웨어의 임의의 구성은 도 2의 특정 컴퓨터 시스템(900)과 함께 앞서 언급된 목적들을 위해 이용될 수 있다. 예를 들어, 메모리 디바이스들(902 및 912)은 개별 메모리 디바이스들이라기보다는 오히려 하나의 메모리 디바이스의 부분들일 수 있다.
본 발명의 특정 실시예들은 여기서는 예시의 목적으로 설명되고 있지만, 많은 개조 및 변경이 있을 수 있다는 것은 당해 기술 분야에서의 숙련된 자들에게는 분명할 것이다. 따라서, 첨부되는 청구항들은 본 발명의 진정한 사상 및 범위 내에 들어오는 모든 개조들 및 변경들을 포함하도록 의도된다.
도 1은 본 발명의 실시예들에 따라서 최소 개의 입력들로 액티비티를 수행하는 바람직한 명령 시퀀스를 최종 사용자에게 프롬프팅하기 위한 방법을 도시한다.
도 2는 본 발명의 실시예들에 따라서 최소 개의 입력들로 액티비티를 수행하는 바람직한 명령 시퀀스를 최종 사용자에게 프롬프팅하기 위한 방법을 용이하도록 할 수 있는 컴퓨터 시스템을 도시한다.

Claims (24)

  1. 최소 개의 입력들로 액티비티(activity)를 수행하는 바람직한 명령 시퀀스(preferred sequence of commands)를 최종 사용자에게 프롬프팅(prompting)하기 위한 방법에 있어서,
    컴퓨터 시스템에서 상기 액티비티를 수행하는 적어도 하나의 명령을 모니터링하는 단계 - 상기 적어도 하나의 명령은 상기 최종 사용자에 의해 수행됨 -;
    상기 컴퓨터 시스템에 존재하는 적어도 하나의 상태 트랜지션(state transition), 즉 변화(change) - 상기 변화는 상기 컴퓨터 시스템이 상기 적어도 하나의 명령을 수신하는 것의 결과임 - 를 모니터링하는 단계;
    상기 적어도 하나의 상태 트랜지션에 대해 모니터링하는 단계로부터 상기 적어도 하나의 상태 트랜지션 변화를 확인하는 것에 응답하여, 상기 적어도 하나의 명령에 대한 제1 정의(definition)를 제공하는 단계 - 상기 제1 정의는 상기 적어도 하나의 명령의 기능(function)임 -;
    상기 적어도 하나의 명령을, 데이터베이스에 존재하며 상기 제1 정의와 매치하는 제2 정의를 갖는 적어도 하나의 명령 시퀀스(at least one sequence of commands)와 비교하는 단계; 및
    상기 최소 개의 입력들로 상기 액티비티를 수행하는 상기 바람직한 명령 시퀀스를 상기 최종 사용자에게 프롬프팅하는 단계 - 상기 바람직한 명령 시퀀스는 상기 비교의 결과로 확인됨 - 를 포함하는, 방법.
  2. 청구항 1에 있어서, 상기 제1 정의를 제공하는 단계는,
    상기 적어도 하나의 명령으로부터 적어도 하나의 네임(name)을 파싱(parsing)하는 단계 - 상기 적어도 하나의 네임의 네임 각각은 상기 적어도 하나의 명령의 고유의 명령(unique command)에 대응함 -;
    상기 적어도 하나의 네임의 네임 각각에 대한 값을 결정하는 단계 - 상기 값은 상기 네임 각각이 존재하는 계층적 사전(hierarchical dictionary)에서의 레벨임 -; 및
    가장 높은 상기 레벨을 갖는 상기 적어도 하나의 네임으로부터 한 네임을 상기 제1 정의로서 선택하는 단계를 더 포함하는, 방법.
  3. 청구항 2에 있어서, 상기 제1 정의를 제공하는 단계는,
    상기 적어도 하나의 명령이 상기 데이터베이스에 이미 존재하는지의 여부를 확인하는 단계; 및
    상기 확인하는 단계로부터 상기 적어도 하나의 명령이 상기 데이터베이스에 존재하지 않는다는 것이 결정된다면, 상기 적어도 하나의 명령 및 상기 제1 정의를 상기 데이터베이스에 저장하는 단계 - 상기 제1 정의는 상기 적어도 하나의 명령과 상관(correlate)됨 - 를 더 포함하는, 방법.
  4. 청구항 2에 있어서, 상기 제1 정의를 제공하는 단계는,
    상기 적어도 하나의 명령이 상기 데이터베이스에 이미 존재하는지의 여부를 확인하는 단계; 및
    상기 확인하는 단계로부터 상기 적어도 하나의 명령이 상기 데이터베이스에 존재한다는 것이 결정된다면, 상기 제1 정의를 상기 데이터베이스에 저장하는 단계 - 상기 제1 정의는 상기 적어도 하나의 명령과 상관(correlate)됨 - 를 더 포함하는, 방법.
  5. 청구항 1에 있어서, 상기 비교하는 단계는,
    상기 제1 정의와 매치하는 상기 제2 정의를 갖는 상기 적어도 하나의 명령 시퀀스를 상기 데이터베이스에서 검색(search)하는 단계;
    상기 적어도 하나의 명령 시퀀스에서 명령 시퀀스 각각에 대해, 상기 최종 사용자가 상기 액티비티를 수행하기 위해 입력해야 하는 입력들의 총 수를 확인하는 단계;
    상기 적어도 하나의 명령 시퀀스에서 상기 명령 시퀀스 각각에 대해, 입력들의 상기 총 수(said total number of inputs)를 상기 최종 사용자가 상기 적어도 하나의 명령을 위해 입력한 입력들의 수와 비교하는 단계; 및
    상기 적어도 하나의 명령 및 상기 적어도 하나의 명령 시퀀스로부터 상기 바람직한 명령 시퀀스를 확인하는 단계 - 상기 바람직한 명령 시퀀스는 상기 최종 사용자가 상기 액티비티를 수행하기 위해 입력해야 하는 입력들의 가장 낮은 총 수를 가짐 - 를 더 포함하는, 방법.
  6. 청구항 1에 있어서, 상기 최소 수의 입력들의 입력 각각은, 키보드, 마우스, 키패드, 터치스크린, 음성 인식 디바이스, 센서, 네트워크 인터페이스 카드(NIC), VoIP(Voice/video over Internet Protocol) 어댑터, 무선 어댑터. 전화 어댑터, 및 전용 회로 어댑터로부터 선택된 하나의 디바이스로부터 수신되는, 방법.
  7. 컴퓨터 사용가능 스토리지 매체를 포함하는 컴퓨터 프로그램 제품으로서, 상기 컴퓨터 사용가능 스토리지 매체는 상기 컴퓨터 사용가능 스토리지 매체 내에 저장되는 컴퓨터 판독가능 프로그램 코드를 가지며, 상기 컴퓨터 판독가능 프로그램 코드는 컴퓨터 시스템의 프로세서에 의해 실행될 때 최소 개의 입력들로 액티비티를 수행하는 바람직한 명령 시퀀스를 최종 사용자에게 프롬프팅하기 위한 방법을 실행하는 명령들을 포함하며, 상기 방법은,
    컴퓨터 시스템에서 상기 액티비티를 수행하는 적어도 하나의 명령을 모니터링하는 단계 - 상기 적어도 하나의 명령은 상기 최종 사용자에 의해 수행됨 -;
    상기 컴퓨터 시스템에 존재하는 적어도 하나의 상태 트랜지션(state transition), 즉 변화(change) - 상기 변화는 상기 컴퓨터 시스템이 상기 적어도 하나의 명령을 수신하는 것의 결과임 - 를 모니터링하는 단계;
    상기 적어도 하나의 상태 트랜지션에 대해 모니터링하는 단계로부터 상기 적어도 하나의 상태 트랜지션 변화를 확인하는 것에 응답하여, 상기 적어도 하나의 명령에 대한 제1 정의(definition)를 제공하는 단계 - 상기 제1 정의는 상기 적어 도 하나의 명령의 기능(function)임 -;
    상기 적어도 하나의 명령을, 데이터베이스에 존재하며 상기 제1 정의와 매치하는 제2 정의를 갖는 적어도 하나의 명령 시퀀스(at least one sequence of commands)와 비교하는 단계; 및
    상기 최소 개의 입력들로 상기 액티비티를 수행하는 상기 바람직한 명령 시퀀스를 상기 최종 사용자에게 프롬프팅하는 단계 - 상기 바람직한 명령 시퀀스는 상기 비교의 결과로 확인됨 - 를 포함하는, 컴퓨터 프로그램 제품.
  8. 청구항 7에 있어서, 상기 제1 정의를 제공하는 단계는,
    상기 적어도 하나의 명령으로부터 적어도 하나의 네임(name)을 파싱(parsing)하는 단계 - 상기 적어도 하나의 네임의 네임 각각은 상기 적어도 하나의 명령의 고유의 명령(unique command)에 대응함 -;
    상기 적어도 하나의 네임의 네임 각각에 대한 값을 결정하는 단계 - 상기 값은 상기 네임 각각이 존재하는 계층적 사전(hierarchical dictionary)에서의 레벨임 -; 및
    가장 높은 상기 레벨을 갖는 상기 적어도 하나의 네임으로부터 한 네임을 상기 제1 정의로서 선택하는 단계를 더 포함하는, 컴퓨터 프로그램 제품.
  9. 청구항 8에 있어서, 상기 제1 정의를 제공하는 단계는,
    상기 적어도 하나의 명령이 상기 데이터베이스에 이미 존재하는지의 여부를 확인하는 단계; 및
    상기 확인하는 단계로부터 상기 적어도 하나의 명령이 상기 데이터베이스에 존재하지 않는다는 것이 결정된다면, 상기 적어도 하나의 명령 및 상기 제1 정의를 상기 데이터베이스에 저장하는 단계 - 상기 제1 정의는 상기 적어도 하나의 명령과 상관됨 - 를 더 포함하는, 컴퓨터 프로그램 제품.
  10. 청구항 8에 있어서, 상기 제1 정의를 제공하는 단계는,
    상기 적어도 하나의 명령이 상기 데이터베이스에 이미 존재하는지의 여부를 확인하는 단계; 및
    상기 확인하는 단계로부터 상기 적어도 하나의 명령이 상기 데이터베이스에 존재한다는 것이 결정된다면, 상기 제1 정의를 상기 데이터베이스에 저장하는 단계 - 상기 제1 정의는 상기 적어도 하나의 명령과 상관(correlate)됨 - 를 더 포함하는, 컴퓨터 프로그램 제품.
  11. 청구항 7에 있어서, 상기 비교하는 단계는,
    상기 제1 정의와 매치하는 상기 제2 정의를 갖는 상기 적어도 하나의 명령 시퀀스를 상기 데이터베이스에서 검색(search)하는 단계;
    상기 적어도 하나의 명령 시퀀스에서 명령 시퀀스 각각에 대해, 상기 최종 사용자가 상기 액티비티를 수행하기 위해 입력해야 하는 입력들의 총 수를 확인하는 단계; 및
    상기 적어도 하나의 명령 시퀀스에서 상기 명령 시퀀스 각각에 대해, 입력들의 상기 총 수(said total number of inputs)를 상기 최종 사용자가 상기 적어도 하나의 명령을 위해 입력한 입력들의 수와 비교하는 단계; 및
    상기 적어도 하나의 명령 및 상기 적어도 하나의 명령 시퀀스로부터 상기 바람직한 명령 시퀀스를 확인하는 단계 - 상기 바람직한 명령 시퀀스는 상기 최종 사용자가 상기 액티비티를 수행하기 위해 입력해야 하는 입력들의 가장 낮은 총 수를 가짐 - 를 더 포함하는, 컴퓨터 프로그램 제품.
  12. 청구항 7에 있어서, 상기 최소 수의 입력들의 입력 각각은, 키보드, 마우스, 키패드, 터치스크린, 음성 인식 디바이스, 센서, 네트워크 인터페이스 카드(NIC), VoIP(Voice/video over Internet Protocol) 어댑터, 무선 어댑터, 전화 어댑터, 및 전용 회로 어댑터로부터 선택된 하나의 디바이스로부터 수신되는, 컴퓨터 프로그램 제품.
  13. 컴퓨터 판독가능 메모리 유닛에 결합된 프로세서를 포함하는 컴퓨팅 시스템에 있어서, 상기 메모리 유닛은 소프트웨어 어플리케이션을 포함하며, 상기 소프트웨어 어플리케이션은 상기 프로세서에 의해 실행될 때 최소 개의 입력들로 액티비티를 수행하는 바람직한 명령 시퀀스를 최종 사용자에게 프롬프팅하기 위한 방법을 실행하는 명령들을 포함하며, 상기 방법은,
    컴퓨터 시스템에서 상기 액티비티를 수행하는 적어도 하나의 명령을 모니터 링하는 단계 - 상기 적어도 하나의 명령은 상기 최종 사용자에 의해 수행됨 -;
    상기 컴퓨터 시스템에 존재하는 적어도 하나의 상태 트랜지션(state transition), 즉 변화(change) - 상기 변화는 상기 컴퓨터 시스템이 상기 적어도 하나의 명령을 수신하는 것의 결과임 - 를 모니터링하는 단계;
    상기 적어도 하나의 상태 트랜지션에 대해 모니터링하는 단계로부터 상기 적어도 하나의 상태 트랜지션 변화를 확인하는 것에 응답하여, 상기 적어도 하나의 명령에 대한 제1 정의(definition)를 제공하는 단계 - 상기 제1 정의는 상기 적어도 하나의 명령의 기능(function)임 -;
    상기 적어도 하나의 명령을, 데이터베이스에 존재하며 상기 제1 정의와 매치하는 제2 정의를 갖는 적어도 하나의 명령 시퀀스(at least one sequence of commands)와 비교하는 단계; 및
    상기 최소 개의 입력들로 상기 액티비티를 수행하는 상기 바람직한 명령 시퀀스를 상기 최종 사용자에게 프롬프팅하는 단계 - 상기 바람직한 명령 시퀀스는 상기 비교의 결과로 확인됨 - 를 포함하는, 컴퓨팅 시스템.
  14. 청구항 13에 있어서, 상기 제1 정의를 제공하는 단계는,
    상기 적어도 하나의 명령으로부터 적어도 하나의 네임(name)을 파싱(parsing)하는 단계 - 상기 적어도 하나의 네임의 네임 각각은 상기 적어도 하나의 명령의 고유의 명령(unique command)에 대응함 -;
    상기 적어도 하나의 네임의 네임 각각에 대한 값을 결정하는 단계 - 상기 값 은 상기 네임 각각이 존재하는 계층적 사전(hierarchical dictionary)에서의 레벨임 -; 및
    가장 높은 상기 레벨을 갖는 상기 적어도 하나의 네임으로부터 한 네임을 상기 제1 정의로서 선택하는 단계를 더 포함하는, 컴퓨팅 시스템.
  15. 청구항 14에 있어서, 상기 제1 정의를 제공하는 단계는,
    상기 적어도 하나의 명령이 상기 데이터베이스에 이미 존재하는지의 여부를 확인하는 단계; 및
    상기 확인하는 단계로부터 상기 적어도 하나의 명령이 상기 데이터베이스에 존재하지 않는다는 것이 결정된다면, 상기 적어도 하나의 명령 및 상기 제1 정의를 상기 데이터베이스에 저장하는 단계 - 상기 제1 정의는 상기 적어도 하나의 명령과 상관(correlate)됨 - 를 더 포함하는, 컴퓨팅 시스템.
  16. 청구항 14에 있어서, 상기 제1 정의를 제공하는 단계는,
    상기 적어도 하나의 명령이 상기 데이터베이스에 이미 존재하는지의 여부를 확인하는 단계; 및
    상기 확인하는 단계로부터 상기 적어도 하나의 명령이 상기 데이터베이스에 존재한다는 것이 결정된다면, 상기 제1 정의를 상기 데이터베이스에 저장하는 단계 - 상기 제1 정의는 상기 적어도 하나의 명령과 상관(correlate)됨 - 를 더 포함하는, 컴퓨팅 시스템.
  17. 청구항 13에 있어서, 상기 비교하는 단계는,
    상기 제1 정의와 매치하는 상기 제2 정의를 갖는 상기 적어도 하나의 명령 시퀀스를 상기 데이터베이스에서 검색(search)하는 단계;
    상기 적어도 하나의 명령 시퀀스에서 명령 시퀀스 각각에 대해, 상기 최종 사용자가 상기 액티비티를 수행하기 위해 입력해야 하는 입력들의 총 수를 확인하는 단계;
    상기 적어도 하나의 명령 시퀀스에서 상기 명령 시퀀스 각각에 대해, 입력들의 상기 총 수(said total number of inputs)를 상기 최종 사용자가 상기 적어도 하나의 명령을 위해 입력한 입력들의 수와 비교하는 단계; 및
    상기 적어도 하나의 명령 및 상기 적어도 하나의 명령 시퀀스로부터 상기 바람직한 명령 시퀀스를 확인(identify)하는 단계 - 상기 바람직한 명령 시퀀스는 상기 최종 사용자가 상기 액티비티를 수행하기 위해 입력해야 하는 입력들의 가장 낮은 총 수를 가짐 - 를 더 포함하는, 컴퓨팅 시스템.
  18. 청구항 13에 있어서, 상기 최소 수의 입력들의 입력 각각은, 키보드, 마우스, 키패드, 터치스크린, 음성 인식 디바이스, 센서, 네트워크 인터페이스 카드(NIC), VoIP(Voice/video over Internet Protocol) 어댑터, 무선 어댑터, 전화 어댑터, 및 전용 회로 어댑터로부터 선택된 하나의 디바이스로부터 수신되는, 컴퓨팅 시스템.
  19. 컴퓨터 기반구조를 지원하기 위한 프로세스에 있어서, 상기 프로세스는 컴퓨팅 시스템에 컴퓨터 판독가능 코드를 생성, 통합, 호스팅(hosting), 유지(maintain), 배치(deploy)하는 것 중 적어도 하나를 위한 적어도 하나의 지원 서비스를 제공하는 것을 포함하며, 상기 코드는 상기 컴퓨팅 시스템과 결합하여 최소 수 개의 입력들로 액티비티를 수행하는 바람직한 명령들 시퀀스를 최종 사용자에게 프롬프팅하기 위한 방법을 실행할 수 있으며, 상기 방법은,
    컴퓨터 시스템에서 상기 액티비티를 수행하는 적어도 하나의 명령을 모니터링하는 단계 - 상기 적어도 하나의 명령은 상기 최종 사용자에 의해 수행됨 -;
    상기 컴퓨터 시스템에 존재하는 적어도 하나의 상태 트랜지션(state transition), 즉 변화(change) - 상기 변화는 상기 컴퓨터 시스템이 상기 적어도 하나의 명령을 수신하는 것의 결과임 - 를 모니터링하는 단계;
    상기 적어도 하나의 상태 트랜지션에 대해 모니터링하는 단계로부터 상기 적어도 하나의 상태 트랜지션 변화를 확인하는 것에 응답하여, 상기 적어도 하나의 명령에 대한 제1 정의(definition)를 제공하는 단계 - 상기 제1 정의는 상기 적어도 하나의 명령의 기능(function)임 -;
    상기 적어도 하나의 명령을, 데이터베이스에 존재하며 상기 제1 정의와 매치하는 제2 정의를 갖는 적어도 하나의 명령 시퀀스(at least one sequence of commands)와 비교하는 단계; 및
    상기 최소 개의 입력들로 상기 액티비티를 수행하는 상기 바람직한 명령 시 퀀스를 상기 최종 사용자에게 프롬프팅하는 단계 - 상기 바람직한 명령 시퀀스는 상기 비교의 결과로 확인됨 - 를 포함하는, 컴퓨터 기반구조 지원 프로세스.
  20. 청구항 19에 있어서, 상기 제1 정의를 제공하는 단계는,
    상기 적어도 하나의 명령으로부터 적어도 하나의 네임(name)을 파싱(parsing)하는 단계 - 상기 적어도 하나의 네임의 네임 각각은 상기 적어도 하나의 명령의 고유의 명령(unique command)에 대응함 -;
    상기 적어도 하나의 네임의 네임 각각에 대한 값을 결정하는 단계 - 상기 값은 상기 네임 각각이 존재하는 계층적 사전(hierarchical dictionary)에서의 레벨임 -; 및
    가장 높은 상기 레벨을 갖는 상기 적어도 하나의 네임으로부터 한 네임을 상기 제1 정의로서 선택하는 단계를 더 포함하는, 컴퓨터 기반구조 지원 프로세스.
  21. 청구항 20에 있어서, 상기 제1 정의를 제공하는 단계는,
    상기 적어도 하나의 명령이 상기 데이터베이스에 이미 존재하는지의 여부를 확인하는 단계; 및
    상기 확인하는 단계로부터 상기 적어도 하나의 명령이 상기 데이터베이스에 존재하지 않는다는 것이 결정된다면, 상기 적어도 하나의 명령 및 상기 제1 정의를 상기 데이터베이스에 저장하는 단계 - 상기 제1 정의는 상기 적어도 하나의 명령과 상관(correlate)됨 - 를 더 포함하는, 컴퓨터 기반구조 지원 프로세스.
  22. 청구항 20에 있어서, 상기 제1 정의를 제공하는 단계는,
    상기 적어도 하나의 명령이 상기 데이터베이스에 이미 존재하는지의 여부를 확인하는 단계; 및
    상기 확인하는 단계로부터 상기 적어도 하나의 명령이 상기 데이터베이스에 존재한다는 것이 결정된다면, 상기 제1 정의를 상기 데이터베이스에 저장하는 단계 - 상기 제1 정의는 상기 적어도 하나의 명령과 상관(correlate)됨 - 를 더 포함하는, 컴퓨터 기반구조 지원 프로세스.
  23. 청구항 19에 있어서, 상기 비교하는 단계는,
    상기 제1 정의와 매치하는 상기 제2 정의를 갖는 상기 적어도 하나의 명령 시퀀스를 상기 데이터베이스에서 검색(search)하는 단계;
    상기 적어도 하나의 명령 시퀀스에서 명령 시퀀스 각각에 대해, 상기 최종 사용자가 상기 액티비티를 수행하기 위해 입력해야 하는 입력들의 총 수를 확인하는 단계;
    상기 적어도 하나의 명령 시퀀스에서 상기 명령 시퀀스 각각에 대해, 입력들의 상기 총 수(said total number of inputs)를 상기 최종 사용자가 상기 적어도 하나의 명령을 위해 입력한 입력들의 수와 비교하는 단계; 및
    상기 적어도 하나의 명령 및 상기 적어도 하나의 명령 시퀀스로부터 상기 바람직한 명령 시퀀스를 확인(identify)하는 단계 - 상기 바람직한 명령 시퀀스는 상 기 최종 사용자가 상기 액티비티를 수행하기 위해 입력해야 하는 입력들의 가장 낮은 총 수를 가짐 - 를 더 포함하는, 컴퓨터 기반구조 지원 프로세스.
  24. 청구항 19에 있어서, 상기 최소 수의 입력들의 입력 각각은, 키보드, 마우스, 키패드, 터치스크린, 음성 인식 디바이스, 센서, 네트워크 인터페이스 카드(NIC), VoIP(Voice/video over Internet Protocol) 어댑터, 무선 어댑터, 전화 어댑터, 및 전용 회로 어댑터로부터 선택된 하나의 디바이스로부터 수신되는, 컴퓨터 기반구조 지원 프로세스.
KR1020090107525A 2008-12-30 2009-11-09 최소 개의 입력들로 액티비티를 수행하는 바람직한 명령 시퀀스를 최종 사용자에게 프롬프팅하기 위한 시스템 및 방법 KR20100080345A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/346,143 2008-12-30
US12/346,143 US8090750B2 (en) 2008-12-30 2008-12-30 Prompting of an end user with commands

Publications (1)

Publication Number Publication Date
KR20100080345A true KR20100080345A (ko) 2010-07-08

Family

ID=42286112

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090107525A KR20100080345A (ko) 2008-12-30 2009-11-09 최소 개의 입력들로 액티비티를 수행하는 바람직한 명령 시퀀스를 최종 사용자에게 프롬프팅하기 위한 시스템 및 방법

Country Status (3)

Country Link
US (1) US8090750B2 (ko)
KR (1) KR20100080345A (ko)
TW (1) TW201025135A (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180052696A1 (en) * 2016-08-19 2018-02-22 Microsoft Technology Licensing, Llc Providing teaching user interface activated by user action
CN107564517A (zh) * 2017-07-05 2018-01-09 百度在线网络技术(北京)有限公司 语音唤醒方法、设备及系统、云端服务器与可读介质
CN108665900B (zh) 2018-04-23 2020-03-03 百度在线网络技术(北京)有限公司 云端唤醒方法及系统、终端以及计算机可读存储介质

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5335342A (en) * 1991-05-31 1994-08-02 Tiburon Systems, Inc. Automated software testing system
US5390281A (en) * 1992-05-27 1995-02-14 Apple Computer, Inc. Method and apparatus for deducing user intent and providing computer implemented services
JP2693108B2 (ja) * 1993-10-19 1997-12-24 財団法人ニューメディア開発協会 コンピュータシステム
US6226785B1 (en) * 1994-09-30 2001-05-01 Apple Computer, Inc. Method and apparatus for storing and replaying creation history of multimedia software or other software content
US6021403A (en) 1996-07-19 2000-02-01 Microsoft Corporation Intelligent user assistance facility
DE69811790T2 (de) * 1997-08-01 2003-11-20 Ibm Ableitung von Prozessmodellen aus Rechnungsprüfvorgängen für Systeme zur Verwaltung von Arbeitsflüssen
US6370648B1 (en) * 1998-12-08 2002-04-09 Visa International Service Association Computer network intrusion detection
US6340977B1 (en) * 1999-05-07 2002-01-22 Philip Lui System and method for dynamic assistance in software applications using behavior and host application models
US6690392B1 (en) * 1999-07-15 2004-02-10 Gateway, Inc. Method system software and signal for automatic generation of macro commands
US6792609B1 (en) * 2000-11-16 2004-09-14 International Business Machines Corporation System and method for associating action diaries with a parent class object
US20060184410A1 (en) * 2003-12-30 2006-08-17 Shankar Ramamurthy System and method for capture of user actions and use of capture data in business processes
US8032620B2 (en) * 2004-06-24 2011-10-04 Marlin Scott Method and system for improved in-line management of an information technology network
US7454657B2 (en) * 2004-09-02 2008-11-18 International Business Machines Corporation Method for self-diagnosing remote I/O enclosures with enhanced FRU callouts
US7504931B2 (en) * 2005-03-16 2009-03-17 Gm Global Technology Operations, Inc. Remote feedback for vehicle key fob functions
US8073724B2 (en) * 2005-12-02 2011-12-06 Saudi Arabian Oil Company Systems program product, and methods for organization realignment
JP4901310B2 (ja) * 2006-05-31 2012-03-21 株式会社日立製作所 記憶制御装置及び記憶制御装置のコマンド実行数制御方法
US7669086B2 (en) * 2006-08-02 2010-02-23 International Business Machines Corporation Systems and methods for providing collision detection in a memory system
US20080177623A1 (en) * 2007-01-24 2008-07-24 Juergen Fritsch Monitoring User Interactions With A Document Editing System
US7856294B2 (en) * 2007-12-14 2010-12-21 Sra International, Inc. Intelligent system and method for spacecraft autonomous operations

Also Published As

Publication number Publication date
US20100169291A1 (en) 2010-07-01
TW201025135A (en) 2010-07-01
US8090750B2 (en) 2012-01-03

Similar Documents

Publication Publication Date Title
US9524291B2 (en) Visual display of semantic information
US10169471B2 (en) Generating and executing query language statements from natural language
CN108153800B (zh) 信息处理方法、信息处理装置以及记录介质
US9626622B2 (en) Training a question/answer system using answer keys based on forum content
US9460074B2 (en) Efficient data pattern matching
WO2021017735A1 (zh) 一种智能合约的形式化验证方法、电子装置及存储介质
CN107688488B (zh) 一种基于元数据的任务调度的优化方法及装置
CN110502227B (zh) 代码补全的方法及装置、存储介质、电子设备
KR20190060725A (ko) Sql 검토 방법, 장치, 서버 및 저장 매체
CN104036004B (zh) 搜索纠错方法和搜索纠错装置
AU2017216520A1 (en) Common data repository for improving transactional efficiencies of user interactions with a computing device
US20220058213A1 (en) Systems and methods for identifying dynamic types in voice queries
US9690862B2 (en) Realtime ingestion via multi-corpus knowledge base with weighting
EP2673687A2 (en) Visual display of semantic information
JP2007537515A (ja) 情報を取り出すためのシステムと方法および情報を保存するためのシステムと方法
US10067977B2 (en) Webpage content search
US10885038B2 (en) System and method for adaptive information storage management
US8090750B2 (en) Prompting of an end user with commands
US20140310290A1 (en) Efficient data pattern matching
CN109033082B (zh) 语义模型的学习训练方法、装置及计算机可读存储介质
KR20110094804A (ko) 소프트웨어 재사용을 지원하기 위한 시맨틱 태깅 서버와 그 방법
US20180293508A1 (en) Training question dataset generation from query data
CN114676155A (zh) 代码提示信息的确定方法、数据集的确定方法及电子设备
CN112765200A (zh) 一种基于Elasticsearch的数据查询方法及装置
CN112948419A (zh) 查询语句处理方法及装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
NORF Unpaid initial registration fee