KR20110060808A - 다이나믹 도움말 정보를 제공하는 방법 및 장치 - Google Patents

다이나믹 도움말 정보를 제공하는 방법 및 장치 Download PDF

Info

Publication number
KR20110060808A
KR20110060808A KR1020100114279A KR20100114279A KR20110060808A KR 20110060808 A KR20110060808 A KR 20110060808A KR 1020100114279 A KR1020100114279 A KR 1020100114279A KR 20100114279 A KR20100114279 A KR 20100114279A KR 20110060808 A KR20110060808 A KR 20110060808A
Authority
KR
South Korea
Prior art keywords
help information
user
information
help
providing
Prior art date
Application number
KR1020100114279A
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 KR20110060808A publication Critical patent/KR20110060808A/ko

Links

Images

Classifications

    • 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/957Browsing optimisation, e.g. caching or content distillation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • 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
    • 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/448Execution paradigms, e.g. implementations of programming paradigms
    • 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
    • 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
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/38Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/382Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using citations
    • 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
    • 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/04812Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
    • 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/0489Interaction 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 dedicated keyboard keys or combinations thereof
    • G06F3/04895Guidance during keyboard input operation, e.g. prompting

Abstract

본 발명은 다이나믹 도움말 정보를 제공하기 위한 시스템 및 방법과 관련된다. 특히, 본 발명은 도움말 정보를 제공하기 위한 장치를 제공하는데, 이 장치는 사용자의 적어도 하나의 작업을 수신하고 상기 사용자의 작업 이력 - 상기 작업 이력은 상기 적어도 하나의 작업을 포함함 - 을 획득하도록 구성되는 수신 유닛; 상기 사용자의 작업 이력에 따라 대응하는 도움말 정보를 결정하도록 구성되는 결정 유닛; 및 상기 대응하는 도움말 정보를 획득하도록 구성되는 정보 획득 유닛을 포함한다. 도움말 정보를 제공하는 것을 지원하기 위한 장치가 제공되는데 이 장치는, 사용자의 적어도 하나의 작업을 캡쳐하고 송신하도록 구성되는 캡쳐 유닛, 상기 사용자의 작업 이력 - 상기 작업 이력은 상기 적어도 하나의 작업을 포함함 - 에 대응하는 도움말 정보를 수신하고 표시하도록 구성되는 정보 표시 유닛을 포함한다. 본 발명은 또한 상기 장치들 및 시스템에 대응하는 방법을 제공한다. 본 발명의 장치들 및 방법들로써, 적절한 도움말 정보는 사용자의 작업 이력에 따라 사용자들에게 다이나믹하게 제공될 수 있다.

Description

