Patent Publication Number: US-7216052-B2

Title: Authoring diagnostic test sequences apparatus and method

Description:
FIELD OF THE INVENTION 
   The present invention relates generally to diagnostic equipment. More particularly, the present invention relates to the authoring of diagnostic test sequences, such as vehicle diagnostic test sequences, for diagnostic systems. 
   BACKGROUND OF THE INVENTION 
   Diagnostic systems are used by technicians and professionals in virtually all industries to perform basic and advanced system testing functions. For example, in the automotive, trucking, heavy equipment and aircraft industries, diagnostic systems provide for vehicle onboard computer fault or trouble code display, interactive diagnostics, multiscope and multimeter functions, and electronic services manuals. In the medical industry, diagnostic systems provide for monitoring of body functions and diagnosis of medical conditions, as well as system diagnostics to detect anomalies in the medical equipment. 
   In many industries, diagnostic systems play an increasingly important role in manufacturing processes, as well as in maintenance and repair throughout the lifetime of the equipment or product. Some diagnostic systems are based on personal computer technology and feature user-friendly, menu-driven diagnostic applications. These systems assist technicians and professionals at all levels in performing system diagnostics on a real-time basis. 
   A typical diagnostic system includes a display on which instructions for diagnostic procedures are displayed. The system also includes a system interface that allows the operator to view real-time operational feedback and diagnostic information. Thus, the operator may view, for example, vehicle engine speed in revolutions per minute, or battery voltage during start cranking; or a patient&#39;s heartbeat rate or blood pressure. With such a system, a relatively inexperienced operator may perform advanced diagnostic procedures and diagnose complex operational or medical problems. 
   The diagnostic procedures for diagnostic systems of this sort are typically developed by experienced technical experts or professionals. The technical expert or professional provides the technical experience and knowledge required to develop complex diagnostic procedures. The procedures must then be programmed by computer programmers knowledgeable in a computer programming language. The diagnostic procedure computer program source code is compiled to create an object code diagnostic program, which can then be executed on a diagnostic system. 
   Thus, existing diagnostic systems have a disadvantage in that diagnostic procedures developed by technical experts and professionals must be programmed by computer programmers, who often are not experts in diagnostics. This process can result in unnecessary time and cost, as well as errors, which sometimes are introduced during the programming phase because of the difficulty of communicating complex diagnostics to the non-expert computer programmers. Accordingly, it is desirable to provide a method and apparatus for developing and authoring diagnostic procedures in a format that can be executed on PC-based diagnostic systems without requiring knowledge of a computer programming language. 
   SUMMARY OF THE INVENTION 
   The foregoing needs are met, to a great extent, by the present invention, wherein in one aspect an apparatus and method are provided that in some embodiments provide for developing and authoring diagnostic procedures in a format that can be executed on PC-based diagnostic systems without knowledge of a computer programming language. 
   In accordance with one aspect of the present invention, an authoring tool includes a flowchart module to create or modify a diagnostic test sequence. The flowchart module includes a first display image with a plurality of selectable fields to facilitate creating or modifying the diagnostic test sequence. The authoring tool also includes a panel editor module to create or modify a display panel that displays an instruction associated with the diagnostic test sequence during diagnostic testing. The panel editor module includes a second display image with a plurality of selectable fields to facilitate creating or modifying the display panel. In addition, the authoring tool includes an expression editor module to create or modify a logical expression associated with the diagnostic test sequence. The expression editor module includes a third display image with a plurality of selectable fields to facilitate creating or modifying the logical expression. In this aspect, the flowchart module incorporates the display panel and the logical expression into the diagnostic test sequence. 
   In accordance with another aspect of the present invention, an authoring tool includes a flowchart module to create or modify a diagnostic test sequence associated with a vehicle type. The flowchart module includes a first display image with a plurality of selectable fields to facilitate creating or modifying the diagnostic test sequence, which is represented by a hierarchical flowchart including a test step represented by a node and a flow path from the node to a next node represented by a branch. A panel editor module is included to create or modify a display panel associated with the node, which displays an instruction associated with the diagnostic test sequence during diagnostic testing. The panel editor module includes a second display image with a plurality of selectable fields to facilitate creating or modifying the display panel. The authoring tool also includes a phrase editor module to create or modify a text on the display panel, including a third display image with a plurality of selectable fields to facilitate creating or modifying the text. In addition, the authoring module includes a meter editor module to create or modify a meter on the display panel, including a fourth display image with a plurality of selectable fields to facilitate creating or modifying the meter. Furthermore, the authoring tool includes an expression editor module to create or modify a logical expression associated with the flowchart, the expression editor module including a fifth display image with a plurality of selectable fields to facilitate creating or modifying the logical expression. In this aspect, the panel editor module incorporates the text and the meter into the display panel, and the flowchart module incorporates the display panel and the logical expression into the flowchart, and the diagnostic test sequence data is stored to at least one database in a memory device. 
   In accordance with yet another aspect of the present invention, a method of providing diagnostic test sequence authoring capability includes the steps of displaying a first display image with a plurality of selectable fields to facilitate creating or modifying a diagnostic test sequence and a second display image with a plurality of selectable fields to facilitate creating or modifying a display panel to display diagnostic test instructions during diagnostic testing. The method also includes the steps of displaying a third display image with a plurality of selectable fields to facilitate creating or modifying a text on the display panel and a fourth display image with a plurality of selectable fields to facilitate creating or modifying a logical expression associated with the diagnostic test sequence. In addition, the method includes the step of receiving user input through direct manipulation of a graphical user interface (GUI) by way of an alphanumeric keyboard and a pointing device, including input to modify the text or input to select one of the plurality of selectable fields. Furthermore, the method includes the step of creating a diagnostic test sequence incorporating the display panel and the logical expression. 
   In accordance with still another aspect of the present invention, an authoring tool includes means for creating or modifying a diagnostic test sequence, including means for displaying a first display image with a plurality of selectable fields to facilitate creating or modifying the diagnostic test sequence. The authoring tool also includes means for creating or modifying a display panel that displays an instruction associated with the diagnostic test sequence during diagnostic testing, including means for displaying a second display image with a plurality of selectable fields to facilitate creating or modifying the display panel, as well as means for creating or modifying a text on the display panel, including means for displaying a third display image with a plurality of selectable fields to facilitate creating or modifying the text. In addition, the authoring tool includes means for creating or modifying a logical expression associated with the diagnostic test sequence, including means for displaying a fourth display image with a plurality of selectable fields to facilitate creating or modifying the logical expression. Furthermore, the authoring tool means for creating or modifying a diagnostic test sequence incorporates the display panel and the logical expression into the diagnostic test sequence. 
   There has thus been outlined, rather broadly, certain embodiments of the invention in order that the detailed description thereof herein may be better understood, and in order that the present contribution to the art may be better appreciated. There are, of course, additional embodiments of the invention that will be described below and which will form the subject matter of the claims appended hereto. 
   In this respect, before explaining at least one embodiment of the invention in detail, it is to be understood that the invention is not limited in its application to the details of construction and to the arrangements of the components set forth in the following description or illustrated in the drawings. The invention is capable of embodiments in addition to those described and of being practiced and carried out in various ways. Also, it is to be understood that the phraseology and terminology employed herein, as well as the abstract, are for the purpose of description and should not be regarded as limiting. 
   As such, those skilled in the art will appreciate that the conception upon which this disclosure is based may readily be utilized as a basis for the designing of other structures, methods and systems for carrying out the several purposes of the present invention. It is important, therefore, that the claims be regarded as including such equivalent constructions insofar as they do not depart from the spirit and scope of the present invention. 

   
     BRIEF DESCRIPTION OF THE DRAWINGS 
       FIG. 1  is a flowchart illustrating a method in accordance with one embodiment of the method for authoring diagnostic test sequences. 
       FIG. 2  illustrates an exemplary display screen associated with the CREATE CHART step or the MODIFY CHART step of  FIG. 1 . 
       FIG. 3  illustrates an exemplary display screen associated with the FLOWCHART step of  FIG. 1 . 
       FIG. 4  illustrates an exemplary display screen associated with the ADD NODE step of  FIG. 1 . 
       FIG. 5  illustrates an exemplary display screen associated with the EXPRESSION BUILDER step of  FIG. 1 . 
       FIG. 6  illustrates an exemplary display screen associated with the PANEL EDITOR step of  FIG. 1 . 
       FIG. 7  illustrates a second exemplary display screen associated with the FORM DESIGNER step of  FIG. 1 . 
       FIG. 8  illustrates an exemplary display screen associated with the PHRASE EDITOR step of  FIG. 1 . 
       FIG. 9  illustrates an exemplary display screen associated with the METER EDITOR step of  FIG. 1 . 
   

   DETAILED DESCRIPTION 
   The invention will now be described with reference to the drawing figures, in which like reference numerals refer to like parts throughout. An embodiment in accordance with the present invention provides a vehicle diagnostic system authoring module that facilitates authoring of diagnostic test sequences by an individual who is an expert in vehicle diagnostics but is not necessarily knowledgeable concerning a computer programming language. The vehicle diagnostic test sequence authoring module speeds development and reduces errors in diagnostic software by eliminating the need for a computer programmer to code the process as explained to him by an expert in vehicle diagnostics. This method and apparatus are particularly useful to an original equipment manufacturer for developing electronic diagnostic sequences. 
   The authoring module produces a vehicle diagnostics sequence for use with a PC-based vehicle diagnostics system to provide instructions for expert diagnostics procedures to allow a vehicle technician to identify the cause of a trouble code- or symptom-based problem at the component level. An example of a diagnostic method for use with a vehicle diagnostic system of this type is disclosed in U.S. Pat. No. 5,631,831, entitled “Diagnosis Method for Vehicle Systems,” Bird et al., dated May 20, 1997, the disclosure of which is hereby incorporated by reference in its entirety. The diagnostic system navigates the technician through a step-by-step test sequence based on the vehicle onboard computer trouble code or the vehicle operational symptom. During vehicle diagnostics, text step instructions and information are displayed to the vehicle technician on display screen panels. 
   An embodiment of the present inventive method and apparatus is illustrated in  FIG. 1 . The authoring module  10  includes a CREATE CHART  12  and a MODIFY CHART  14 . The CREATE CHART  12  allows a user to create a new chart while the MODIFY CHART  14  allows the user to modify or change an existing chart. Either the CREATE CHART  12  or the MODIFY CHART  14  is followed by a FLOWCHART  16 . From the FLOWCHART  16 , a user may select either an ADD NODE  18 , or an EXPRESSION BUILDER  20 , or a PANEL EDITOR  22 . In the ADD NODE  18 , the user can add a node to the flowchart. In the EXPRESSION BUILDER  20 , the user can add logical expressions to a node to form a branch between that node and another node. 
   In the PANEL EDITOR  22 , the user creates a form associated with a node representing a test step. The form has one or multiple panels, or display screens, which the user creates in the PANEL EDITOR  22 . Optionally, the user selects either the PHRASE EDITOR  24  or the METER EDITOR  26 . In the PHRASE EDITOR  24 , the user may add text to a panel in the form. In the METER EDITOR  26 , the user may add a meter to a panel, which displays a vehicle operating or diagnostic parameter, such as battery voltage or engine RPM, on a display screen. The various phrases, meters, buttons or images on a panel are sometimes referred to as controls. In addition, the user may terminate the authoring session by selecting the EXIT  27 . 
   An authoring module display screen  28  associated with the CREATE CHART  12  and MODIFY CHART  14  in  FIG. 1  is illustrated in  FIG. 2 . This display screen  28  includes a dropdown menu field  30  to select the vehicle system being tested. It also includes selectable bullet fields  32  to select the type of flowchart to be created or modified, such as a trouble code, symptom or subroutine flowchart. The user can select the trouble code chart, associated with a trouble code from the vehicle electronic control unit, the symptom flow chart, associated with a specific symptom observed in the vehicle, or a subroutine flowchart, associated with an existing flowchart. The display screen  28  also includes a dropdown menu field  34  to select an existing flowchart to be modified or copied in order to produce a new flowchart. The continue button  36  at the bottom of the display screen enables the user to create a new flowchart based on the selections above, and the modify button  38  allows the user to modify an existing flowchart. Selecting either the continue button  36  or the modify button  38  takes the user to the flowchart display screen  42 , illustrated in  FIG. 3 . Selecting the cancel button  40  ends the authoring module session. 
   An exemplary display screen associated with the FLOWCHART  16  in  FIG. 1  is illustrated in  FIG. 3 . In an upper portion of a flowchart display screen  42 , is an authoring control screen  44 . In a lower portion of the flowchart display screen  42 , is a representation of a flowchart  46 . The flowchart  46  represents a diagnostic test sequence, and each node  48  on the flowchart  46  represents an individual test step. Example of a test step is to check an engine sparkplug voltage or to wiggle a sparkplug wiring harness while monitoring the sparkplug voltage. Thus, each of the nodes  48  in the flowchart  46  represents a test step to be carried out in the diagnostic test procedure. The user may select a node  48  on the flowchart  46  by clicking on the node  48  with a pointing device, such as a computer mouse, a trackball or a touchscreen. 
   One or more logical expressions may also be associated with the node  48 . For example, a logical expression may produce a certain result, or action, such as a beeping noise or a flashing light if a specified condition exists. As another example, a logical expression may state that if the vehicle battery voltage is low, that a continuous beep be sounded. In addition, a logical expression may be associated with a branch  54  between two nodes. In this case, the logical condition requires that if a particular condition exists, then the test sequence proceeds from one step or node to another step or node via the branch. For example, a logical expression may state that if the vehicle battery voltage is low at node A or during test step A, then the test sequence proceeds to node B or test step B. The round bulbs  50  on the branch  54  represent logical expressions that determine the next test step to be performed, or the flow through the flowchart. The bulb  52  closer to the test node is a node expression associated with the test step. The lines, or branches  54 , between the nodes and the bulbs  50  represent the possible sequences of test steps in the test procedure. 
   The authoring control screen  44  in the upper portion of the screen includes three text fields  56 ,  58 ,  60  for logical expressions associated with the selected node  48 . The Entry text field  56  shows a logical expression associated with entry into, or arrival at, the selected node  48 , if any. An Entry expression typically is to be performed, or executed, once upon entering, or arriving at, the associated node during diagnostic testing. The Active text field  58  displays a logical expression associated with the selected node  48 , if any. An Active expression generally is to be performed or executed continuously, or repeatedly, on an ongoing basis while diagnostic testing associated with the node is performed. The Exit text field  60  displays a logical expression associated with exiting the selected node  48 , if any. An Exit expression typically is performed, or executed, once upon exiting the node. 
   From the authoring control screen  44 , the user can add a sub-routine, or a sub-flowchart, to a vehicle diagnostic test sequence by clicking on a Add SubRtn button  61 . The subroutine is represented by a separate sub-flowchart dependent on the current test sequence flowchart  46 . 
   The authoring control screen  44  in the upper portion of the screen also includes a text field  62  that shows each condition or expression associated with the selected node  48 . The user can print the flowchart display screen  42  by clicking on a print button  64 . A select chart button  63  returns the user to the CREATE CHART or MODIFY CHART screen  28  ( FIG. 2 ). The user may add a new node  48  to the flowchart  46  by clicking on an add node button  66  with the pointing device. 
   When the add node button  66  is selected, an add node screen  68  appears as illustrated in  FIG. 4 . The add node screen  68  includes a form listing  70  which displays the names of the forms associated with all of the nodes  48  that have been created for the selected vehicle system  30 . The add node screen  68  includes selectable form filter bullets  71  that permit the user to view only a selected category of nodes in the form listing  70 . 
   The user may choose to create a new form, to use an existing form without modification, or to modify an existing form with the form selectable bullets  72 . An existing form is selected for use or modification by selecting a form name  74  from the form listing  70 . A name for a new or modified form is entered into the new form name text field  73 . The continue button  76  is clicked in order to add the form associated with a new node  48  in the flowchart  46 . The screen then returns to the flowchart display screen  42  ( FIG. 3 ). The user may end the authoring session by selecting the Exit button,  78  on screen  42 . 
   From the flowchart screen  42 , shown in  FIG. 3 , the user may double-click on a color-coded top bar  80  or on a color-coded bottom bar  82  of a node  48 , or on a color-coded bulb  50 ,  52  in order to edit a logical expression. This brings up an expression builder display screen  84  as illustrated in  FIG. 5 . The expression builder display screen  84  permits the user to associate a vehicle operating parameter or diagnostic condition to a node  48 . An expression is a logical statement based on a condition. 
   A form expression is a generic, or default, logical expression associated with a form. A node expression, on the other hand, is a logical expression unique to a node  48  in a particular flowchart. Thus, a form expression will automatically be performed in association with any node  48  associated with the form, unless the node  48  has been modified with an overriding node expression. 
   At the expression builder display screen  84 , the user may select from a list of actions  86 , a list of measurement types  88 , a list of variables  90 , a list of mathematical operators  92 , a list of logical operators  94 , or logic condition buttons  96  in order to form the logical expression, which is displayed in the text field  98  near the top of the screen. The user may also include a diagnostic trouble code  100  from the vehicle onboard computer in the logical expression. 
   After forming a logical expression in the text field  98 , the user clicks on the validate button  101  and the expression builder automatically checks, or verifies, the syntax of the logical expression. The user is allowed to click the update button  102  to add the expression to a node  48  only after the syntax of the logical expression has been successfully verified, or validated. By verifying correct syntax, the validate function has the distinct advantage of facilitating development of complex programming sequences by a user that has no working knowledge of a programming language. 
   The expression builder is a powerful programming tool that allows the user to develop highly complex interactive diagnostic test steps that access test subject information stored in the diagnostic test system, monitor real-time electrical test signals from peripheral devices and sensors associated with the test subject, provide control signals to peripheral devices and controllers associated with the test subject, and incorporate operator input to make logical decisions regarding diagnostic testing. For example, the expression builder provides for comparisons between measurements sensed by peripheral devices and expected values, comparison of two measurements or timers, and the like. The results of this logic can determine the next step in the diagnostic test sequence. The expression builder allows the author to build his own unique logic or choose from expressions that have been previously used. 
   Thus, a user may incorporate test parameter conditions or logical expressions into any form or node on the flowchart. In addition, the user may associate some action, for example, a beeping sound, with a condition. Furthermore, a user may associate a logical expression with a node or a form in order to control the flow or sequence of test steps within the flowchart. Clicking on the Return button  103  takes the display back to the flowchart display screen  42  ( FIG. 3 ). 
   From the flowchart display screen  42 , the user may double-click on the center or white portion of a node  83  to edit the form associated with the node. A panel editor display screen  110  then appears, as illustrated in  FIG. 6 . The panel editor display screen  110  permits the user to design multi-tab panels or display screens with instructions and information used during the diagnostic procedures. The panel editor display screen  110  includes an illustration of the panel display screen  112  in a middle portion  113  of the screen, which will be viewed by the vehicle technician on the vehicle diagnostic system, and various buttons in an upper portion  115  of the screen that allow the user to edit the panel. 
   In order to edit text in a text box  140  on a panel, such as vehicle technician instructions, warnings, or conclusions, the user may double-click on the text box  140  or click on the Phrase button  142  at the top of the screen. Similarly, the Meter button allows a meter to be added to the panel display screen  112 . The Return button  130  returns the user to the flowchart display screen  42 . The Edit Tabs button  114  brings up the form design screen  116 , as illustrated in  FIG. 7 . 
   The form design screen  116  permits the user to add and define up to four panels to a form selectable by tabs associated with the form. A form name is selected for the form in the Form ID Field  118  in an upper left corner of the screen  116 , which corresponds to the names in the form listing  70 , shown in  FIG. 4 . The user may add or select up to four individual panels or tabs by choosing one of the selectable bullets  120  on the left side of the form design screen  116 . The user may select or define a Panel ID  122  for each tab and identify the category of the panel with a caption tag  124  and a corresponding caption  126 , which will appear on the panel tab. The user may also select a template  128  on which to base the panel. The user may return to the panel editor screen  110  without saving modifications made on the form design screen  116  by selecting the Cancel button  134 . In order to save the changes made on the form design screen  116 , the user selects the Continue button  136  and the authoring module returns to the panel editor screen  110  ( FIG. 6 ). 
   The phrase editor display screen  144  then appears, as illustrated in  FIG. 8 . At the phrase editor display screen  144 , the user may select an existing phrase from a phrase dictionary or create a new phrase to be used in a text box  140  on the panel. The user may designate a phrase type associated with the text in the text editing field  152  by selecting one of the selectable buttons  154  near the top left corner of the phrase editor display screen  144 : Result, Lead or Other. 
   The user may select an existing phrase from a list of all phrases that have been used on a form associated with a selected vehicle system  158 ,  160  from the dropdown menu  156 , and the text of the selected phrase will appear in the text editing field  152 . Otherwise, the user may select an existing phrase from a list of all phrases in the phrase dictionary, including phrases that have not previously been used on a form associated with the selected vehicle system  158 , from the dropdown menu  146 . In this case, the text of the selected phrase will appear in the lower text field  148 , and can then be copied to the text editing field  152  by clicking the Copy Phrase to English Translation button  150 . 
   After the text appears in the text editing window  152 , the user may modify the text by making changes to the text in the text editing window  152 . The phrase can be renamed by selecting the dropdown menu  156  text field and entering the new name, or tag, directly into the dropdown menu  156  text field. New text may then be entered in the text editing field  152 , or the text of the original phrase may be copied into the text editing field  152  for modification by clicking the Copy Phrase to English Translation button  150 . 
   The user may modify the text formatting in the text editing window  152  using the Field Alignment selectable buttons  162 , the Select Font Size selectable buttons  164 , or the selectable checkboxes  166  for bold, underline, italic or red text. Once the text in the text editing window  152  reflects the phrase that the user would like to place on the panel in the text box  140 , the user clicks on the Continue button  172 . 
   The user may select a location for the text box  140  on the panel  112  using the Panel Placement selectable bullets  168  (Manual, Panel Center, Panel Left). Clicking the Continue button  172  saves the changes made to the text box  140  and returns the editor to the panel editor screen  110 . Otherwise, the user may click the Cancel button  170  in order to return to the panel editor screen  110  without saving any changes to the text box  140 . 
   From the panel editor screen  110  the user may choose to add or edit a meter to the panel  112  by double-clicking on an existing meter shown on the panel editor screen  110  or by clicking the meter button  180  near the top of the panel editor screen  110 . The meter editor display screen  182  then appears, as illustrated in  FIG. 9 . A small, medium, or large sized meter may be selected with one of the Meter Size buttons  184 . The user selects a measurement type from a dropdown menu  186  and the desired units of measure from a dropdown menu  188 . A range may be entered for the measurement in minimum and maximum editable text fields for the Scale Range  190 . In addition, the user may select minimum and maximum cut points by making entries in the editable text fields  192 . 
   For example, if the test sequence requires the engine to be run within a specific RPM range, the author may choose to display a meter with a bar graph that turns green when engine revolutions per minute (RPM) is within the specified range. If the author only wants to know if the engine is running, he may have the meter display the RPM digital measurement only. The user may select an optional bar graph in either a small or large size using the selectable bullets  194  for the display format. The user may then end the meter editor session and return to the panel editor screen, by choosing to save the modifications made to the meter by clicking on the OK button  196 , or choosing to not save the changes made to the meter by clicking on the Cancel button  198 . In an alternative embodiment, the panel editor allows the user to add diagrams such as a fuse box layout diagram or a wiring diagram to a display panel. Furthermore, a user may add images such as a jpeg file image to a display panel. 
   Based on the user inputs in the various authoring screens, the flowchart screen  46 , the add node screen  68 , the expression builder screen  84 , the panel editor screen  110 , the form design screen  116 , the phrase editor screen  144 , and the meter editor screen  182 , the authoring module compiles an executable vehicle diagnostic test sequence module for use with the vehicle diagnostic system. The executable vehicle diagnostic test sequence may then be used by any vehicle technician for vehicle diagnostic testing. 
   Thus, the vehicle diagnostic test sequence authoring module enables a vehicle diagnostics expert with no specific knowledge of a computer programming language to develop an executable program module for a vehicle diagnostic test sequence for use with the vehicle diagnostic system. 
   In an alternative embodiment of the present invention, the executable vehicle diagnostic test sequence program is not compiled by the authoring module but rather is compiled at run time when a vehicle technician operates the vehicle diagnostic system. In this embodiment, the authoring module stores data in a database, or in multiple databases, that will be used by the vehicle diagnostic system at run time during a vehicle diagnostic session. 
   For example, in an embodiment, flowchart details regarding the nodes, branches and node expressions are placed in a system database. In this example, data regarding the vehicle type, the flowcharts associated with the vehicle type, the forms associated with a flowchart, panels and data regarding controls—that is the text boxes, meters and the like on a panel—are stored in a common database. In this embodiment, the common database contains data mapping the various flowcharts, nodes, forms, and panels to each other. The common database also contains data regarding form expressions. 
   Furthermore, in this embodiment, data regarding the text boxes on the various display panels is stored in a dictionary database and is identified by tags. The dictionary database contains data for each supported language. For example, the dictionary database contains a data set for English translation text boxes associated with a display panel, and a separate set of data for German translations associated with the same display panel. Any language can be used in this embodiment by simply having a language module for that language. 
   In another embodiment of the present invention, the authoring module, including the expression builder, the form editor, the phrase editor, and the meter editor, shares memory with other vehicle diagnostic system modules and between the authoring module segments in a shared memory block. In a preferred embodiment, the shared memory block is of the global signaling memory system (GLOBS) type, which is a computer assisted or implemented system designed to allow multiple applications, such as software programs, algorithms, scripts, or other computer implemented or assisted applications, to share data that is stored in a shared memory location or multiple shared memory locations. A global signaling memory system of this type is disclosed in U.S. patent application Ser. No. 09/841,857, Gilbert et al., entitled “Global Signaling Memory,” filed on Apr. 25, 2001 (see Patent Application Publication No. 2002/0073241, published on Jun. 13, 2002) the disclosure of which is hereby incorporated by reference in its entirety. 
   A preferred embodiment of the present invention communicates information to the user and requests user input by way of an interactive, menu-driven, visual display-based user interface. The authoring module is executed on a PC with a mouse and keyboard, with which the user may interactively input information using direct manipulation of a graphical user interface (GUI). Direct manipulation includes using a pointing device, such as a mouse, to select from a variety of selectable fields, including selectable menus, tabs, buttons, bullets, checkboxes, text boxes, and the like. Nevertheless, other embodiments of the invention may incorporate any number of additional functional user interface schemes in place of this interface scheme, with or without the use of a mouse or buttons or keys, including for example, a trackball, a touchscreen or a voice-activated system. 
   In some embodiments, the authoring module is executed on a common personal computer (PC). However, in other embodiments the authoring module could be executed on any suitable processor, such as a server, a personal computer, a Personal Digital Assistant, a collection of networked servers or personal computers, a mainframe computer, or the like. Additionally, as new tests are developed, the system can be updated so that the user does not have to constantly buy new systems 
   Thus, the authoring module is that it provides a windows environment, menu-driven user interface that allows a vehicle diagnostics expert to develop, or author, new or improved diagnostic test sequences for the vehicle diagnostics system without requiring knowledge of a computer programming language. The authoring module provides menu-based navigation through a comprehensive sequence of display screens that guide the user, or author, through the diagnostics test sequence authoring procedure. Once the user has authored a diagnostic test sequence, the test sequence can be used with the vehicle diagnostic system to guide a novice or experienced vehicle technician through a basic or complex vehicle diagnostic test sequence. 
   Although an exemplary embodiment of the present invention has been described with reference to a vehicle, or automotive, diagnostics system authoring module, it will be appreciated that other embodiments include authoring modules for various other types of diagnostics systems, such as heavy equipment diagnostics systems, aircraft diagnostics systems, medical diagnostics systems, or the like. Alternative embodiments include authoring modules for a vast array of diagnostics systems for relatively “hi-tech” as well as less technologically sophisticated products and systems, including virtually any electrical and mechanical devices, such as automated manufacturing machines, robotic devices, building heating and cooling systems, furnaces, hot tubs, and the like. 
   The many features and advantages of the invention are apparent from the detailed specification, and thus, it is intended by the appended claims to cover all such features and advantages of the invention which fall within the true spirit and scope of the invention. Further, since numerous modifications and variations will readily occur to those skilled in the art, it is not desired to limit the invention to the exact construction and operation illustrated and described, and accordingly, all suitable modifications and equivalents may be resorted to, falling within the scope of the invention.