Method for providing an on line help facility for interactive information handling systems

Abstract: A method to help and displace Help Panels containing information to explain Command Functions, Command Syntax, and Command Parameters to the operator of an interactive information handling system in response to the entry of a "Command Help Request" into said system by said operator. The method displays the selected panel as an overlay on the existing screen at the time the Command Help request is entered into the system. Selection of the panel to be displayed is based on an analysis by the system as to what commands are valid or active for the next step in the process or task that the system is performing. The operator may select directly from the Command Help Panel overlay, the desired command, or alternatively enter the command desired by moving the cursor to the command area of the underlying screen and keying in the command The method further provides for the system to display a second level of Command Help Panels containing information as to the Parameters and their meaning for commands selected from the first level of the Command Help Panels.

Description: This invention relates in general to interactive information handling systems and, in particular, to an improved method for providing on line assistance for the operators of such systems. The term "interactive information handling system" (IIHS) refers to an information handling system in which the system is highly dependent upon interaction with the operator of the system. The nature of the interaction generally involves either the system displaying to the operator on a display device such as a video terminal certain information, and the operator responding by entering information into the system via an input device (E.g., keyboard, mouse, tablet, voice, etc..). The interaction may also reflect that the operator has entered information into the system and the system responds to that information by displaying something to the operator. The degree of interaction between the operator and the system varies, depending upon the system configuration, application being run by the particular program, and the task that the operator has chosen to execute. A large number of data processing systems currently exist which perform on an interactive basis. A very large percentage of personal computers currently are involved in processing applications that are highly interactive. Examples of such applications are the various text processing programs and spreadsheet type programs that are available to operators of the various personal computers. The commercial success of an application program probably is more dependent upon how "user friendly" that program appears to the operator, than how fast or how efficient that program actually is. Most application programs of any complexity therefore provide some sort of on line command help facility which the operator can call upon for assistance. This is a necessity to a large extent because of the rate at which personal computers are being employed for both business and personal use. The average operator has had little or not formal training in computers, and has acquired the present state of knowledge primarily by doing specific tasks with each new program. As application programs incorporate more and more functions, they become more complex and involve more commands with various parameters. The operator is therefore required to remember more and more procedures involving, for example, specific keystroke sequences, data input syntax, and command semantics. As often happens, some functions of the application are done infrequently so there is a tendency on the part of the operator to forget varying aspects of command procedures. The article by J. Rothenberg: "On-line tutorials and documentation for the SIGMA message service" published in the AFIPS conference proceedings, 1979, National computer conference, New York, 4-7 June 1979, pages 863-867, AFIPS Press, Mountvale, New Jersy, US, describes a system having a prompt facility that allows the user to see all commands which are legal in the current state. Many application programs provide an on line Command Help Facility that is basically a condensed version of the operating guide. This type of Help Facility is generally used in a manner that corresponds to what the operator does with the operating guide except that it is automated. While this type of Help Facility may provide some assistance to the new operator as a basic learning tool, it is not very efficient for the average operator who is faced with a specific problem and is seeking a specific answer for that problem. Such Command Help Facilities assume that the operator has enough knowledge and vocabulary to select, from a displayed index, the specific section of the manual that will solve the problem. For example, when the operator initiates the Help Command, a list of all the commands relating to the application are presented. The operator must determine which command to select, even though some commands may not be accessible under the current context. After the operator has guessed which command may be appropriate he is presented with a complete functional description of the command. After reading this information, the operator must terminate the help to return to the application. The operator must then input that command based on the information that was read in the Help Facility. The problems associated with this type of help are as follows. The operator is removed from the current context of the application being performed and is forced to remember the Help information when returning to the active dialogue. Furthermore, while reviewing the Help information, the operator cannot perform the command, but is required to terminate the Help function before returning to the application. Also, the operator may receive more information than is really needed. Direct assistance on a function is usually required than a lengthly description of the function. Further, the operator may not know which function needs to be performed at the time. The operator is presented with all possible options, while in fact, many of the commands may not accessible at that point in his task process. In contrast to current state of the art Help Facilities, Contextual Help for commands provides three levels of support to the operator. The first level allows the operator to request currently valid commands. The second level allows the operator to request help on the parameters for a command. These first two levels are active participants in helping the operator complete the entry of Commands and their Parameters. The third level is for commands and/or Parameters that are not valid within the current step of the task process, but are valid within the task or the activity that is being performed by the operator. Summary of the Invention The present invention provides a method for displaying Help information to the operator in three different levels which are selectable by the operator. In accordance with the present invention, a method of displaying Help information to the operator of an interactive information handling system is provided in which the type of information that is displayed is closely related to the specific step in the task process that the operator is currently involved with at the time the help request is initiated. In addition, the method permits commands to be entered while the Help Panel is being displayed so the operator does not have to remember detailed sequences to execute when returned to the previous screen. In one embodiment the operator merely has to copy the appropriate Command data from the Help Panel into the normal Command area of the screen and request Enter. In another embodiment the Command data can also be selected or entered on the panel Help itself. The system responds and executes the entered command as if the original screen was displayed. It is therefore an object of the present invention to provide an improved Command Help Facility for an interactive information handling system. Another object of the present invention is to provide an improved Help Facility, or an interactive information handling system in which the Help information that is displayed to the operator is in context relative to the specific step of the task that is being processed at the time the Help request is entered by the operator. A further object of the present invention is to provide a Command Help Facility for an interactive information handling system which permits the entry of a command into the system by the operator while the Help screen explains an aspect of the command that is being displayed to the operator. These objects are achieved by a method as specified in claim 1. Further embodiments are specified in the dependent claims. Objects and advantages other than those mentioned above will become apparent in the following description when read in connection with the drawing. Description of Drawings Figure 1 is a block diagram of an interactive information handling system in which the method of the present invention may be advantageously employed. Figure 2 is an example of an active Help Panel displayed to the operator by the system of figure 1 during the Command entry portion of the present invention. Figure 3 is an active Help Panel displayed to the operator of the system 1 during entry of Parameters for a print command. Figure 4A and 4B are a flow chart which sets forth sequences of steps involved in the method of the present invention. Detailed Description Figure 1 is a block diagram of a state of the art interactive information handling system. The system, as shown, comprises a display device 10 which can be a conventional video terminal for displaying information to the operator ; a keyboard 11 which the operator uses to enter information including commands and data into the system ; a printer 13 which functions to provide hard copy output of information selected by the operator ; a pair of diskette drives 14L and 14R which function to transfer information between the system and the magnetic storage diskettes that are removably associated with the diskette drives and which store both programming information and text information. System components 10, 11, 13, 14L, and 14R are connected as shown in figure 1 to the microprocessor block 15 which functions as the overall control for the system and interrelates the various system components to perform their specific function at the appropriate time. The system of figure 1 may also include a modem 16 which functions to interconnect the system with other systems through various communication links. It will be assumed, for purposes of explanation, that the system shown in figure 1 is a general purpose programmable system such as the IBM Personal Computer and the components shown in figure 1 function in the same manner as the normal conventional components associated with the Personal Computer. While the system shown employs two diskette drives, it will be appreciated by those persons skilled in the art that one of those drives could be replaced with a so-called "hard disk storage subsystem" without effecting the overall functions relating the various blocks or the general operation of the system. In order to operate the system of figure 1 the operator inserts a Disk Operating System (DOS) diskette into diskette drive 14L and turns on the system unit 15. The microprocessor in the system unit 15 causes the initial program load function to be performed which involves a number of tests on the processor hardware and the installation of the DOS programming into memory. Dos then takes over and controls the system's response to commands entered into the system by the operator and/or commands entered into the system by an application program that is stored on the fixed disk subsystem. Another program diskette which the operator inserts into drive 14L in place of the DOS diskette may also be run. It will be assumed, for purposes of explanation, that the application program is a text processing program. However, it should be understood that the system of figure 1 is capable of running other type applications such as any of the well-known spreadsheet programs, data base programs, and even the so-called integrated programs which permit separate applications to be integrated together and to interrelate to each other. The details of the text processing programs are not important to an understanding of the present invention, except that in operating the text processing program, an example of the situation in which the operator needs the Command Help Facility must be established to assist in an understanding of the manner in which assistance is requested and provided in accordance with the present invention. The situation which exists at the time the operator requires assistance through the Command Help Facility is that a document has been created in the system by the operator interacting with various functions of the text processing program and the next major function is to print the document. It is assumed that in this process the operator has executed the appropriate keystrokes on the keyboard to advise the system that the document creation function is completed so that future keystrokes will therefore not be incorporated into the document as text. The details by which the ending operation is achieved varies with different text processing programs. However, since these details are not significant to an understanding of the present invention, they are not described. The possibility of an operator needing assistance to merely print a document with the standard defaults that have been previously established is probably very remote. A more realistic assumption is that the operator wants to print the document in a format and text style that is not the default setting and that the text processing program is provided with the ability to either change the defaults or, more likely, to merely override the defaults for this particular document. The operator, at that point, relies on the on line Command Help Facility for assistance in overriding the formatting and type style defaults. Figure 4 is a flow chart which sets forth the general organization of the Help Facility process which is also shown in greater detail in Table 1 at the end of the specification. The Command Help Facility, as shown in figure 4, is entered in response to the operator's request for help. For example, after the system receives the information that the document creation process is ended, the cursor is automatically positioned to the Command area of the screen by the system in preparation for the next command. With the cursor in the Command area, the operator presses the Help key or takes whatever action the system has established. In some systems the Help icon is displayed which then must be "cursor selected". This is one example of an implementation. In other systems a key combination of the Control key and some other key is used to advise the system that the Help Facility is being requested. The request for the Command Facility results in an analysis of the state of the text processing task by blocks 27-32 in figure 4. The basic fundamental assumption of the improved contextual Help Facility is that the operator is only interested in actions that logically follow or are allowable at this point in the text processing process. The analysis therefore proceeds on that assumption to select a Help Panel which displays only the allowable commands. Under the assumed condition, a Help Panel such as shown in figure 2 is displayed since the analysis involved block 30. The panel displays two allowable commands with a short explanation of each command function. Instructional information is also provided at the top of the panel, advising the operator to "Select one command", and press Enter to execute the correct command or request Help to see the Parameters that are associated with that command. Selection of the command in this example is by positioning the selection cursor to the line containing the desired command or some equivalent function, depending on the system. The panel also advises the operator that selecting END will eliminate the Help Panel from the screen and return the system to the point it was at previous to the Help request. Under the previous assumption, the operator required assistance for the Command Parameters and therefore advises the system of the need for additional help by selecting the Help icon (or taking an equivalent action in other systems). As indicated in the flow chart at block 53, the Help Panel shown in figure 3 is displayed since block 53 causes an exit at port 55 and re-entry at block 25. Block 31 validates the Help request as valid and displays the second level Help Panel. This provides a mechanism for the operator to select a particular type style and indicate whether the document should be duplexed (printed on both sides) or not. THe process of selection is again by positioning the selection cursor on the line containing the desired item, which then becomes highlighted. The figure 3 panel contains similar directional information for the operator and represents the second level of the Command Help Facility. It should be understood that figures 2 and 3 in the preferred embodiment are Help Windows and not Help Screens; the term "Window" signifying that the panel that is displayed at the time the Help Facility is requested remains displayed and the Help Panel is an overlay. The position of the Help Panel overlay or window on the screen is relative to the location of the Command area where command(s) are being entered. It should be further understood that the user is allowed to "switch" from the interactive Command Help Panel to the Command area and input the command directly while viewing the Command Help information. The Help Panel is removed from the screen by block 54 and the cursor positioned in the Command area when the command that was selected from the Command Help Panel has executed (as determined by the task dependent on the situation). When the operator enters a command or parameter that does not apply within the current context of the processed dialogue (but does apply within the task or activity for which the Command Help was performed) and requests the Help action, an Information Panel is presented, stating that : a) the Command and Parameter is not valid within the current dialogue b) the use or uses of the Command and/or the Parameter c) the state or states in which the Command and/or the Parameter are valid d) how to reach the proper state for using the Command or the Parameter The Help information that is presented is the same information that is presented if the operator requested a Command and/or Parameter that was not valid in the current state and had requested Help on the message to that effect that was displayed. While the Command Help Panel is displayed, the operator is able to terminate the Command Help session by requesting the END or QUIT actions 51 and 52 from within the Command Help Panel. This returns the cursor to the Command area, restoring the state prior to execution of the Help Command. The method of providing contextual active help for commands and the Command Parameters provides the following benefits to the operator. It allows the operator to perform a Command directly from the Help Facility without entering and exiting a specialized Help Panel presented outside the context of the text processing dialogue. Since only commands that are active within the current processed dialogue are presented, the operator does not have to guess which are and are not active, thus providing less confusion. The method does not require the operator to memorize complex Command/Parameter syntax and semantics. The following programming pseudocode lists in the left hand column of Table 1, are a series of programming statements that are of interest and assistance to those persons skilled in the art of programming interactive information handling systems in implementing the method of the present invention and understanding how the invention has been implemented in the preferred embodiment. The right hand column of Table 1 lists text comments which reflect the function or action occurring in the system at that step in the process. The code sections follow generally the flow chart of figure 4, with the reference characters applied to the blocks in figure 4 also being used for the corresponding code statements in Table 1.