다이나믹 도움말 정보를 제공하는 방법 및 장치{METHOD AND APPARATUS FOR PROVIDING DYNAMIC HELP INFORMATION}
본 발명은 도움말 정보를 제공하는 것과 관련되고, 더 상세하게는, 다이나믹(dynamic) 온-스팟(on-spot) 도움말 정보를 제공하는 방법 및 장치와 관련된다.
근래에는, 다양한 새로운 어플리케이션들, 특히 웹 어플리케이션들이 잇따라서 나오고 있다. 이들 새로운 어플리케이션들은 점점 더 복잡해지고, 그래서 초심자가 그것들의 사용을 완전히 파악하기 위해서는 많은 노력을 필요로 한다. 그러므로, 이들 새로운 어플리케이션들을 배우도록 사용자들을 효과적으로 트레이닝하고 돕는 방법이 하나의 문제로 되어 왔다.
새로운 웹 어플리케이션들을 배움에 있어서 사용자들을 지원하기 위해, 전통적인 기술들에서는 다양한 접근법들이 채택되어 사용자들에게 도움말 정보를 제공해 왔다. 이들 접근법들은 종이로 된 참고서들, 전자 매뉴얼들(electronic manuals), 온라인 도움말 데스크(online help desk), 멀티미디어 비디오들 또는 가르침을 위한 그림들 및 사운드들이 있는 교육용 프로그램들(course wares) 등을 포함한다. 그러나, 이들 전통적인 방법들은 요즈음의 사용자의 수요들에는 훨씬 뒤떨어진다. 예를 들어, 참고서들 및 전자 매뉴얼들에서 제공되는 정보는 통상 너무 이론적이어서 사용자가 실제로 다양한 작업들을 학습하기에는 불리하다. 온라인 도움말은 문제들을 해결하기에 비교적 더 직접적이고 효과적이지만, 많은 초심자들은 심지어 자신들의 문제를 어떻게 결정하고 설명할 지조차도 모르기 때문에 초심자들에게는 적합하지 않다. 비록 멀티미디어 파일들이 매우 생생(vivid)하고 생동감(lively)이 있지만, 이것들은 충분히 실용적이지 못하고 사용자들의 문제들을 적절하게 알려주지 못한다. 그러므로, 위에서 기술된 전통적인 방법들은 모두 분명하게 결점들을 갖고 있다. 이러한 접근법들의 공통 문제는 그것들이 모두 수동적인(passive) 학습 방법들이라는 점이다. 이들 학습 방법들에 있어서, 사용자들은 어떠한 상호작용, 피드백 또는 실제 참여도 없이 수동적으로 안내사항(guidance)을 단지 읽거나 보기만 할 수 있을 뿐이다. 이러한 한 방향(one-way) 학습 방법들은 학습 효율이 향상되는 것을 방해한다.
특히, 현재의 웹 2.0 환경에 있어서, 상기 전통적인 방법들은 실제로 불리하다. 웹 2.0 환경에서는, 어플리케이션을 풍부하게 하기 위해 웹페이지 상에 많은 창들(windows) 및 위젯들(widgets)이 있어, 그 어플리케이션이 더 바뀔 수 있도록 할 수 있다. 각각의 다른 사용자 작업은 다른 어플리케이션 프로세스 및 다른 아웃룩을 초래할 것이고, 이는 현재의 정적이고, 미리 정해진 도움말 정보가 웹 어플리케이션에서의 가능한 모든 경우들을 커버하는 것이 어렵게 하는 결과를 초래한다.
사용자 관점에서, 이상적이고 효율적인 학습 방법은, 그들이 실제 작업들을 할 때 그들 곁에 온-스팟 가이던스(on-spot guidance)를 제공하는 웹 어플리케이션 전문가를 두는 있는 것이다. 이러한 전문가는 웹 어플리케이션 동작들에 있어서 숙련되어 있고 사용자들의 이전의 동작 단계들을 알기 때문에, 다이나믹하고 적절한 가이던스를 제공할 수 있고, 다음에 어떻게 할지를 사용자들에게 알려줄 수 있다. 기술적인 관점에서, 이러한 전문가 가이던스를 갖는 제품들, 즉 사용자들이 어플리케이션들과 상호작용하고 있을 때 다이나믹하게 단계별로 필요한 도움말 정보를 제공할 수 있는 제품들을 갖는 것이 바람직하다.
이러한 온-스팟 가이던스를 제공하기 위해, 기존 기술들에서 몇몇 새로운 웹 어플리케이션들이 개발되어 왔는데, 이 웹 어플리케이션들은 그들 자신의 기능들을 제공하는 것 이외에 사용자들을 위해 실제 경험 온-스팟 트레이닝(real-experience on-spot training)을 제공할 수 있다. 특히, 이들 웹 어플리케이션들은 사용자들이 서버 측으로 실제 연결을 설정할 수 있도록 하고, 그 연결을 통해 사용자들이 각각의 단계에서 동작할 때 다음으로 무엇을 할지를 그리고 어떻게 할지를 사용자들에게 얘기해 주고 설명해 주기 위해 관련 힌트들 및 프롬프트들을 제공한다. 이러한 프롬프트들 또는 설명들은 학습 인터페이스에서 적절한 위치에 나타날 것이다. 이러한 도움말 정보에 따라, 사용자들은 그 힌트들에 따라서 작업들을 완료할 수 있을 것이고, 이에 따라 대응하는 기능들을 단계적으로 달성할 것이다. 이는 정확히 사용자들이 기대하는 온-스팟 가이던스의 방법이다. 그러나, 위와 같이 온-스팟 가이던스를 제공하는 기존의 제품들에 있어서는 문제가 있다. 즉, 위에서 언급된 온-스팟 힌트들 및 설명들을 지원하기 위해 서버측 상에 코드를 변경(modify)하는 것이 필요하다. 제품 서버측 상의 코드를 변경하는 데에는 엄청난 노력이 필요하고, 또한 유지하기에도 쉽지 않다. 이것이 이러한 온-스팟 가이딩 방법이 아직 대중적이지 않고 널리 사용되지 않는 이유이다. 그러므로, 간단하고 편리한 방법으로 사용자들에게 다이나믹 도움말 정보 및 온-스팟 가이던스를 제공하기 위한 다른 방법이 필요하다.
상기 문제들을 고려하여, 본 발명은 다이나믹 도움말 정보(dynamic help information)를 제공하기 위해, 웹 어플리케이션 서버로부터 분리된, 방법 및 장치를 제공한다.
발명의 제1 측면에 따라, 도움말 정보를 제공하기 위한 장치가 제공되는데, 이 장치는, 사용자의 적어도 하나의 작업을 수신하고 상기 사용자의 작업 이력(operation history) - 상기 작업 이력은 상기 적어도 하나의 작업을 포함함 - 을 입수(get)하도록 구성되는 수신 유닛(receiving unit); 상기 사용자의 작업 이력에 따라 대응하는 도움말 정보를 결정하도록 구성되는 결정 유닛(determining unit); 및 상기 대응하는 도움말 정보를 획득(obtain)하도록 구성되는 정보 획득 유닛(information obtaining unit)을 포함한다.
발명의 제2 측면에 따라, 도움말 정보를 제공하는 것을 지원(assist)하기 위한 장치가 제공되는데, 이 장치는, 사용자의 적어도 하나의 작업을 캡쳐(capture)하고 송신하도록 구성되는 작업 캡쳐 유닛(operation capturing unit); 및 상기 사용자의 작업 이력 - 상기 작업 이력은 상기 적어도 하나의 작업을 포함함 - 에 대응하는 도움말 정보를 수신하고 표시(display)하도록 구성되는 정보 표시 유닛(information displaying unit)을 포함한다.
발명의 제3 측면에 따라, 도움말 정보를 제공하기 위한 시스템이 제공되는데, 이 시스템은, 발명의 제1 측면에 따라 도움말 정보를 제공하기 위한 장치, 및 발명의 제2 측면에 따라 도움말 정보를 제공하는 것을 지원하기 위한 장치를 포함한다.
발명의 제4 측면에 따라, 도움말 정보를 제공하기 위한 방법이 제공되는데, 이 방법은 사용자의 적어도 하나의 작업을 수신하고 상기 사용자의 작업 이력 - 상기 작업 이력은 상기 적어도 하나의 작업을 포함함 - 을 획득하는 단계; 상기 사용자의 작업 이력에 따라 대응하는 도움말 정보를 결정하는 단계; 및 상기 대응하는 도움말 정보를 획득하는 단계를 포함한다.
발명의 제5 측면에 따라, 도움말 정보를 제공하는 것을 지원하기 위한 방법이 제공되는데, 이 방법은, 사용자의 적어도 하나의 작업을 캡쳐하고 송신하는 단계; 및 상기 사용자의 작업 이력 - 상기 작업 이력은 상기 적어도 하나의 작업을 포함함 - 에 대응하는 도움말 정보를 수신하고 표시하는 단계를 포함한다.
본 발명에서 제공되는 장치들, 시스템들, 및 방법들에 있어서, 도움말 정보는 사용자 작업 상황에 따라 특정 맥락에서 상기 사용자에게 적절하게 제공될 수 있다. 나아가, 발명의 시스템 및 방법의 구현은 더 탄력적일 수 있다.
도 1은 발명의 일 실시예에 따른 다이나믹 도움말 정보를 제공하기 위한 시스템을 도시한다.
도 2는 발명의 일 실시예에 따른 지원 장치들의 기능적 블록도이다.
도 3은 발명의 일 실시예에 따른 도움말 정보를 표시하는 시나리오를 도시한다.
도 4는 발명의 또 다른 실시예에 따른 지원 장치의 기능적 블록도이다.
도 5는 발명의 일 실시예에 따른 도움말 정보 제공 장치의 기능적 블록도이다.
도 6은 도움말 정보 저장 장치의 블록도이다.
도 7은 하나의 도움말 정보와 관련된 코드들의 예를 도시한다.
도 8은 발명의 일 실시예에 따른 도움말 정보를 제공하는 것을 지원하기 위한 방법의 흐름도이다.
도 9는 발명의 일 실시예에 따른 도움말 정보를 제공하기 위한 방법의 흐름도이다.
도 10은 발명의 일 실시예에 따른 도움말 정보를 제공 및 표시하기 위한 방법의 흐름도이다.
다음은 도면들을 참조하여 발명의 실시예들이 제시된다. 이하의 상세한 설명은 발명의 범위를 제한하기 위해서 제공된 것이 아니라 발명을 설명하기 위한 것이다.
도 1은 발명의 일 실시예에 따른 다이나믹 도움말 정보를 제공하기 위한 시스템을 도시한다. 도면에 도시된 바와 같이, 시스템은 지원 장치(100), 도움말 정보 제공 장치(200), 및 도움말 정보 저장 장치(300)를 포함한다. 지원 장치(100)는 사용자 작업들을 캡쳐하고 송신하며, 또한 상기 사용자 작업들에 대응하는 도움말 정보를 수신하고 표시하도록 구성된다. 상기 도움말 정보 제공 장치(200)는 사용자 작업들을 수신하고 사용자의 작업 이력을 입수하며, 사용자의 작업 이력에 따라 대응하는 도움말 정보를 결정하도록 구성된다. 도움말 정보 저장 장치(300)는 사용자 작업들에 대응하는 도움말 정보를 저장하도록 구성된다. 이러한 시스템으로써, 사용자가 익숙하지 않은 어플리케이션에 작업하려고 시도할 경우, 지원 장치(100)는 사용자의 작업들을 캡쳐하고 기록할 수 있으며, 그런 다음 그 작업 상황을 도움말 정보 제공 장치(200)로 송신한다. 상기 사용자의 작업 상황을 수신한 후, 도움말 정보 제공 장치(200)는 그 작업 이력에 따라 현재 사용자 상태를 분석하고 결정하며, 이 상황을 상기 대응하는 도움말 정보에 매핑한다. 더 나아가, 도움말 정보 제공 장치(200)는 도움말 정보 저장 장치(300)로부터 필요한 도움말 정보를 검색(retrieve)하고, 그것을 지원 장치(100)로 다시 송신한다. 이러한 도움말 정보가 수신되면, 지원 장치(100)는 적절하게 그 도움말 정보를 사용자에게 표시한다. 이에 따라, 사용자는 어플리케이션을 사용할 때 다이나믹하게 필요한 도움말 정보를 입수할 수 있다.
다음은, 웹 어플리케이션들과 관련지은, 지원 장치(100), 도움말 정보 제공 장치(200), 및 도움말 정보 저장 장치(300)에 관한 설명이다.
도 2는 발명의 일 실시예에 따른 지원 장치의 기능적 블록도이다. 일 예에서, 지원 장치(100)는 클라이언트 측 상의 브라우저에 위치하고, 브라우저 플러그-인(browser plug-in)으로 구현된다. 지원 장치(100)는 기능적으로 작업 캡쳐 유닛(102) 및 정보 표시 유닛(104)을 포함한다. 작업 캡쳐 유닛(102)은 웹 어플리케이션 상에서 사용자에 의해 수행되는 작업들을 캡쳐하고, 그것들을 상기 웹 어플리케이션에 대응하는 도움말 정보 제공 장치(200)로 송신한다. 정보 표시 유닛(104)은 도움말 정보 제공 장치(200)로부터 도움말 정보를 수신하고 그것을 적절한 방법으로 표시하도록 구성된다.
특히, 작업 캡쳐 유닛(102)은 여러 가지 접근법들을 통해 웹 어플리케이션 상의 사용자 작업들을 캡쳐할 수 있다. 일 예에서, 브라우저 플러그-인의 일부로서, 작업 캡쳐 유닛(102)은 마우스 클릭, 마우스 드래그, 키보드 입력 등을 캡쳐함으로써 사용자 작업들을 획득할 수 있다. 일 예에서, 사용자에 대한 작업 이력을 형성하기 위해, 작업 캡쳐 유닛(102)은 나아가 그 획득된 일련의 사용자 작업들을 기록할 수도 있다. 위의 사항들에 기초하여, 작업 캡쳐 유닛(102)은 현재 작업되는 웹 어플리케이션의 식별자(identifier)를 분석하고, 대응하는 도움말 정보 제공 장치(200)를 결정하며, 그 획득된 하나의 작업 단계 또는 다수의 작업 단계들을 대응하는 도움말 정보 제공 장치(200)로 송신하며, 그 기록된 작업 이력을 도움말 정보 제공 장치(200)로 직접 송신한다.
정보 표시 유닛(104)은 다이나믹 도움말 정보를 수신하고 표시하도록 구성된다. 특히, 사용자 작업들에 대응하는 도움말 정보를 수신하는 경우, 정보 표시 유닛(104)은 적절한 방법으로 웹 어플리케이션의 웹 페이지 상의 적절한 위치에 그것을 표시한다. 통상적으로, 그 수신된 도움말 정보는 서술 텍스트(description text) 및 표시 정보(displaying information)를 포함한다. 상기 표시 정보는 표시와 관련된 여러 가지 파라미터들 및 코드들을 포함한다. 상기 표시와 관련된 것들에는, 예를 들어, 표시 형태(displaying form), 표시 위치(displaying position), 표시 창의 투명도(transparency), 폰트, 텍스트의 스타일 및 크기 등이 있다. 일 예에서, 상기 표시 정보는 DIV 및 대응하는 자바스크립트(JavaScript)의 형태로 제공된다. 기존 웹 페이지들은 대부분 층들 및 DOM 트리로 관리되고, DIV는 단지 층들에 있는 그 표시 정보를 정의하는 언어일 뿐이므로, 이러한 형태로의 표시 정보는 기존 웹 페이지들 상에 표시될 때 특히 유리하다. 이 경우, 정보 표시 유닛(104)은 DIV 및 대응하는 자바스크립트를 그 브라우저에서의 현재의 페이지의 DOM 트리 내에 포함(embed)시킨다. 즉, 그것들을 각각 상기 웹 어플리케이션의 현재의 웹 페이지의 소스 코드 내에 임시로 삽입시킨다. 그런 다음, 상기 소스 코드를 읽고 그에 따라 표시를 수행할 때, 상기 브라우저는 그 표시 정보에 따라 적절하게 도움말 정보 텍스트를 표시할 수 있다.
도 3은 일 실시예에 따른 도움말 정보를 표시하는 시나리오를 도시한다. 도 3의 예에서, 사용자는 웹 어플리케이션에 새로운 계정을 생성한다. 상기 도움말 정보는 "사용자 프로필을 입력하고 '다음(next)'을 클릭"하도록 사용자에게 프롬프트한다. 다음에 어떻게 해야 하는지에 대해 사용자에게 힌트들을 제공하기 위해, 이러한 도움말 정보 텍스트는 사용자 입력을 받도록 되어 있는 제1 위젯 옆에, 플로팅(floating)된, 반-투명 텍스트박스에 표시된다.
선택적으로는, 지원 장치(100)는 다른 기능 유닛들을 더 포함할 수 있다. 도 4는 발명의 또 다른 실시예에 따른 지원 장치의 기능적 블록도이다. 도 4에서, 지원 장치(100)는, 도 3에 도시된 작업 캡쳐 유닛(102) 및 정보 표시 유닛(104)의 기능과 동일한 기능을 갖는 대응하는 유닛들 이외에, 추가로 시나리오 제공 유닛(106) 및 설정 유닛(setting unit)(108)을 포함한다. 시나리오 제공 유닛(106)은 웹 어플리케이션 기능들을 복수의 시나리오들, 예를 들어, 새로운 계정을 생성하는 것, 새로운 주문을 하는 것, 기존 데이터를 변경하는 것 등으로 분류(classify)하고, 이들 여러 가지 시나리오들을 옵션들로서 사용자들에게 제공하도록 구성된다. 사용자가 그 제공되는 시나리오들에 대한 선택을 하는 경우, 시나리오 제공 유닛(106)은 그 선택되는 시나리오를 도움말 정보 제공 장치(200)로 송신하여, 도움말 제공 장치(200)가 현재의 사용자 상태에 관한 빠른 분석을 할 수 있도록 한다. 또 다른 사용자 인터페이스로서의 설정 유닛(108)은, 상기 표시 정보(예를 들어, 텍스트박스 크기, 텍스트박스 투명도, 폰트, 크기, 텍스트의 색깔 등)에 관한 사용자 설정들을 수신한다. 일 예에서, 상기 표시 정보에 관한 사용자 설정들을 입수하면, 세팅 유닛(108)은 대응하는 사용자 설정들 내에 그 수신되는 표시 정보의 디폴트 설정들을 변경하고, 그런 다음 표시를 수행하기 위해 그것을 정보 표시 유닛(104)으로 송신한다. 또 다른 예에서, 장래에 매번 사용자 설정들에 따라 상기 표시 정보를 직접 수신하도록 하기 위해, 설정 유닛(108)은 또한 사용자 설정들을 서버 측으로 송신하여 똑같이 저장할 수 있다.
지원 장치(100)는 사용자 요구들 및 브라우저의 클라이언트 측에 관한 설정들에 의존하여, 사용자 작업 캡쳐 및 도움말 정보 표시와 관련된 다른 기능적 유닛들을 포함할 수 있다는 것이 이해되어야 한다. 예를 들어, 지원 장치(100)는 또한 시작 옵션(startup option)을 포함할 수 있는데, 이 시작 옵션을 통해 사용자는 다이나믹 도움말 정보 서비스 및 지원 장치를 시작할지 또는 그렇지 않을지를 결정할 수 있다. 위의 실시예들에 대한 이러한 기능적 확장은 또한 본 발명의 범위 및 사상 내에 있다.
다이나믹 도움말 정보를 획득하기 위해, 지원 장치(100)는 도움말 정보 제공 장치(200)와 통신하고, 사용자 작업들을 도움말 정보 제공 장치(200)로 송신하며, 그것으로부터 다이나믹 도움말 정보를 수신할 필요가 있다. 다음은 도움말 정보 제공 장치(200)의 실시예들에 관한 상세한 설명이다.
도 5는 발명의 일 실시예에 따른 도움말 정보 제공 장치의 기능적 블록도이다. 도면에 도시된 바와 같이, 도움말 정보 제공 장치(200)는, 웹 어플리케이션들 상의 사용자 작업들을 수신하고 또한 사용자의 작업 이력을 입수하도록 구성되는 수신 유닛(202); 상기 사용자 작업 이력에 따라 대응하는 도움말 정보를 결정하도록 구성되는, 결정 유닛(204); 상기 대응하는 도움말 정보를 획득하도록 구성되는 정보 획득 유닛(206)을 포함한다.
특히, 수신 유닛(202)은 지원 장치(100)로부터 웹 어플리케이션 상의 사용자 작업들에 관한 정보를 수신한다. 만약 그 수신되는 작업 정보가 다수의 단계들의 작업들 또는 작업 이력이라면, 수신 유닛(202)은 사용자의 작업 이력을 직접적으로 입수한다. 만약 그 수신되는 작업 정보가 하나의 단계라면, 수신 유닛(202)은 사용자의 작업 이력을 획득하기 위해 이전에 수신된 사용자 작업들을 참조한다. 상기 작업 이력을 입수한 후, 수신 유닛(202)은 분석을 수행하기 위해 그 작업 이력을 결정 유닛(204)으로 송신한다.
결정 유닛(204)은 수신 유닛(202)으로부터 사용자의 작업 이력을 획득하고 이러한 작업 이력에 관해 분석한다. 특히, 결정 유닛(204)은 상기 작업 이력에 따라 사용자의 현재 상태를 결정하고 상기 상태를 대응하는 도움말 정보에 매핑한다. 일 예에서, 결정 유닛(204)은 매핑 표(mapping table)를 유지하며, 각각의 사용자 상태와 도움말 정보의 대응관계(correspondence)를 저장한다. 상기 도움말 정보는 인덱스들 또는 포인터들을 사용하여 저장된다. 이에 따라, 결정 유닛(204)은 상기 매핑 표를 참조함으로써, 필요한 도움말 정보의 인덱스 또는 포인터를 빠르게 결정할 수 있고, 그것을 도움말 획득 유닛(206)으로 송신할 수 있다.
필요한 도움말 정보의 인덱스 또는 포인터를 수신하면, 도움말 획득 유닛(206)은 그 인덱스 또는 포인터에 따라 대응하는 도움말 정보 저장 장치(300)를 검색(search)하고, 그 인덱스 또는 포인터에 의해 지시된 도움말 정보를 리트리브(retrieve)한다. 위에서 기술된 바와 같이, 그 리트리브되는 도움말 정보는 서술 텍스트 및 표시 정보를 포함할 수 있다. 이러한 도움말 정보를 리트리브한 후, 정보 획득 유닛(206)은 표시를 수행하기 위해 그것을 지원 장치(100)로 송신한다.
필요한 도움말 정보를 획득하기 위해, 도움말 정보 제공 장치(200)는 도움말 정보 저장 장치(300)와 통신할 필요가 있고, 따라서 도움말 정보 저장 장치(300)로부터 데이터를 읽을 필요가 있다. 그러므로, 도움말 정보 저장 장치(300)는 작업되는 웹 어플리케이션에 대응하는 도움말 정보 데이터를 저장한다. 도 6은 도움말 정보 저장 장치(300)의 블록도이다. 도면에 도시된 바와 같이, 도움말 정보 저장 장치(300)는 도움말 서술 정보(description information)(302) 및 표시 정보(304)를 저장한다. 도움말 서술 정보(302)는 도움말 정보의 서술 텍스트들을 포함하는데, 이 도움말 정보의 서술 텍스트들은 웹 어플리케이션을 작업할 경우 사용자가 경험하는 각각의 가능한 단계 또는 상황에 대해 설명하고 힌트를 제공한다. 표시 정보(304)는 위의 서술 텍스트들(예를 들어, 표시 형태, 표시 위치, 표시 텍스트박스의 투명도, 폰트, 스타일, 텍스트의 크기 등)과 연관된 표시 파라미터들 및 기능들을 포함한다. 일 예에서, 표시 정보(304)는 파라미터 정보, 미리 정의된 DIV 라이브러리 및 미리 정의된 자바스크립트 라이브러리를 포함한다. 상기 미리 정의된 DIV 라이브러리 및 미리 정의된 자바스크립트 라이브러리를 호출함으로써, 그리고 대응하는 파라미터 정보와 서술 텍스트들을 포함시킴으로써, 그 도움말 정보를 서술하는 코드는 직접적으로 획득될 수 있다. 그러므로, 도움말 정보 제공 장치(200)는 도움말 정보 저장 장치(300)로부터 직접적으로 이러한 코드를 입수할 수 있고 그것을 지원 장치(100)로 송신할 수 있다. 더 나아가, 지원 장치(100)는 도움말 정보를 표시하기 위해, 현재의 웹 페이지의 소스 코드 내에 직접적으로 이러한 코드를 삽입시킬 수 있다.
도 7은 하나의 도움말 정보와 관련되는 코드들의 예를 도시한다. 도 7a는 도움말 정보의 예시적인 서술 텍스트들을 도시하는데, 이 도움말 정보의 서술 텍스트들은 단계 1에서부터 단계 n+1까지 도움말 텍스트를 정의한다. 도 7b는 도 7a에서의 서술 텍스트에 대응하는 DIV 코드를 도시한다. 도 7c는 도 7b의 DIV 코드와 관련된 자바스크립트를 도시한다. 도 7d 및 도 7e는 각각 소스 코드에 삽입된 DIV 코드 및 자바스크립트를 도시하는데, 이것들은 사각형의 박스들로 표시되어 있다.
위에서 기술된 방법으로, 지원 장치(100), 도움말 정보 제공 장치(200) 및 도움말 정보 저장 장치(300)는 사용자들에게 다이나믹 도움말 정보를 제공하기 위해 서로 협력한다. 위에서 언급된 바와 같이, 상기 다이나믹 도움말 정보는 사용자의 작업 이력에 기초하여 제공되는데, 이 사용자의 작업 이력은, 하나의 단계에 기초하여 도움말 정보를 제공하는 기존의 기술들에 있어서의 특징들과 대별되는 본 발명의 특징들이다. 즉, 본 발명에서 제공되는 다이나믹 도움말 정보는 특정 맥락에 기초하고, 따라서 서로 다른 작업 이력은 결국 심지어 동일한 단계에서도 서로 다른 프롬프트들 및 도움말 정보를 가져오게 될 수 있다. 다음은 본 발명의 실시예들이 적용될 수 있는 서로 다른 시나리오들에 관한 설명이다.
사용자는 온라인 주문 기능(online ordering function)을 갖는 웹 어플리케이션을 사용하는 것으로 가정된다. 상기 웹 어플리케이션에서 설정된 주문를 달성하기 위해, 상기 사용자는 상기 웹 어플리케이션에 의해 제공되는 페이지들 상에 다음의 단계들, 즉, 새로운 계정을 생성하는 단계, 주문을 하는 단계, 비밀 약정(confidentiality aggrement)에 서명하는 단계, 성공적인 주문이 상기 웹 어플리케이션에 의해 표시될 때 그 주문을 확정(confirm)하는 단계, 및 상기 주문 형식을 메일로 보낼 것인지의 여부를 선택하는 단계를 완료할 필요가 있다.
제1 시나리오에서, 사용자는 계정을 생성하기 위해 먼저 그 페이지 내로 들어간다. 본 발명의 실시예들에 따른 도움말 시스템은 개인 정보를 입력한 다음 클릭하도록 상기 사용자에게 프롬프트할 것인데, 여기서 요구되는 필드들은 빨간색 별로 표시된다. 상기 사용자가 모든 필드들(예를 들어, 이름, 직업, 주소, 이메일 전화번호 등을 포함하는 필드들)을 입력한 것으로 가정하자. 그런 다음, 상기 사용자는 프롬프트에 따라 "다음(next)"을 클릭하고, 주문을 하기 위해 그 페이지 내로 들어간다. 여기서 상기 도움말 시스템은 상기 사용자에게 원하는 제품을 선택하도록 프롬프트할 것이다. 그 후, 상기 사용자는 상기 프롬프트를 따른 후, 비밀 약정에 서명하기 위해 그 페이지 내로 들어온다. 여기서 상기 시스템은 상기 사용자에게 결정을 하도록 프롬프트한다. 상기 사용자가 모든 데이터를 비밀로 유지하도록 선택한다고 가정하자. 마지막으로, 상기 웹 어플리케이션은 상기 사용자의 주문 정보를 새로운 페이지 상의 주문 형식(order form)으로 제공할 것이고, 상기 사용자에게 확정하라고 요청한다. 이 때, 상기 사용자는 상기 주문 형식을 메일링하기 위한 옵션이 현재 디스에이블되어 있다는 것을 발견할 것이다. 여기서, 상기 시스템은 상기 사용자에게 상기 사용자가 모든 데이터를 비밀로 유지할 것을 선택했기 때문에 상기 주문 형식은 메일링될 수 없다고 프롬프트할 것이다.
제2 시나리오에서, 사용자는 다이나믹 도움말 정보에 따라 위와 같이 계정을 생성하고 개인 정보를 입력하기 위해 그 페이지 내로 들어간다. 상기 사용자가 단지 이름 및 직업과 같은 필수 필드들에만 입력하고, 주소 및 이메일에는 입력하지 않는다고 가정하자. 그런 다음, 상기 사용자는 상기 프롬프트에 따라 주문하기 위해 제품들을 선택한다. 그 후, 상기 사용자는 상기 프롬프트를 따르고, 비밀 약정에 서명하기 위해 상기 페이지 내로 들어간다. 상기 사용자가 그의 모든 정보가 공중에 개방되도록 허용한다고 가정하면, 그는 결국 그 주문 형식을 메일링하기 위한 옵션이 여전히 금지되어 있다는 것을 그 주문 형식 표시 페이지 상에서 발견할 것이다. 여기서 상기 시스템은 상기 사용자가 그의 이메일 및 주소를 입력하지 않았기 때문에 상기 주문 형식은 메일링될 수 없다고 프롬프트할 것이다.
제3 시나리오에서, 상기 시스템 프롬프트들 하에서, 상기 사용자는 계정을 생성하기 위해 모든 필드들에 입력하고 그 데이터가 공개되도록 허용한다. 그런 다음, 주문 형식 표시 페이지 상에서, 상기 주문 형식을 메일링하기 위한 옵션이 인에이블된다. 여기서 상기 도움말 시스템은 상기 사용자에게 만약 상기 옵션이 선택된다면 상기 주문 형식이 당신의 주소로 메일링될 수 있다고 프롬프트할 것이다.
그러므로, 본 발명의 도움말 시스템은 사용자의 작업 이력에 기초하여 서로 다른 프롬프트들을 제공할 수 있다는 것을 알 수 있다. 이것은 사용자 옆에 웹 어플리케이션 전문가를 둔 것과 같다. 상기 웹 어플리케이션 전문가는 상기 사용자의 작업 상태를 알고 있는 동시에 상기 웹 어플리케이션을 사용함에 있어서 숙련된 자이다. 그래서, 본 발명의 도움말 시스템은, 이전의 작업 이력을 참조하여 현재의 작업 단계에 지시되는 프롬프트들 및 적절한 도움말 정보를 제공할 수 있다.
한편, 시스템 아키텍쳐 관점에서, 지원 장치(100)는 브라우저의 클라이언트 측 상에 위치하는 한편, 도움말 정보 제공 장치(200) 및 도움말 정보 저장 장치(300)는 다이나믹 도움말을 제공하는 서비스의 서버 측 상에 있다. 그러나, 이들 모두가 상기 웹 어플리케이션의 서버로부터 분리되어, 본 발명의 시스템에 의해 제공되는 다이나믹 도움말 서비스가 상기 웹 어플리케이션의 서비스 자체로부터 떨어지고 분리되도록 할 수 있다. 그러므로, 상기 도움말 정보 서비스는 상기 웹 어플리케이션에 독립적인 제3자에 의해 개발되고 제공되어, 이 서비스가 더 탄력적이고 프로페셔널하도록 할 수 있다. 한편, 이는 도움말 정보를 제공하도록 소스 코드를 변경하기 위해 상기 웹 어플리케이션 서비스 측의 짐(burden)을 다이나믹하게 덜어줄 것이다. 일 예에서, 도움말 정보 제공 장치(200) 및 도움말 정보 저장 장치(300)는 심지어 오픈 플랫폼(open flatform)에 기초할 수 있는데, 특정 웹 어플리케이션에 익숙한 자는 그것들의 알려진 도움말 정보를 이 플랫 폼에 추가 및 등록할 수 있다. 이러한 방식으로, 본 발명의 시스템에 의해 제공되는 도움말 정보는 더 복잡해지고 더 탄력적일 수 있다.
본 발명에서의 시스템의 도움말 정보 제공 장치(200) 및 도움말 정보 저장 장치(300)는 여러 가지 방법들로 구현될 수 있다. 이것들은 함께 통합될 수도 있고, 또는 두 개의 분리된 장치들로 구현될 수도 있다. 이것들이 두 개의 분리된 장치들로 구현되는 경우, 각각의 기능 유닛은 그 저장 용량 및 각각의 장치들의 계산 능력에 따라 서로 다른 장치에 선택적으로 위치할 수 있다. 예를 들어, 만약 도움말 정보 저장 장치(300)의 저장 용량이 충분하지 않다면, 표시 정보의 일부분은 도움말 정보 제공 장치(200)에 저장될 수 있다. 더 나아가, 지원 장치(100), 도움말 정보 제공 장치(200) 및 도움말 정보 저장 장치(300) 사이의 통신은 기존의 기술들에서의 알려진 전송 방법에 의해 구현될 수 있다.
위의 설명에서, 지원 장치(100), 도움말 정보 제공 장치(200) 및 도움말 정보 저장 장치(300)는 웹 어플리케이션과 관련되어 상세히 설명되고 있다. 그러나, 본 발명의 장치들 및 시스템은 또한 다른 어플리케이션들에 적용될 수도 있다는 것이 이해되어야 할 것이다. 예를 들어, 로컬 데스크탑 어플리케이션의 경우, 상기 시스템은 상기 데스크탑 어플리케이션 상의 사용자 작업들을 캡쳐하고 사용자의 작업 이력에 따라 다이나믹하게 도움말 정보를 제공할 수 있다. 여기서, 지원 장치(100), 도움말 정보 제공 장치(200) 및 도움말 정보 저장 장치(300)는 원하는 바에 따라, 부분적으로는 로컬 측에, 부분적으로는 서버 측에, 또는 심지어 모두가 로컬 측에 위치할 수 있다. 게다가, 장치(100, 200 및 300)는 서로 다른 어플리케이션들 및 로컬 계산 기능에 따른, 통합된 하나의 장치로서 또는 다수의 장치들로서 선택적으로 구현될 수 있다. 따라서, 당해 기술 분야에서 숙련된 자들이라면 상기 설명에 기초하여 다른 상황들에서 다른 실시예들을 채택할 수 있을 것이다. 동일한 발명 개념 하에서, 본 발명은 또한 다이나믹 도움말 정보를 제공하기 위한 방법을 제공한다.
도 8은 발명의 일 실시예에 따른 도움말 정보를 제공함에 있어서 지원하기 위한 방법의 흐름도이다. 상기 방법은 도 1에서의 지원 장치(100)에 의해 실행된다. 도면에 도시된 바와 같이, 도움말 정보를 제공함에 있어서 지원하기 위한 방법은, 단계 802에서 사용자 작업들을 캡쳐하는 단계, 단계 802에서 상기 캡쳐된 사용자 작업들을 송신하는 단계, 및 그 수신되는 도움말 정보에 응답하여, 단계 806에서 상기 도움말 정보를 적절하게 표시하는 단계를 포함한다.
특히, 단계 802에서, 사용자 작업들을 캡쳐하는 단계는 사용자에 의해 수행되는 마우스 클릭, 마우스 드래그, 키보드 입력을 포착(catch)함으로써 실현될 수 있다. 단계 804에서, 상기 프로세스는 하나의 캡쳐된 작업 단계 또는 복수의 작업 단계들을 송신할 수 있고, 또는 그렇지 않으면 작업 이력을 형성하기 위해 상기 사용자의 작업을 먼저 기록할 수 있고, 그런 다음 상기 작업 이력을 직접적으로 송신한다. 단계 806에서, 상기 사용자 작업들에 대응하는 도움말 정보가 수신되면, 이러한 도움말 정보는 적절한 방법으로 웹 어플리케이션 인터페이스 상의 적절한 위치에 표시된다. 통상적으로, 상기 수신되는 도움말 정보는 서술 텍스트 및 표시 정보를 포함한다. 일 예에서, 상기 표시 정보는 DIV 및 대응하는 자바스크립트를 사용하여 제공된다. 이 경우, 단계 806에서, DIV 및 대응하는 자바스크립트는 상기 웹 어플리케이션의 현재의 페이지의 소스 코드 내에 각각 임시로 삽입된다. 그런 다음, 상기 브라우저는 상기 표시 정보에 따라 적절하게 상기 서술 텍스트를 표시할 수 있다.
도 9는 발명의 일 실시예에 따른 도움말 정보를 제공하기 위한 방법의 흐름도이다. 상기 방법은 도 1에서의 도움말 정보 제공 장치(200)에 의해 실행된다. 상기 도면에 도시된 바와 같이, 도움말 정보를 제공하기 위한 방법은 단계 902를 포함하는데, 이 단계에서는 사용자 작업들이 수신되고 사용자의 작업 이력이 획득된다. 단계 904에서는 대응하는 도움말 정보가 상기 사용자의 작업 이력에 따라 결정되고, 단계 906에서 상기 대응하는 도움말 정보가 획득된다.
특히, 단계 902에서, 만약 그 수신되는 작업 정보가 복수의 작업 단계들 또는 작업 이력이라면, 상기 사용자의 작업 이력은 직접적으로 획득될 수 있다. 만약 그 수신되는 작업 정보가 하나의 단계라면, 단계 902에서, 상기 사용자의 작업 이력은 이전의 수신된 작업 단계들을 참조하여 획득된다. 단계 904에서, 상기 획득된 작업 이력이 분석된다. 더 구체적으로는, 이 단계에서 현재 사용자 상태는 상기 사용자의 작업 이력에 따라 결정되고 그런 다음 상기 상태는 대응하는 도움말 정보에 매핑된다. 일 예에서, 각각의 사용자 상태와 도움말 정보 사이의 대응관계를 기록하는 매핑 표를 참조함으로써, 현재 필요한 도움말 정보의 인덱스 또는 포인터가 빠르게 결정될 수 있다. 그런 다음, 단계 906에서, 상기 인덱스 또는 상기 포인터에 의해 지시되는 도움말 정보는 상기 인덱스 또는 상기 포인터에 따른 도움말 정보를 저장하는 장치로부터 리트리브된다. 위에서 언급된 바와 같이, 상기 획득되는 도움말 정보는 서술 텍스트 및 표시 정보를 포함할 수 있다. 이러한 도움말 정보가 리트리브된 후, 단계 906에서 그것은 송신된다.
도 10은 발명의 일 실시예에 따른 도움말 정보를 제공 및 표시하기 위한 방법의 흐름도이다. 상기 방법은 도 1에서의 시스템에 의해 실행된다. 도면에 도시된 바와 같이, 도움말 정보를 제공 및 표시하기 위한 방법은, 단계 1002에서 사용자 작업들을 캡쳐하고 상기 사용자의 작업 이력을 획득하는 단계, 단계 1004에서 상기 작업 이력에 따라 대응하는 도움말 정보를 결정하는 단계, 단계 1006에서 대응하는 도움말 정보를 획득하는 단계, 및 단계 1008에서 상기 도움말 정보를 표시하는 단계를 포함한다.
도 10에서의 방법의 개념 및 실행 방법은 위에서 언급된 시스템의 개념 및 실행 방법에 따르므로, 이것들에 대해서는 더 상세히 설명하지 않는다.
실시예들에 관한 위에서의 설명을 통해, 당해 기술 분야에서 숙련된 자들이라면 다이나믹 도움말 정보를 제공하기 위한 위에서 언급된 시스템 및 방법이 프로세서들에서의 코드들(예를 들어, 디스크, CD 또는 DVD-ROM과 같은 매체들에서의 코드들), ROM 또는 EPROM과 같은 메모리들, 및 광학 또는 전자 신호 캐리어와 같은 캐리어들을 제어함으로써 및/또는 실행가능한 명령들에 의해 실행될 수 있다는 것을 이해할 것이다. 실시예들에서의 시스템, 장치 및 각각의 유닛들은 VLSI 또는 게이트들 및 어레이들과 같은 하드웨어, 반도체들(예를 들어 로직 칩, 트랜지스트들 등)과 같은 하드웨어, 또는 프로그램가능 하드웨어 장치들(예를 들어, FPGA), 프로그램가능 로직 장치들 등과 같은 하드웨어를 사용하여, 또는 서로 다른 프로세서들의 종류들에 의해 실행되는 소프트웨어를 사용하여, 또는 상기 하드웨어와 소프트웨어의 조합을 사용하여, 실현될 수 있다.
상술한 실시예들은 다이나믹 도움말 정보를 제공하기 위한 방법 및 시스템의 모든 측면들을 설명하기 위해서 제공된 것이지, 발명의 범위를 한정하기 위해 제공된 것은 아니다. 당해 기술 분야에서 숙련된 자들이라면 본 발명이 본 발명의 범위 및 사상 내에서 많은 변형 및 변경 예들이 있을 수 있다는 것을 이해할 것이다. 본 발명의 범위는 첨부되는 청구항들에 의해서만 그 범위가 정해진다.

