WO2013006221A1 - Procédé de fourniture d'un matériel didactique pendant qu'une application logicielle est en utilisation - Google Patents

Procédé de fourniture d'un matériel didactique pendant qu'une application logicielle est en utilisation Download PDF

Info

Publication number
WO2013006221A1
WO2013006221A1 PCT/US2012/032390 US2012032390W WO2013006221A1 WO 2013006221 A1 WO2013006221 A1 WO 2013006221A1 US 2012032390 W US2012032390 W US 2012032390W WO 2013006221 A1 WO2013006221 A1 WO 2013006221A1
Authority
WO
WIPO (PCT)
Prior art keywords
learning
user
software application
help
learning resource
Prior art date
Application number
PCT/US2012/032390
Other languages
English (en)
Inventor
Justin Frank Matejka
Tovi Grossman
George Fitzmaurice
Original Assignee
Autodesk, Inc.
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 Autodesk, Inc. filed Critical Autodesk, Inc.
Publication of WO2013006221A1 publication Critical patent/WO2013006221A1/fr

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B7/00Electrically-operated teaching apparatus or devices working with questions and answers
    • G09B7/02Electrically-operated teaching apparatus or devices working with questions and answers of the type wherein the student is expected to construct an answer to the question which is presented or wherein the machine gives an answer to the question presented by a student
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24575Query processing with adaptation to user needs using context
    • 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

