IP Library › Granted Patent US 8,977,958
Granted Patent B2
US 8,977,958 · App. 11/986,159 · Granted Mar 10, 2015

Community-based software application help system

Inventors: Roderic C. Deyo (Redmond, WA); Christopher Pratley (Seattle, WA); Sandeep Sahasrabudhe (Kirkland, WA); Sunil Swami (Redmond, WA); Jeff Raikes (Seattle, WA)
Assignee: Microsoft Technology Licensing, LLC
G06F9/4446G06Q10/06G06Q10/10
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,977,958
App. No.
11/986,159
Filed
Nov 20, 2007
Granted
Mar 10, 2015
Kind
B2
Art Unit
2172
USPC
715/705
Abstract

A framework for enabling a community of users to share help information about an application program. The framework includes a mechanism for users to generate and share help information and a mechanism for users to access help information created by other users. To generate help information, tools may be incorporated into an application to enable users to capture information about the application as they are performing functions. Those tools capture as a video clip a representation of screen displays created by the application as the user interacts with the application to perform a function about which help information is to be generated. Along with the scenes captured in the video clip, application context information and explanatory material, such as an audio narration, can be captured. The mechanism to access help information includes a server to which video clips can be posted and cataloged, allowing identification of clips in response to user input describing a required help topic.

Claims (67)

1. A method of providing help information in connection with an application program, the method comprising:

displaying, by a computing device, a user interface of the application program for receiving user interactions, the user interface of the application program presenting a control display area having controls to perform application functions of the application program for processing a document associated with the application program;

executing a plug-in for the application program, the plug-in presenting additional controls in the control display area, the additional controls including a control to create a video clip of help information related to one or more application functions of the application program and a control to search for available help information provided by an online community system hosted by a server;

in response to selection of the control to create the video clip of help information, capturing video information depicting user interactions with the application program;

automatically capturing context information maintained by the application program via the plug-in, the context information recorded by the application program during the user interactions with the application program, the context information including user input received by the application program and commands processed by the application program in response to selection of one or more of the controls to perform application functions of the application program;

generating searchable tag information based on the context information for aiding identification of the video clip in a future search, the searchable tag information indicating the application program and at least one specific application function performed during the user interactions with the application program;

in response to determining that the user interactions with the application program have completed, generating the video clip of help information based on the captured video information depicting the user interactions with the application program; and

uploading the video clip of help information with the searchable tag information to the online community system for indexing the video clip of help information based on the application program and the at least one specific application function performed during the user interactions with the application program, wherein:

the online community system is accessible to a plurality of users,

the online community system is configured to provide access to the video clip of help information based on the searchable tag information, and

selection of the control to search for available help information presents a dialog box for submitting a query to the online community system.

2. The method of claim 1 , wherein the context information indicates a focus of the application program that was recorded when the at least one specific application function was performed during the user interactions with the application program.

3. The method of claim 1 , wherein:

the commands processed by the application program are recorded in a command stack of the application program, and

automatically capturing context information comprises capturing information in the command stack.

4. The method of claim 1 , wherein:

the user input received by the application program is recorded in an un-do stack, and

automatically capturing context information comprises capturing information in the un-do stack.

5. The method of claim 1 , further comprising receiving an audio narration provided by a user during the user interactions with the application program.

6. The method of claim 5 , further comprising:

generating explanatory information based on the audio narration provided by the user; and

uploading the explanatory information to the online community system.

7. The method of claim 1 , wherein generating searchable tag information further comprises generating the searchable tag information based on image processing of the video information.

8. The method of claim 1 , wherein generating searchable tag information further comprises generating the searchable tag information based on audio portions of the video information.

9. A computer-readable storage device storing computer-executable instructions that, when executed by a computing device, cause the computing device to perform a method of providing help information associated with an application program, the method comprising:

displaying, by the computing device, a user interface of the application program for receiving user interactions, the user interface of the application program presenting a control display area having controls to perform application functions of the application program for processing a document associated with the application program;

executing a plug-in for the application program, the plug-in presenting additional controls in the control display area, the additional controls including a control to create a video clip of help information related to one or more application functions of the application program and a control to search for available help information provided by an online community system hosted by a server;

in response to selection of the control to create the video clip of help information, capturing video information depicting user interactions with the application program;