Claims (21)

  1. 도움말 정보(help information)를 제공하기 위한 장치에 있어서,
    사용자의 적어도 하나의 작업을 수신하고 상기 사용자의 작업 이력(operation history) - 상기 작업 이력은 상기 적어도 하나의 작업을 포함함 - 을 입수(get)하도록 구성되는 수신 유닛;
    상기 사용자의 작업 이력에 따라 대응하는 도움말 정보를 결정하도록 구성되는 결정 유닛; 및
    상기 대응하는 도움말 정보를 획득(obtain)하도록 구성되는 정보 획득 유닛을 포함하는
    도움말 정보 제공 장치.
  2. 청구항 1에 있어서, 상기 결정 유닛은 상기 사용자의 작업 이력에 따라 상기 사용자의 현재 상태를 분석하고, 상기 사용자 상태에 따라 대응하는 도움말 정보를 결정하도록 구성되는
    도움말 정보 제공 장치.
  3. 청구항 2에 있어서, 상기 결정 유닛은 매핑 표를 보유하되, 상기 매핑 표는 각각의 사용자 상태와 상기 도움말 정보 사이의 대응관계(correspondence)를 저장하는
    도움말 정보 제공 장치.
  4. 청구항 3에 있어서, 상기 도움말 정보는 상기 매핑 표에서 인덱스들 및 포인터들로 저장되는
    도움말 정보 제공 장치.
  5. 청구항 3 또는 4에 있어서, 상기 결정 유닛은 상기 매핑 표를 참조하여 상기 대응하는 도움말 정보를 결정하는
    도움말 정보 제공 장치.
  6. 청구항 1에 있어서, 상기 정보 획득 유닛은 도움말 정보 저장 장치로부터 상기 대응하는 도움말 정보를 리트리브(retrieve)하도록 구성되는
    도움말 정보 제공 장치.
  7. 청구항 1에 있어서, 상기 도움말 정보는 서술 텍스트(description text) 및 표시 정보(displaying information)를 포함하는
    도움말 정보 제공 장치.
  8. 청구항 7에 있어서, 상기 표시 정보는 표시 파라미터들, 미리 정의된 DIV 라이브러리 및 미리 정의된 자바스크립트 라이브러리를 포함하는
    도움말 정보 제공 장치.
  9. 도움말 정보(help information)를 제공하는 것을 지원(assist)하기 위한 장치에 있어서,
    사용자의 적어도 하나의 작업을 캡쳐하고 송신하도록 구성되는 작업 캡쳐 유닛; 및
    상기 사용자의 작업 이력(operation history) - 상기 작업 이력은 상기 적어도 하나의 작업을 포함함 - 에 대응하는 도움말 정보를 수신하고 표시하도록 구성되는 정보 표시 유닛을 포함하는
    도움말 정보 제공 지원 장치.
  10. 청구항 9에 있어서, 상기 작업 캡쳐 유닛은 상기 사용자에 의해 수행되는 마우스 클릭, 마우스 드래그 및 키보드 입력 중 적어도 하나를 포착(catch)함으로써 상기 적어도 하나의 작업을 캡쳐하도록 구성되는
    도움말 정보 제공 지원 장치.
  11. 청구항 9에 있어서, 상기 작업 캡쳐 유닛은 상기 작업 이력을 형성하기 위해 상기 사용자의 복수의 작업들을 기록하도록 더 구성되는
    도움말 정보 제공 지원 장치.
  12. 청구항 11에 있어서, 상기 작업 캡쳐 유닛은 상기 작업 이력을 송신하도록 더 구성되는
    도움말 정보 제공 지원 장치.
  13. 청구항 9 내지 12 중 어느 한 항에 있어서, 상기 도움말 정보는 서술 텍스트 및 표시 정보를 포함하며, 상기 정보 표시 유닛은 상기 표시 정보와 관련된 코드를 현재의 페이지의 소스 코드 내에 삽입함으로써 상기 도움말 정보를 표시하는
    도움말 정보 제공 지원 장치.
  14. 청구항 9에 있어서, 상기 장치는 브라우저 플러그-인(browser plug-in)인
    도움말 정보 제공 지원 장치.
  15. 도움말 정보(help information)를 제공하기 위한 시스템에 있어서,
    청구항 1 내지 8 중 어느 한 항에 기재된 도움말 정보 제공 장치, 및
    청구항 9 내지 14 중 어느 한 항에 기재된 도움말 정보 제공 지원 장치를 포함하는
    도움말 제공 시스템.
  16. 도움말 정보(help information)를 제공하기 위한 방법에 있어서,
    사용자의 적어도 하나의 작업을 수신하고 상기 사용자의 작업 이력(operation history) - 상기 작업 이력은 상기 적어도 하나의 작업을 포함함 - 을 획득하는 단계;
    상기 사용자의 작업 이력에 따라 대응하는 도움말 정보를 결정하는 단계; 및
    상기 대응하는 도움말 정보를 획득하는 단계를 포함하는
    도움말 정보 제공 방법.
  17. 청구항 16에 있어서, 상기 대응하는 도움말 정보를 결정하는 단계는,
    상기 사용자의 작업 이력에 따라 상기 사용자의 현재의 상태를 분석하는 단계, 및 상기 사용자 상태에 따라 상기 대응하는 도움말 정보를 결정하는 단계를 포함하는
    도움말 정보 제공 방법.
  18. 청구항 17에 있어서, 사용자 상태에 따라 상기 대응하는 도움말 정보를 결정하는 단계는, 상기 대응하는 도움말 정보를 결정하기 위해 매핑 표(mapping table)를 참조하는 단계를 포함하되, 상기 매핑 표는 각각의 사용자 상태와 상기 도움말 정보 사이의 대응관계(correspondence)를 저장하는
    도움말 정보 제공 방법.
  19. 도움말 정보(help information)를 제공하는 것을 지원(assist)하기 위한 방법에 있어서,
    사용자의 적어도 하나의 작업을 캡쳐하고 송신하는 단계; 및
    상기 사용자의 작업 이력(operation history) - 상기 작업 이력은 상기 적어도 하나의 작업을 포함함 - 에 대응하는 도움말 정보를 수신하고 표시하는 단계를 포함하는
    도움말 정보 제공 지원 방법.
  20. 청구항 19에 있어서, 상기 적어도 하나의 작업은 상기 사용자에 의한 마우스 클릭, 마우스 드래그, 및 키보드 입력 중 적어도 하나를 포착(catch)함으로써 캡쳐되는
    도움말 정보 제공 지원 방법.
  21. 청구항 19 또는 20에 있어서, 상기 도움말 정보는 서술 텍스트(description text) 및 표시 정보(displaying information)를 포함하며, 상기 도움말 정보를 표시하는 단계는, 상기 표시 정보와 관련된 코드를 현재의 페이지의 소스 코드 내에 삽입함으로써 상기 도움말 정보를 표시하는 단계를 포함하는
    도움말 정보 제공 지원 방법.