Definitions

  • the present invention generally relates to software usage and, more specifically, to a method and system for providing instructional information to software application end-users.
  • GUI graphical end-user interface
  • GUIs often provide the end-user with access to a set of tools that can be used to perform various operations within a workspace generated by the software application.
  • a CAD application could provide a set of drawing tools that could be used to draw different shapes within a drawing workspace generated by the CAD application.
  • Each tool in the set of tools could be represented within the GUI with an icon that the end-user could select in order to use the tool.
  • the software application may include a "help" database that receives a query from the end-user and then identifies articles that relate to the received query. Those articles may then be displayed to the end-user.
  • help databases One problem with conventional help databases is that access thereto is based on a "pull" model, in which the end-user is required to open a new window in order to submit a query to the help database. Therefore, when the end-user is actively working within a workspace generated by the software application and needs to access instructional information pertaining to that work, the end-user is required to stop working in order to access the help database. Such interruptions may inhibit the productivity of the end-user.
  • One embodiment of the present invention sets forth a computer-implemented method for providing instructional information to an end-user of a software application.
  • the method includes the steps of receiving contextual information associated with the software application, computing a relevance score for each of a plurality of learning resources based on the relevance of each learning resource to the contextual information, based on the relevance scores, selecting one or more learning
  • Figure 1 illustrates a block diagram of a computing device configured to implement one or more embodiments of the present invention
  • Figure 2 schematically illustrates an exemplary embodiment of an ambient help GUI displayed on an ambient help display device
  • Figure 3 illustrates a block diagram of a computing device having an alternative configuration for implementing one or more embodiments of the present invention
  • Figure 4 schematically illustrates an exemplary embodiment of an ambient help GUI displayed on a single display with an application GUI
  • Figure 5 illustrates a block diagram of another embodiment of a computing system configured to implement one or more embodiments of the present invention.
  • Figure 6 is a flowchart of method steps for providing instructional material to an end-user of a software application, according to one embodiment of the present invention.
  • FIG. 1 illustrates a block diagram of a computing device 100 configured to implement one or more embodiments of the present invention.
  • Computing device 100 may be a desktop computer, a laptop computer, a smart phone, a personal digital assistant (PDA), tablet computer, or any other type of computing device configured to receive input, process data, and display images.
  • Computing device 100 includes a processor 101 , input/output (I/O) devices 102, and a memory block 103, and is configured to run a software application 104 that resides in memory block 103.
  • I/O input/output
  • Computing device 100 receives input from an end-user and displays graphical images to the end-user via I/O devices 102.
  • Processor 101 may be any suitable processor implemented as a central processing unit (CPU), a graphics processing unit (GPU), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), or another type of processing unit.
  • processor 101 is configured to execute program instructions associated with a particular instruction set architecture (ISA) specific to processor
  • Processor 101 including a software application 104 and, in some embodiments, an ambient help application 105.
  • Processor 101 is also configured to receive data from and transmit data to I/O devices 102 and memory 103.
  • I/O devices 102 include devices that may be used to input data to computing device 100 or devices that output data from computing device 100.
  • I/O devices 102 may include input devices, such as a joystick, a switch, a microphone, a video camera, a keyboard, a mouse, or a touchpad, among others.
  • I/O devices 102 may also include one or more output devices, such as a one or more display screens, a speaker, a projector, or a lamp, among others.
  • I/O devices 102 include devices used to input data to or output data from computing device 100, such as an Ethernet port, a serial port, a compact disc (CD) drive, or a digital video disc (DVD) drive, among others.
  • one or more of I/O devices 102 are configured to couple computing device 100 to a network 1 10.
  • I/O devices 102 also include a software application display device 120 and an ambient help display device 130.
  • Software application display device 120 may be a computer monitor or other display screen dedicated to presenting an application graphical user interface (GUI) and/or other interface windows associated with software application 104 to facilitate the use thereof by an end-user.
  • GUI application graphical user interface
  • Ambient help display device 130 may be a computer monitor or other display screen dedicated to presenting an ambient help GUI and/or other interface windows associated with ambient help application 105 and configured to provide an opportunistic learning environment for the and end-user of software application 104.
  • a more detailed embodiment of an ambient help GUI that may be displayed by ambient help display device 130 is described below in
  • Network 1 10 may be any technically feasible type of communications network that allows data to be exchanged between computing device 100 and external entities or devices such as resource relevance database 151 , learning resource databases 152, 153, and/or user preference database 107.
  • network 1 10 may include a wide area network (WAN), a local area network (LAN), a wireless (WiFI) network, and/or the Internet, among others.
  • WAN wide area network
  • LAN local area network
  • WiFI wireless
  • Memory block 103 may be a hard disk, a flash memory stick, a compact disc read-only memory (CD-ROM), a random access memory (RAM) module, or any other type of volatile or non-volatile memory unit capable of storing data.
  • CD-ROM compact disc read-only memory
  • RAM random access memory
  • Memory 103 includes various software programs that can be executed by processor 101 , including software application 104 and, in some embodiments, ambient help application 105, as described in greater detail below.
  • memory block 103 also includes a user preference database 106, which includes user-specific information related to software application 104 that ambient help application 105 may use to create an end-user profile and therefore select more relevant and/or useful learning resources for the end-user.
  • user-specific information may include knowledge of end-user proficiency level with respect to software application 104 and history of interactions by the end-user with ambient help application 105, e.g., what learning resources provided by ambient help application 105 have been viewed, replayed, or bookmarked by the end-user.
  • a user preference database 107 that is substantially similar and/or identical to user preference database 106 may be located remotely from computing device 100 and connected to computing device 100 via network 1 10.
  • user preference database 107 is used and updated by ambient help application 105 in lieu of user preference database 106.
  • user preference database 107 is used and updated by ambient help application 105 in addition to user preference database 106.
  • the use of a remotely located user preference database, i.e., user preference database 107 facilitates access to user preference information by ambient help application 105 even when the end-user is running software application 104 on a different computing device than computing device 100.
  • Software application 104 may be any computer application, such as a computer-aided design (CAD) application, a computer graphics application, an animation application, a word processing application, a computer programming application, and the like.
  • Software application 104 comprises program instructions that can be executed by processor 101 .
  • software application 104 is configured to receive data from an end-user of computing device 100 via a keyboard and mouse, and to display graphical images to the end-user via software application display device 120.
  • Other input devices such as a touch pad, a digital tablet, etc., may also be used in conjunction with software application 104.
  • Software application 104 is configured to generate a GUI and to display the GUI to the end-user via software application display device 120.
  • the GUI generated by software application 104 is referred to herein as an "application GUI.”
  • the application GUI provides the end-user with access to various tools that allows an end- user of software application 104 to manipulate data, such as graphical data or textual data, among other types of data.
  • the application GUI may generate a drafting area and provide the end-user with access to various drawing tools that could each be used to draw a particular shape, such as a circle or a hexagon, within the drafting area.
  • Each tool may be represented by a graphical icon within the application GUI.
  • each tool may be included within software application 104, or, alternatively, may be a stand-alone application that operates in conjunction with software application 104.
  • a given tool may be a plug-in, an add-on, or an in-scene widget configured to be embedded within software application 104 and to cooperate with software application 104.
  • Instructional material corresponding to a given tool may describe the function of the tool, provide suggestions regarding techniques for using the tool, or demonstrate the use of the tool via one or more video clips.
  • instructional infornnation associated with the tool may assist the end-user when learning to use that tool.
  • Ambient help application 105 is a software application configured to provide instructional information in a non-distracting fashion to an end-user of software application 104 while the end-user utilizes software application 104.
  • Ambient help application 105 selects and provides context-sensitive instructional information to the end-user without direct user input.
  • ambient help application 105 monitors the activity of the end-user in software application 104 and thereby determines an application context. Knowledge of the application context allows ambient help application 105 to select the most relevant instructional information from the large quantity of such instructional material that is generally available for any particular software application.
  • ambient help application 105 computes relevance scores for each available learning resource via a relevance algorithm using information related to application context. An exemplary relevance algorithm that uses application context to select relevant instructional information is described below.
  • application context may include a wide variety of contextual information associated with software application 104.
  • the contextual information can, therefore, be used to accurately indicate the relevance of different learning resources.
  • Such contextual information may include the command or commands that are currently being used in software application 104 by the end-user, content of any document or documents that are being modified with software application 104, application state information related to software application 104, and the expertise level of the end-user with respect to software application 104.
  • ambient help application 105 can be configured to detect whenever the end-user issues a command in software application 104, e.g., by clicking a mouse cursor on a button or other element in the application GUI, entering a command on a command line, issuing a command shortcut, entering a command alias, pressing a hot key, or issuing a command from an automated script.
  • ambient help application 105 may be implemented as a plug-in for software application 104 and configured to receive notification from software application 104 whenever the end-user initiates a command.
  • ambient help application 105 may be an application running on a separate computing device that is networked to computing device 100 and configured to monitor end-user activity in software application 104.
  • ambient help application 105 may include as part of application context is document content.
  • software application 104 is a CAD application
  • ambient help application 105 can determine the contents of the document the end-user is currently modifying and weight the relevance of more applicable commands accordingly.
  • the relevance of learning resources may be weighted differently in a relevance algorithm when the document being modified is an architectural building plan versus when the document is a three-dimensional mechanical part model.
  • Application state information related to software application 104 e.g., what dialogue windows are open, can also affect the relevance weighting of learning resources.
  • Expertise level of the end-user with respect to software application 104 can also be used by ambient help application 105 to weight the relevance of learning resources differently for different end-users of software application 104.
  • Another factor that can affect the relevance of different learning resources is the time-weighting of videos that are currently being played by ambient help application 105.
  • a newly displayed video may be given an increased weighting.
  • videos that have been displayed for too long may be given a reduced weighting.
  • a relevance score for a video when first displayed may be multiplied by a time-weighting factor greater than 1 , e.g. 1 .2.
  • the time-weighting factor then decreases linearly down to 0 after a desired time interval, e.g., five minutes, thereby ensuring that the video in question will be replaced after five minutes.
  • Other contextual information associated with software application 104 that can affect the relevance of learning resources is how recently a learning resource has been displayed by ambient help application 105. For example, any learning resource among the fifty most recently displayed videos may be excluded from relevance calculations to ensure that the same videos are not played repeatedly for a given command or feature of software application 104. In some embodiments, once a new command is issued by the end-user, the exclusion of previously played videos is ended and any videos with the highest relevance scores are again selected to be played. [0031] End-user preferences and usage history of specific learning resources by the end-user are other categories of contextual information associated with software application 104 that can affect the relevance of learning resources.
  • ambient help application 105 can be configured to record each time a particular user selects a learning resource by moving the cursor thereon, rewinding portions of the video, replaying the entire video, etc.
  • the selected learning resource can be given a higher relevance score in the future.
  • Learning resources that have been tagged and/or bookmarked by the end-user may be given similar treatment.
  • Such user-specific information can be stored locally in user preference database 106 and/or remotely in user preference database 107.
  • a specific category of learning resources may be given a higher relevance score for a particular end-user based on the end-user's history of utilizing that category of learning resource, e.g., videos produces by a particular third party.
  • ambient help application 105 is configured to receive information from and transmit information to one or more databases via network 1 10 as part of the process of selecting and retrieving instructional information and other learning resources for the end-user.
  • a resource relevance database 151 a resource relevance database 151 , learning resource databases 152, 153, and a user preference database 107 are shown, although more or fewer of such databases may be accessed by ambient help application 105 without exceeding the scope of the invention as disclosed herein.
  • Learning resource databases 152, 153 are databases of video- and text-based learning resources for software application 104. Examples of learning resources residing in learning resource databases 152, 153 include formal training videos and textual or diagrammatic help documentation produced by the developer of software application 104.
  • learning resource databases 152, 153 may include tutorial videos and help documentation for software application 104 produced by individuals and third parties. Given the prevalence of tutorial videos available via the Internet, e.g., from YouTube, etc., there are generally far more independently produced learning resources for a given soft ware application than those produced by the developer of the software application, so in a preferred embodiment, the content of learning resource databases 152, 153 is not exclusively limited to instructional material for software application 104 produced by the developer of software application 104. [0033] In one embodiment, learning resource database 152 contains learning resources produced by the developer of software application 104 and learning resource database 153 contains learning resources produced by third parties. The learning resources residing in learning resource database 152 may include video- and text-based instructional material for software application 104.
  • the learning resources residing in learning resource database 153 may be a cache of video- and text-based instructional material for software application 104 that has been collected using searches of one or more sources, e.g., the Internet, consumer publications related to the use of software application 104, and the like.
  • learning resource database 153 may simply be "virtual" database that includes an up-to-date listing of all videos and/or other learning resources related to software application 104 currently available and pointers to such materials, so that the learning resources themselves do not reside in learning resource database 153 and instead are accessed from their original location by ambient help application 105 via network 1 10.
  • the information contained in learning resource databases 152, 153 is not necessarily static and may be updated over time as more learning resources related to software application 104 become available from the developer of software application 104 and third parties.
  • learning resources contained in learning resource databases 152, 153 may include enhancements, such as timeline tagging and/or thumbnails that help an end-user to quickly locate a portion of a video that is germane to the end-user's interest.
  • a video with timeline "tagging” includes a timeline display of the video having tags that indicate what commands or other features associated with software application 104 are being described in the video and when.
  • the tags may include iconic information, such as a symbol associated with the command in question, and/or a textual label. Multiple thumbnails may also be displayed proximate a video timeline as part of such enhanced videos to help the end-user select a desired portion of the video quickly.
  • learning resources included in learning resource databases 152, 153 may include a plurality of web pages.
  • each command or feature of software application 104 may have a dedicated web page associated therewith, so that any text-based learning resources displayed for the end-user will have consistent formatting in the ambient help GUI.
  • the end-user can more easily find helpful information from the learning resources being displayed by ambient help application 105.
  • video-based learning resources herein referred to as "videos”
  • videos may be produced with timeline tagging and other enhancements, as is common with videos produced by the developer of software application 104.
  • enhancements may be provided by ambient help application 105 when new videos are located and added to either learning resource database 152 or 153.
  • enhancement information related to videos for software application 104 i.e., timeline tags, thumbnails, etc., resides in a separate database accessible to ambient help application 105.
  • the unenhanced versions of the videos may reside in their original locations and ambient help application 105 retrieves the appropriate enhancement information separately prior to presentation of a video to an end-user.
  • Resource relevance database 151 is a database that includes metadata related to the learning resources residing in or referenced by learning resource database 152 or 153.
  • the metadata in resource relevance database 151 may include key words that occur in each learning resource, software application 104 commands that are referenced by each learning resource, end-user expertise level the learning resource is most appropriate for, quality ratings assigned to each learning resource by other users, and/or or predetermined relevance scores for each learning resource. Key words may be taken from the learning resource title, description, or text, closed- captioning incorporated into a video, and/or comments made by other end-users with respect to the learning resource.
  • Quality ratings may be assigned to a learning resource on-line, e.g., via YouTube, etc., by other end-users of software application 104 who have accessed the particular learning resource.
  • Each relevance score quantifies the relevance of the learning resource to specific commands or other features of software application 104, and an exemplary algorithm for the
  • ambient help application 105 can quickly locate learning resources in real-time that are likely to be relevant to the current activity of the end-user, since the hundreds to thousands of potential learning resources do not have to be individually examined by ambient help application 105 each time the end-user of software application 104 uses a different command.
  • resource relevance database 151 includes
  • resource relevance database 151 is shown connected to computing device 100 via network 1 10. In other embodiments, resource relevance database 151 may reside in memory block 103 for faster access by ambient help application 105.
  • an end-user of computing device 100 faces software application display device 120 and performs tasks in software application 104 normally.
  • ambient help application 105 automatically presents help content relevant to the commands or other features the end-user is currently working with in software application 104.
  • help content may include a combination of one or more text- and video-based learning resources, and is displayed on ambient help display device 130, which may be positioned peripherally with respect to the point of view of the end-user. It is noted that the help content displayed on ambient help display device 130 is not selected based on any specific request for help information by the end-user, but is instead automatically selected and displayed by ambient help application 105.
  • Ambient help application 105 is configured to select and display the most relevant learning resources available to the end-user of software application 104 to maximize the potential for opportunistic learning on the part of the end-user.
  • ambient help application 105 searches available learning resources, for example in learning resource databases 152, 153, and/or on the Internet, quantifies the relevance of each learning resource with respect to the current application context, and displays the most relevant learning resources on ambient help display device 130.
  • ambient help application 105 accesses resource relevance database 151 for metadata associated with available learning resources, such as predetermined relevance scores for available learning resources and/or information used to calculate relevance scores, such as key words that occur in each learning resource.
  • FIG. 2 schematically illustrates an exemplary embodiment of an ambient help GUI 200 displayed on ambient help display device 130.
  • Ambient help GUI 200 is generated by ambient help application 105 and includes a plurality of help display windows 210-215 and a cursor 216.
  • Ambient help GUI 200 represents just one example of an ambient help GUI that could be generated by ambient help application 105.
  • Those skilled in the art will recognize that different configurations of ambient help applications may generate different types of ambient help GUIs.
  • Each of help display windows 210-215 displays a learning resource that has been selected by ambient help application 105 as being relevant with respect to the current application context of software application 104 as an end-user utilizes software application 104.
  • An exemplary algorithm for determining relevance with respect to current application context is described below.
  • any software program or programs, any hardware device or devices, or any combination of software and hardware device(s) configured to generate ambient help GUI 200 described in Figure 2 are within the scope of the invention described herein.
  • Help display windows 210-214 are reserved for playing video-based learning resources, such as third-party instructional videos posted on YouTube or training videos produced by the developer of software application 104.
  • Each of help display windows 210-214 may include a video display region 221 , a tool icon 222, a "check box" 223, a video timeline 224, and transport controls 225.
  • Video display region 221 represents the region in which a relevant video is displayed by ambient help application 105.
  • Tool icon 222 is an iconic indicator of what command or feature of software application 104 is currently being described in video display region 221 . In some embodiments, tool icon 222 may also include a text label.
  • Check box 223 is an active GUI button that can be clicked by the end-user to indicate to ambient help application 105 that the end-user would like to keep the corresponding video playing to completion and/or unmuted.
  • Video timeline 224 graphically indicates the duration and current frame location of the video being played in video display region 221 .
  • video timeline 224 may include timeline tags 226, which graphically indicate the frame location in the current video at which a command or feature of software application is described.
  • timeline tags 226 indicate the frame at which such a description begins. In other embodiments, timeline tags 226 indicate the entire block of time in the video in which such a description takes place.
  • timeline tags 226 are iconic indicators of what command or feature is being described, and in other embodiments, timeline tags are textual labels.
  • videos may begin playing at the frame location indicated by one of timeline tags 226, so that the video immediately presents useful information to the end-user.
  • Transport controls 225 may include typical video navigation GUI buttons, e.g., fast forward, rewind, as well as navigation buttons for skipping forward to the next video selected by a relevance algorithm or for returning to a previously played video.
  • Help display window 210 may be configured to be the primary display window for video-based learning resources, and is therefore larger and located more prominently than the secondary help display windows 21 1 -214.
  • help display 210 may include thumbnails 228 of different frame locations of the current video to provide more visual cues for the end-user to quickly determine resources of interest.
  • each of help display windows 210-214 may include thumbnails 228, provided the size of ambient help GUI allows for these features.
  • help display window 215 is reserved for one or more text-based learning resources.
  • help display 215 may be configured as a web page having consistent formatting for each command or feature of software application 104 presented thereby.
  • the format of help display 215 may be modeled after the command reference pages published by the developer of software application 104 for software application 104.
  • at least one text-based learning resource is displayed in conjunction with a plurality of video-based learning resources.
  • a text-based learning resource is displayed when a relevance algorithm determines that the text-based learning resource is one of the most relevant learning resources available.
  • videos being played in help display windows 210-215 may have muted audio and dimmed video whenever the end-user has positioned cursor 216 over the display area allocated for software application 104, i.e., somewhere on software application display device 120.
  • the frame rate of these videos may also be reduced, for example to one frame every seconds.
  • a smooth fade between frames may be used, for example distributed over about one second, to further avoid the distraction of new frames constantly being flashed onto help display windows 210-215 when the end- user is engaged in utilizing software application 104.
  • selection of check box 223 may override the muting and reduced frame rate presentation of videos that normally occurs when the end-user has positioned cursor 216 over the display area allocated for software application 104. As new learning resources are displayed by ambient help application 105, smooth fade out of the expiring video and into the new video may be used. [0047]
  • more help display windows in ambient help display device 130 can expose the end-user to more learning resources, but as such display windows are reduced in size, the likelihood of the videos so displayed being watched by the end-user is also reduced.
  • help display window 210 is the primary display window and has a
  • help display windows 21 1 -215 are positioned below the primary display window and have respective resolution of 490 by 278.
  • help display windows 21 1 -214 may not include all features, such as thumbnails 228 or timeline tags 226.
  • ambient help application 105 selects learning resources for display in ambient help GUI 200 based on the relevance of the learning resources with respect to application context, and not in response to specific requests for information by the end-user. According to
  • relevance of each available learning resource may be quantified using a relevance algorithm that takes into account one or more aspects of application context in conjunction with content of the learning resource.
  • v.title(c) is set to 1 if the title of the video contains the command name c, and is set to 0 if not.
  • v.keywords(c) is set to 1 if keywords associated with the video contain the command name c
  • v.description(c) is set to 1 if the command name c is found in a description associated with the video
  • v.comments(c) is set to 1 if command name c appears in comments associated with the video
  • Equation 1 v.commands(c) is set to 1 if command c is used in the command stream.
  • having command c used in the command stream is worth more than having command c in the title, which is in turn more valuable than having command c mentioned in the keywords, description or comments.
  • 0.02 points were added for each user comment associated with the video to account for generally popular videos.
  • One of skill in the art can readily incorporate other relevance factors associated with a video into Equation 1 , when applicable.
  • Equation 1 Because the variables in Equation 1 are relatively static in time, in some embodiments, relevance score, S(v,c) of each available video with respect to a given command can be calculated before the end-user utilizes software application 104. In such an embodiment, such scores can be stored in resource relevance database 151 as predetermined relevance scores. Consequently, only time-weighting and similar time-transient factors need be calculated for each available video in real time by ambient help application 105.
  • the occurrence of previously issued commands may figure into the relevance calculation for each video.
  • a relevance score for each video, R(v) may be calculated for all available videos using Equation 2, which weights the current command entered by the end-user most highly and weights the previous four commands c, with a decreasing power function:
  • FIG. 3 illustrates a block diagram of a computing device 300 having an alternative configuration for implementing one or more embodiments of the present invention.
  • Computing device 300 is substantially similar in organization to computing device 100 in Figure 1 with the exception of memory block 303 and I/O devices 302.
  • Memory 303 includes software application 104, but does not include ambient help application 105 as a separate process that is run by processor 101 .
  • an ambient help plug-in 305 is included in software application 104, so that the functionality of the ambient help process is incorporated into software application 104.
  • Memory 303 also includes a database 350 that may include a user preference database similar to user preference database 106 and/or a resource relevance database similar to resource relevance database 151 .
  • database 350 may be configured to store metadata related to the large number of learning resources that are located remotely from computing device 300, thereby expediting real-time relevance computations and searching funcitons performed by ambient help plug-in 305.
  • I/O devices 302 of computing device 300 may only include a single display device 320. Consequently, ambient help plug-in 305 displays an application GUI for software application 104 and an ambient help GUI on single display device 320.
  • Figure 4 schematically illustrates an exemplary embodiment of an ambient help GUI 350 displayed on a single display 320 along with an application GUI 360.
  • ambient help GUI 350 may include a help display window similar in configuration to help display window 210, and may include video display region 221 , tool icon 222, check box 223, video timeline 224, transport controls 225, and the like. Due to the reduced available screen area on single display 320, ambient help GUI 350 may only display a single learning resource instead of a plurality of learning resources.
  • ambient help GUI 350 may be minimized to an iconic indicator and/or a textual line display that alerts the end-user to what learning resource or resources are available while occupying very little of single display 320 and/or application GUI 360.
  • FIG. 5 illustrates a block diagram of another embodiment of a computing system 500 configured to implement one or more embodiments of the present invention.
  • Computing system 500 includes a computing device 550 and a secondary computing device 560.
  • Computing device 550 is substantially similar in organization to computing device 100 in Figure 1 , except that memory 503 does not contain ambient help application 105 and I/O devices 502 do not include an ambient help display device.
  • Secondary computing system 560 includes a processor 101 , I/O devices 102, and a memory block 563.
  • I/O devices 102 include an ambient help display 567.
  • Memory block 563 includes ambient help application 105 and, in some embodiments, user preference database 106 and resource relevance database 151 , in order to expedite relevance computations by ambient help application 105.
  • Secondary computing device 560 may be any type of computing device configured to run ambient help application 105 and display output to the end-user of software application 104, such as a desktop computer, a laptop computer, a smart phone, a PDA, or a tablet computer. Secondary computing device 560 is networked in some fashion to computing device 550 via network connection 580, which can be a wireless or hard-wired network connection, so that ambient help application 105 can monitor end-user activity and provide relevant learning resources as described above.
  • network connection 580 can be a wireless or hard-wired network connection, so that ambient help application 105 can monitor end-user activity and provide relevant learning resources as described above.
  • Figure 6 is a flowchart of method steps for providing instructional material to an end-user of a software application, according to one embodiment of the present invention. Although the method steps are described in conjunction with the system of Figure 1 , persons skilled in the art will understand that any system configured to perform the method steps, in any order, is within the scope of the invention.
  • the method 600 begins at step 602, where ambient help
  • the application 105 receives contextual information associated with software application 104.
  • the contextual information associated with software application 104 may include an indication that a tool or command associated with software application 104 is being used by the end-user, an end-user preference associated with previously displayed learning resources, the experience level of the end-user with software application 104, application state information related to software application 104, and the like.
  • Ambient help application 105 may receive the contextual information directly from software application 104, from a plug-in associated with the software application, or from an application running independently of software application 104 that is monitoring end-user activities in software application 104. In some embodiments, ambient help application 105 acts as the independently running application monitoring end-user activity.
  • ambient help application 105 computes relevance scores for each of a plurality of available learning resources based on the relevance of each learning resource to the contextual information received in step 602. In some embodiments, the relevance scores can be partially computed for each learning resource prior to the receipt of contextual information in step 602. In some
  • time-transient factors are included in the relevance scores computed in step 604, e.g., how long learning resources have currently been displayed.
  • ambient help application 105 selects one or more learning resources for display to the end- user.
  • the number and type of learning resources selected may vary according to different embodiments of the invention. For example, in some embodiments, only video-based learning resources may be selected for display. In other embodiments, multiple video-based and a single text-based learning resource may be selected for display.
  • ambient help application 105 displays to the end-user the one or more selected learning resources in a help space within a display window, where the learning resources displayed are those having the highest computed relevance score.
  • the one or more learning resources may be displayed as thumbnails, reduced-size videos, or full-sized videos.
  • some or all of the learning resources may be displayed as an iconic indicator or a textual line display that can be expanded when selected by the end- user.
  • an ambient help application provides relevant instructional information to an end-user of a software application continuously and in a non-distracting fashion.
  • the learning resources provided to the end-user may be selected based on relevance to the latest command and/or feature of the software application the end-user is utilizing as well as other contextual information related to the software application.
  • instructional information related to end-user activity is displayed without the end-user interrupting current work and making an explicit request therefor.
  • Another advantage of the present invention is that an end-user can be exposed to a large number of different learning resources, including those unknown to the end- user, so that the end-user can benefit from exposure to such learning resources regardless of end-user proficiency level.
  • Yet another advantage of the present invention is that the instructional material displayed to the end-user can be selected based in part on end-user-specific information, such as learning resource viewing history, personal preferences, etc.
  • One embodiment of the invention may be implemented as a program product for use with a computer system.
  • the program(s) of the program product define functions of the embodiments (including the methods described herein) and can be contained on a variety of computer-readable storage media.
  • Illustrative computer- readable storage media include, but are not limited to: (i) non-writable storage media (e.g., read-only memory devices within a computer such as CD-ROM disks readable by a CD-ROM drive, flash memory, ROM chips or any type of solid-state non-volatile semiconductor memory) on which information is permanently stored; and (ii) writable storage media (e.g., floppy disks within a diskette drive or hard-disk drive or any type of solid-state random-access semiconductor memory) on which alterable information is stored.
  • non-writable storage media e.g., read-only memory devices within a computer such as CD-ROM disks readable by a CD-ROM drive, flash memory, ROM chips or any type of solid-state non-volatile semiconductor memory
  • writable storage media e.g., floppy disks within a diskette drive or hard-disk drive or any type of solid-state random-access semiconductor memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

Selon l'invention, une application d'aide ambiante sélectionne et affiche des ressources d'apprentissage à un utilisateur final d'une application logicielle, lesquelles sont pertinentes pour les activités courantes de l'utilisateur final dans l'application logicielle. L'application d'aide ambiante sélectionne les ressources d'apprentissage sur la base de scores de pertinence calculés de chaque ressource d'apprentissage et affiche les ressources d'apprentissage dans un espace d'aide dédié. Les ressources d'apprentissage peuvent comprendre des informations didactiques à base de vidéo et de texte, et peuvent être dimensionnées et positionnées dans l'espace d'aide selon le score de pertinence.
PCT/US2012/032390 2011-04-08 2012-04-05 Procédé de fourniture d'un matériel didactique pendant qu'une application logicielle est en utilisation WO2013006221A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/083,312 2011-04-08
US13/083,312 US8538947B2 (en) 2011-04-08 2011-04-08 Method of providing instructional material while a software application is in use

Publications (1)

Publication Number Publication Date
WO2013006221A1 true WO2013006221A1 (fr) 2013-01-10

Family

ID=46966900

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2012/032390 WO2013006221A1 (fr) 2011-04-08 2012-04-05 Procédé de fourniture d'un matériel didactique pendant qu'une application logicielle est en utilisation

Country Status (2)

Country Link
US (1) US8538947B2 (fr)
WO (1) WO2013006221A1 (fr)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140009677A1 (en) * 2012-07-09 2014-01-09 Caption Colorado Llc Caption extraction and analysis
US10225625B2 (en) 2009-04-06 2019-03-05 Vitac Corporation Caption extraction and analysis
US9141253B2 (en) * 2011-10-14 2015-09-22 Autodesk, Inc. In-product questions, answers, and tips
US9569287B1 (en) * 2013-03-14 2017-02-14 Dell Software Inc. System and method for interactive tutorials
US9471336B2 (en) 2013-11-12 2016-10-18 Sap Se Mechanism for delivery of help content to a cloud landscape
US9274783B2 (en) 2013-12-25 2016-03-01 Sap Se Dynamic delivery and integration of static content into cloud
KR102206426B1 (ko) * 2014-01-15 2021-01-22 삼성전자 주식회사 사용자 기기의 도움말 제공 방법 및 그에 관한 장치
US9111093B1 (en) * 2014-01-19 2015-08-18 Google Inc. Using signals from developer clusters
US20150242504A1 (en) * 2014-02-26 2015-08-27 Microsoft Corporation Automatic context sensitive search for application assistance
US10192022B2 (en) * 2014-06-04 2019-01-29 IronCAD, LLC Geometric modeling system with intelligent behaviors of design components
US10757159B2 (en) 2014-07-25 2020-08-25 Gracenote Digital Ventures, Llc Retrieval and playout of media content
US20160180352A1 (en) * 2014-12-17 2016-06-23 Qing Chen System Detecting and Mitigating Frustration of Software User
CN106855796A (zh) * 2015-12-09 2017-06-16 阿里巴巴集团控股有限公司 一种数据处理方法、装置和智能终端
US10459745B2 (en) * 2015-12-16 2019-10-29 Business Objects Software Ltd Application help functionality including suggested search
US10459744B2 (en) * 2015-12-16 2019-10-29 Business Objects Software Ltd Interactive hotspot highlighting user interface element
US10013263B2 (en) * 2016-02-17 2018-07-03 Vincent Ramirez Systems and methods method for providing an interactive help file for host software user interfaces
US9959112B2 (en) 2016-03-15 2018-05-01 International Business Machines Corporation Customizing a software application based on a user's familiarity with the software application
CN108269222A (zh) * 2016-12-30 2018-07-10 华为技术有限公司 一种窗口渲染方法及终端
US11544322B2 (en) * 2019-04-19 2023-01-03 Adobe Inc. Facilitating contextual video searching using user interactions with interactive computing environments
CN112596850A (zh) * 2021-03-03 2021-04-02 全时云商务服务股份有限公司 针对多窗口应用程序的控制方法及系统
US11520947B1 (en) 2021-08-26 2022-12-06 Vilnius Gediminas Technical University System and method for adapting graphical user interfaces to real-time user metrics
US11675627B1 (en) * 2021-12-29 2023-06-13 Bereej Technologies Private Limited Method and system for integrating multiple cloud platforms with diagraming tools

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5754176A (en) * 1995-10-02 1998-05-19 Ast Research, Inc. Pop-up help system for a computer graphical user interface
US20090234727A1 (en) * 2008-03-12 2009-09-17 William Petty System and method for determining relevance ratings for keywords and matching users with content, advertising, and other users based on keyword ratings
US20100131452A1 (en) * 2008-11-26 2010-05-27 George Fitzmaurice Displaying resources based on shared contexts
US20100229080A1 (en) * 2009-03-03 2010-09-09 Xerox Corporation Collaborative linking of support knowledge bases with visualization of device

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7865829B1 (en) * 2003-12-31 2011-01-04 Intuit Inc. Providing software application help based on heuristics
US7925975B2 (en) * 2006-03-10 2011-04-12 Microsoft Corporation Searching for commands to execute in applications

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5754176A (en) * 1995-10-02 1998-05-19 Ast Research, Inc. Pop-up help system for a computer graphical user interface
US20090234727A1 (en) * 2008-03-12 2009-09-17 William Petty System and method for determining relevance ratings for keywords and matching users with content, advertising, and other users based on keyword ratings
US20100131452A1 (en) * 2008-11-26 2010-05-27 George Fitzmaurice Displaying resources based on shared contexts
US20100229080A1 (en) * 2009-03-03 2010-09-09 Xerox Corporation Collaborative linking of support knowledge bases with visualization of device

Also Published As

Publication number Publication date
US20120259845A1 (en) 2012-10-11
US8538947B2 (en) 2013-09-17

Similar Documents

Publication Publication Date Title
US8538947B2 (en) Method of providing instructional material while a software application is in use
US10387175B2 (en) Method and system for providing software application end-users with contextual access to text and video instructional information
US20230385033A1 (en) Storing logical units of program code generated using a dynamic programming notebook user interface
CN107223241B (zh) 上下文缩放
US10628001B2 (en) Adapting user interfaces based on gold standards
US10140314B2 (en) Previews for contextual searches
JP5909228B2 (ja) ズーム可能なシーン内のズーム操作に関する代替意味論
US8823710B2 (en) Large scale data visualization with interactive chart
US8166387B2 (en) DataGrid user interface control with row details
US10169374B2 (en) Image searches using image frame context
US20130129316A1 (en) Methods and Apparatus for Tutorial Video Enhancement
US20160048275A1 (en) Smart scrubber in an ebook navigation interface
US10726624B2 (en) Automatic creation of drill paths
US9223455B2 (en) User preference analysis method and device
JP2004080769A (ja) マルチメディア又はビデオストリームの注釈の共同インデックスをフィルタリングして、見るための方法、システム、ユーザインタフェース、及び実行させるためのプログラム
US20100257479A1 (en) Graphical User Interface with Dynamic Toolbar Search Functionality
US20120317468A1 (en) Navigating through cross-referenced documents
US11817118B2 (en) Enhancing review videos
US20180046704A1 (en) Systems and Methods for Selection-Based Contextual Help Retrieval
US11544322B2 (en) Facilitating contextual video searching using user interactions with interactive computing environments
US10891320B1 (en) Digital content excerpt identification
US10380226B1 (en) Digital content excerpt identification
WO2023220274A1 (fr) Cartes d'entité comprenant un contenu descriptif relatif à des entités provenant d'une vidéo
US20240104150A1 (en) Presenting Related Content while Browsing and Searching Content
Espejo Soundscape-Interactive Data Visualisations of Spotify’s Top Songs

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12806947

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12806947

Country of ref document: EP

Kind code of ref document: A1