automatically capturing context information maintained by the application program via the plug-in, the context information recorded by the application program during the user interactions with the application program, the context information including user input received by the application program and commands processed by the application program in response to selection of one or more of the controls to perform application functions of the application program;

generating searchable tag information based on the context information for aiding identification of the video clip in a future search, the searchable tag information indicating the application program and at least one specific application function performed during the user interactions with the application program;

in response to determining that the user interactions with the application program have completed, generating the video clip of help information based on the captured video information depicting the user interactions with the application program; and

uploading the video clip of help information with the searchable tag information to the online community system for indexing the video clip of help information based on the application program and the at least one specific application function performed during the user interactions with the application program, wherein:

the online community system is accessible to a plurality of users,

the online community system is configured to provide access to the video clip of help information based on the searchable tag information, and

selection of the control to search for available help information presents a dialog box for submitting a query to the online community system.

10. The computer-readable storage device of claim 9 , wherein the context information indicates a focus of the application program that was recorded when the at least one specific application function was performed during the user interactions with the application program.

11. The computer-readable storage device of claim 9 , wherein:

the commands processed by the application program are recorded in a command stack of the application program, and

automatically capturing context information comprises capturing information in the command stack.

12. The computer-readable storage device of claim 9 , wherein:

the user input received by the application program is recorded in an un-do stack, and

automatically capturing context information comprises capturing information in the un-do stack.

13. The computer-readable storage device of claim 9 , further storing computer-executable instructions for receiving an audio narration provided by a user during the user interactions with the application program.

14. The computer-readable storage device of claim 9 , wherein generating searchable tag information further comprises generating the searchable tag information based on image processing of the video information.

15. The computer-readable storage device of claim 9 , wherein generating searchable tag information further comprises generating the searchable tag information based on audio portions of the video information.

16. A computing device comprising:

a processor configured to execute computer-executable instructions; and

memory storing computer-executable instructions for:

displaying, by the computing device, a user interface of the application program for receiving user interactions, the user interface of the application program presenting a control display area having controls to perform application functions of the application program for processing a document associated with the application program;

executing a plug-in for the application program, the plug-in presenting additional controls in the control display area, the additional controls including a control to create a video clip of help information related to one or more application functions of the application program and a control to search for available help information provided by an online community system hosted by a server;

in response to selection of the control to create the video clip of help information, capturing video information depicting user interactions with the application program;

automatically capturing context information maintained by the application program via the plug-in, the context information recorded by the application program during the user interactions with the application program, the context information including user input received by the application program and commands processed by the application program in response to selection of one or more of the controls to perform application functions of the application program;

generating searchable tag information based on the context information for aiding identification of the video clip in a future search, the searchable tag information indicating the application program and at least one specific application function performed during the user interactions with the application program;

in response to determining that the user interactions with the application program have completed, generating the video clip of help information based on the captured video information depicting the user interactions with the application program; and

uploading the video clip of help information with the searchable tag information to the online community system for indexing the video clip of help information based on the application program and the at least one specific application function performed during the user interactions with the application program, wherein:

the online community system is accessible to a plurality of users,

the online community system is configured to provide access to the video clip of help information based on the searchable tag information, and

selection of the control to search for available help information presents a dialog box for submitting a query to the online community system.

17. The computing device of claim 16 , wherein the context information indicates a focus of the application program that was recorded when the at least one specific application function was performed during the user interactions with the application program.

18. The computing device of claim 16 , wherein:

the user input received by the application program is recorded in an un-do stack,

the commands processed by the application program are recorded in a command stack of the application program, and

automatically capturing context information comprises capturing information in the un-do stack and capturing information in the command stack.

19. The computing device of claim 16 , wherein the memory further stores computer-executable instructions for receiving an audio narration provided by a user during the user interactions with the application program.

20. The computing device of claim 16 , wherein generating searchable tag information further comprises at least one of:

generating the searchable tag information based on image processing of the video information, and

generating the searchable tag information based on audio portions of the video information.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034542/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 14, 2007
From: DEYO, RODERIC; PRATLEY, CHRISTOPHER; SAHASRABUDHE, SANDEEP; SWAMI, SUNIL; RAIKES, JEFF
To: MICROSOFT CORPORATION
Reel/Frame 020248/0454 →
Continuity (1)
Related Publication 20090132918A1 · May 21, 2009