KR1020100114279A 2009-11-30 2010-11-17 다이나믹 도움말 정보를 제공하는 방법 및 장치 KR20110060808A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN200910247122.X 2009-11-30
CN200910247122XA CN102081518A (zh) 2009-11-30 2009-11-30 提供动态帮助信息的装置和方法

Publications (1)

Publication Number Publication Date
KR20110060808A true KR20110060808A (ko) 2011-06-08

Family

ID=44069773

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100114279A KR20110060808A (ko) 2009-11-30 2010-11-17 다이나믹 도움말 정보를 제공하는 방법 및 장치

Country Status (3)

Country Link
US (1) US9026910B2 (ko)
KR (1) KR20110060808A (ko)
CN (1) CN102081518A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101468779B1 (ko) * 2012-11-29 2014-12-03 중소기업은행 업무 문의사항 조회 서비스를 통한 은행 업무 지원 자동화 시스템 및 그 방법

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8979538B2 (en) * 2009-06-26 2015-03-17 Microsoft Technology Licensing, Llc Using game play elements to motivate learning
US20100331075A1 (en) * 2009-06-26 2010-12-30 Microsoft Corporation Using game elements to motivate learning
US9697500B2 (en) 2010-05-04 2017-07-04 Microsoft Technology Licensing, Llc Presentation of information describing user activities with regard to resources
US8819009B2 (en) 2011-05-12 2014-08-26 Microsoft Corporation Automatic social graph calculation
US9477574B2 (en) 2011-05-12 2016-10-25 Microsoft Technology Licensing, Llc Collection of intranet activity data
US9069580B2 (en) * 2011-06-13 2015-06-30 International Business Machines Corporation Application documentation effectiveness monitoring and feedback
US10523618B2 (en) 2011-09-07 2019-12-31 Elwha Llc Computational systems and methods for identifying a communications partner
US9159055B2 (en) 2011-09-07 2015-10-13 Elwha Llc Computational systems and methods for identifying a communications partner
US9690853B2 (en) 2011-09-07 2017-06-27 Elwha Llc Computational systems and methods for regulating information flow during interactions
US9167099B2 (en) 2011-09-07 2015-10-20 Elwha Llc Computational systems and methods for identifying a communications partner
US9432190B2 (en) 2011-09-07 2016-08-30 Elwha Llc Computational systems and methods for double-encrypting data for subsequent anonymous storage
US9491146B2 (en) 2011-09-07 2016-11-08 Elwha Llc Computational systems and methods for encrypting data for anonymous storage
US9195848B2 (en) 2011-09-07 2015-11-24 Elwha, Llc Computational systems and methods for anonymized storage of double-encrypted data
US10185814B2 (en) 2011-09-07 2019-01-22 Elwha Llc Computational systems and methods for verifying personal information during transactions
US9747561B2 (en) 2011-09-07 2017-08-29 Elwha Llc Computational systems and methods for linking users of devices
US9928485B2 (en) * 2011-09-07 2018-03-27 Elwha Llc Computational systems and methods for regulating information flow during interactions
US10198729B2 (en) 2011-09-07 2019-02-05 Elwha Llc Computational systems and methods for regulating information flow during interactions
US9141977B2 (en) 2011-09-07 2015-09-22 Elwha Llc Computational systems and methods for disambiguating search terms corresponding to network members
US10546306B2 (en) 2011-09-07 2020-01-28 Elwha Llc Computational systems and methods for regulating information flow during interactions
US9811350B2 (en) * 2011-10-12 2017-11-07 Excahbur IP, LLC Embedding non-blocking help components in a display page using discovery drawer feature cues
US9465503B2 (en) * 2011-10-14 2016-10-11 Autodesk, Inc. In-product questions, answers, and tips
US20140047334A1 (en) * 2012-08-09 2014-02-13 Sap Ag Computer application learning solution
CN102937898A (zh) * 2012-11-29 2013-02-20 广东全通教育股份有限公司 一种基于xml技术的web应用动态帮助方法和系统
US20150031011A1 (en) * 2013-04-29 2015-01-29 LTG Exam Prep Platform, Inc. Systems, methods, and computer-readable media for providing concept information associated with a body of text
US10133589B2 (en) 2013-12-31 2018-11-20 Microsoft Technology Licensing, Llc Identifying help information based on application context
US20150242504A1 (en) * 2014-02-26 2015-08-27 Microsoft Corporation Automatic context sensitive search for application assistance
US10074104B2 (en) * 2014-03-06 2018-09-11 Ricoh Company, Ltd. Content dynamically targetted according to context
CN104166498B (zh) * 2014-07-08 2018-02-23 惠州Tcl移动通信有限公司 显示用户说明书的方法及移动终端
US9727201B2 (en) * 2015-04-01 2017-08-08 Microsoft Technology Licensing, Llc Contextual help
JP2017079391A (ja) * 2015-10-20 2017-04-27 セイコーエプソン株式会社 ガイダンス方法、ガイダンスシステム、端末機器および情報機器
CN106855796A (zh) * 2015-12-09 2017-06-16 阿里巴巴集团控股有限公司 一种数据处理方法、装置和智能终端
US10606618B2 (en) * 2016-01-19 2020-03-31 Adp, Llc Contextual assistance system
JP6774862B2 (ja) * 2016-12-05 2020-10-28 日本電子株式会社 プログラム、制御装置、および情報記憶媒体
CN106790487B (zh) * 2016-12-13 2020-04-10 东软集团股份有限公司 帮助信息的显示方法、装置及系统
CN108427701B (zh) * 2017-10-13 2022-02-15 平安科技(深圳)有限公司 基于操作页面识别帮助信息的方法及应用服务器
US10481752B2 (en) * 2017-10-25 2019-11-19 Verizon Patent And Licensing Inc. Method and device for a guided application to enhance a user interface
US10990602B2 (en) 2018-06-18 2021-04-27 Wipro Limited Method and system for generating optimized response to user input
CN111352676B (zh) * 2018-12-20 2023-09-29 深圳兆日科技股份有限公司 帮助信息推送方法、帮助系统及可读存储介质
CN111290819B (zh) * 2020-02-04 2024-01-19 北京有竹居网络技术有限公司 显示操作提示的方法、装置和电子设备
US11263030B2 (en) * 2020-06-11 2022-03-01 Atlassian Pty Ltd. Dynamically guided document interaction
US11704141B2 (en) * 2021-03-09 2023-07-18 International Business Machines Corporation Real-time context preserving visual guidance
US20240061693A1 (en) * 2022-08-17 2024-02-22 Sony Interactive Entertainment Inc. Game platform feature discovery

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5049929A (en) * 1989-12-05 1991-09-17 Xerox Corporation Conflict resolution with warning in a reprographic system
US5239617A (en) * 1990-01-05 1993-08-24 International Business Machines Corporation Method and apparatus providing an intelligent help explanation paradigm paralleling computer user activity
US6327051B1 (en) * 1995-12-22 2001-12-04 Canon Kabushiki Kaisha Printing control apparatus and method
US6052730A (en) * 1997-01-10 2000-04-18 The Board Of Trustees Of The Leland Stanford Junior University Method for monitoring and/or modifying web browsing sessions
KR100265142B1 (ko) * 1997-02-25 2000-09-01 포만 제프리 엘 관련된웹페이지와동시에도움말윈도우를디스플레이하기위한방법및장치
US5933140A (en) * 1997-06-30 1999-08-03 Sun Microsystems, Inc. Child window containing context-based help and a miniaturized web page
JP3654616B2 (ja) * 1997-12-19 2005-06-02 富士通株式会社 階層化ポリゴンデータ生成装置及び方法及び当該階層化ポリゴンデータを用いる三次元リアルタイム映像生成装置及び方法
US6307544B1 (en) * 1998-07-23 2001-10-23 International Business Machines Corporation Method and apparatus for delivering a dynamic context sensitive integrated user assistance solution
US6339436B1 (en) * 1998-12-18 2002-01-15 International Business Machines Corporation User defined dynamic help
US6560616B1 (en) * 1999-03-26 2003-05-06 Microsoft Corporation Robust modification of persistent objects while preserving formatting and other attributes
US6981212B1 (en) * 1999-09-30 2005-12-27 International Business Machines Corporation Extensible markup language (XML) server pages having custom document object model (DOM) tags
DE10009297A1 (de) * 2000-02-29 2001-10-04 Siemens Ag Dynamisches Hilfesystem für eine Datenverarbeitungseinrichtung, insbesondere für eine Internet- oder Desktopanwendung
US7080321B2 (en) * 2000-06-23 2006-07-18 Aspect Software, Inc. Dynamic help option for internet customers
US6990532B2 (en) * 2001-04-07 2006-01-24 Cpa2Biz, Inc. Context-sensitive help for thin client-based business operations platform
US20030001875A1 (en) * 2001-06-29 2003-01-02 Black Jason E. Context-sensitive help for a Web-based user interface
US6959294B2 (en) * 2001-07-10 2005-10-25 Microsoft Corporation Context-based help engine and dynamic help
US7594176B1 (en) * 2001-09-05 2009-09-22 Intuit Inc. Automated retrieval, evaluation, and presentation of context-sensitive user support
US20030084115A1 (en) * 2001-09-26 2003-05-01 Wood Timothy E. Facilitating contextual help in a browser environment
US6920612B2 (en) * 2001-11-29 2005-07-19 Agilent Technologies, Inc. Systems and methods for providing dedicated help services in a graphical user interface-based computer application
US6687485B2 (en) * 2002-05-21 2004-02-03 Thinksmark Performance Systems Llc System and method for providing help/training content for a web-based application
US7568002B1 (en) * 2002-07-03 2009-07-28 Sprint Spectrum L.P. Method and system for embellishing web content during transmission between a content server and a client station
US6918212B1 (en) * 2002-07-23 2005-07-19 Andy W. Anderson, Sr. Seamed/seamless fabric wall panel system
US7194445B2 (en) * 2002-09-20 2007-03-20 Lenovo (Singapore) Pte. Ltd. Adaptive problem determination and recovery in a computer system
CA2414053A1 (en) * 2002-12-09 2004-06-09 Corel Corporation System and method for manipulating a document object model
US20040268229A1 (en) * 2003-06-27 2004-12-30 Microsoft Corporation Markup language editing with an electronic form
US20060015817A1 (en) * 2004-07-15 2006-01-19 Giuseppe Fioretti Method to dynamically customize a web user interface
US20060026531A1 (en) * 2004-07-29 2006-02-02 Sony Coporation State-based computer help utility
US7634741B2 (en) * 2004-08-31 2009-12-15 Sap Ag Method and apparatus for managing a selection list based on previous entries
CN1746883A (zh) 2004-09-08 2006-03-15 上海迪比特实业有限公司 一种提供帮助信息的方法
US7490316B2 (en) * 2004-12-02 2009-02-10 International Business Machines Corporation Method and apparatus to implement adaptive scripting tool
US7536642B2 (en) * 2005-04-13 2009-05-19 International Business Machines Corporation Method for monitoring computer user input
US7865828B1 (en) * 2005-04-22 2011-01-04 Mcafee, Inc. System, method and computer program product for updating help content via a network
US7734722B2 (en) * 2005-06-02 2010-06-08 Genius.Com Incorporated Deep clickflow tracking
US7533339B2 (en) * 2005-12-29 2009-05-12 Sap Ag System and method for providing user help
US7979798B2 (en) * 2005-12-30 2011-07-12 Sap Ag System and method for providing user help tips
US7487201B1 (en) * 2006-06-30 2009-02-03 Sun Microsystems, Inc. Method and system for providing framework for Java based AJAX web applications
US20080126075A1 (en) * 2006-11-27 2008-05-29 Sony Ericsson Mobile Communications Ab Input prediction
US7849405B1 (en) * 2006-12-18 2010-12-07 Intuit Inc. Contextual user-contributed help information for a software application
US8572160B2 (en) * 2007-03-12 2013-10-29 Citrix Systems, Inc. Systems and methods for script injection
US20080301558A1 (en) * 2007-05-29 2008-12-04 Maryam Najafi Interface, Method, and System for Providing Inline Contextual Help and Support
US8234562B1 (en) * 2007-10-31 2012-07-31 Intuit Inc. Error checking for data entry
CN101216747A (zh) 2007-12-27 2008-07-09 上海全景数字技术有限公司 一种产生智能帮助信息的方法和装置
US20100010801A1 (en) * 2008-07-11 2010-01-14 Microsoft Corporation Conflict resolution and error recovery strategies
US8073590B1 (en) * 2008-08-22 2011-12-06 Boadin Technology, LLC System, method, and computer program product for utilizing a communication channel of a mobile device by a vehicular assembly
CN101576822A (zh) 2009-06-03 2009-11-11 中兴通讯股份有限公司 帮助系统及其实现方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101468779B1 (ko) * 2012-11-29 2014-12-03 중소기업은행 업무 문의사항 조회 서비스를 통한 은행 업무 지원 자동화 시스템 및 그 방법