Claims: A method to assist the operator of an interactive information handling system in entering command via an input device in response to the entry by said operator of a "Command Help Request"; said method involving the steps of: (1) determining what commands are valid as the next command based on an analysis of the current state of the process task being performed by the system at the time said request command is issued, and (2) displaying, in response to keying said "Command Help Request" at least a first help panel overlaying a partial portion of the information displayed, and containing the names of only valid commands determined by said processing means and also containing information explaining the functions of said valid commands, the displaying of said at least first help panel occurring in an area of the display being different to the command area of the screen which is normally used for entering the commands, so that the operator is still allowed to enter a command into the system while said help panel is being displayed, (3) positioning a "selection" cursor to the line on said help panel containing the name of the command, (4) executing, in response to the operator actuating "enter" on the keyboard, the named command selected by said selection cursor on said help panel. A method according to claim 1 further comprising the step of keying said "Command help request" key after said valid command has been selected and prior to actuating said "enter" key, thereby getting assistance for said valid command. The method recited in claim 2 further comprising the step of displaying a second help panel to said operator in place of the first help panel in response to another Command Help Request. The method of claim 3 in which said second help panel contains executable command parameters and explanatory information on the parameters for the commands selected on said first help panel. The method of any one of claims 1-4 further including the step of replacing said first help panel by another help panel in response to entering by the operator of a command name that is not displayed on said first help panel. The method of claim 5 in which said another help panel includes information advising the operator that said entered command is not a valid command for the current point of the processing task and further displays information to the steps to follow to place the system at a point where the command is valid. The method of any one of the preceding claims in which said help request is entered by means of one Help key located on said keyboard. The method of any one of the preceding claims 1 to 6 in which said help request is entered by means of an Help icon being displayed on said display.

Inventors: JOHNSON STEVEN ELDRIDGE, KARAT JOHN, RUIZ THOMAS MICHAEL, JOHNSON, STEVEN ELDRIDGE, KARAT, JOHN, RUIZ, THOMAS MICHAEL
Applicants: IBM, INTERNATIONAL BUSINESS MACHINES CORPORATION
Application year: 1985
Main classification: G06F3
IPC codes: G06F9, G06F3, G06F15