Also Published As

Publication number Publication date
CN102081518A (zh) 2011-06-01
US20110131491A1 (en) 2011-06-02
US9026910B2 (en) 2015-05-05

Similar Documents

Publication Publication Date Title
KR20110060808A (ko) 다이나믹 도움말 정보를 제공하는 방법 및 장치
US11294968B2 (en) Combining website characteristics in an automatically generated website
US8010479B2 (en) Simplifying the creation of user-defined custom elements for use in a graphical modeling application
US9977770B2 (en) Conversion of a presentation to Darwin Information Typing Architecture (DITA)
US9245182B2 (en) Enhancing data in a screenshot
US7873588B2 (en) Mobile e-learning method and apparatus based on media adapted learning objects
US11527172B2 (en) System and method for automatically attaching a tag and highlight in a single action
CN106303723A (zh) 视频处理方法和装置
US8799796B2 (en) System and method for generating graphical dashboards with drill down navigation
CN108292231A (zh) 从数据生成应用
US20110161308A1 (en) Evaluating preferences of content on a webpage
EP2912625A1 (en) Methods and systems for creating, delivering, using and leveraging integrated teaching and learning
US7730392B2 (en) Electronic web sticky
US11288976B2 (en) Language fluency system
US20140115443A1 (en) Method, system, and computer program product for generating customized documents
US20190163723A1 (en) Digital writing platform
CN103870136A (zh) 一种基于邮箱的界面响应方法和设备
Vlasenko et al. Exploring usability principles for educational online courses: a case study on an open platform for online education
KR20140134075A (ko) 학습 관리 서버 및 이를 이용한 방법
Köhlmann Functional requirements catalogue in the context of virtual classrooms for blind users
JP6995405B1 (ja) 情報提供方法、情報提供装置、情報提供プログラムおよび記録媒体
Thornhill et al. Designing clinical guidelines to support effective decision-making in emergency surgery.
JP2003307999A (ja) 教育支援装置、教育支援システム、教育支援方法および教育支援プログラム
Vásquez-Ramírez et al. AthenaCloud: A cloud-based platform for multi-device educational software generation
KR101500129B1 (ko) 디지털 교과서 표시 장치 및 방법

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid