[go: up one dir, main page]

WO2002079912A2 - System for and method of improving the operation of an existing software application - Google Patents

System for and method of improving the operation of an existing software application Download PDF

Info

Publication number
WO2002079912A2
WO2002079912A2 PCT/US2002/010360 US0210360W WO02079912A2 WO 2002079912 A2 WO2002079912 A2 WO 2002079912A2 US 0210360 W US0210360 W US 0210360W WO 02079912 A2 WO02079912 A2 WO 02079912A2
Authority
WO
WIPO (PCT)
Prior art keywords
computer
data
application
training
rule set
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/US2002/010360
Other languages
French (fr)
Inventor
Neil Hickey
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orchid Systems Inc
Original Assignee
Orchid Systems 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 Orchid Systems Inc filed Critical Orchid Systems Inc
Publication of WO2002079912A2 publication Critical patent/WO2002079912A2/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45508Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation
    • G06F9/45512Command shells

Definitions

  • the present invention relates generally to improving the operation of existing software applications. More specifically, the invention achieves this objective by monitoring, manipulating and recording data streams into and out of the existing applications via trainable user interface translator software, and using the recorded information to simplify a user's interaction with the existing application.
  • outmoded software systems are generally static; they have not been designed to evolve with changing organizational needs and are therefore limited in their usefulness to organizations. Older software systems may even present inefficiencies or security breaches in operations. Further, outmoded software can reduce productivity within a business and diminish customer satisfaction during client transactions. However, creating entirely new applications that completely fulfill the needs of an organization can be costly and resource-intensive. This situation has opened a niche for software companies involved in designing software interfaces that are able to update and improve the functionality of existing software applications.
  • existing software applications often contain unused data fields, or are missing necessary data fields.
  • existing applications frequently contain data fields that could be filled in programmatically, such as name and date fields.
  • existing applications frequently require that identical data be input multiple times.
  • Existing applications often have data that is difficult to access without going through many screens and then backtracking, or writing down information from one screen until it is needed on another screen. All of these problems create inefficiencies in the operation of the software and thereby reduce productivity. What is needed is a way to improve the efficiency of an existing software application. During the operation of outmoded existing software applications, users are frequently asked to input identical data in multiple locations at different times.
  • the user may need to enter the same item number on the first screen, on the fifth screen, and on the seventh screen.
  • This repetitive entry increases the likelihood that the user may mistype an entry and cause an error, thereby slowing the process.
  • this outmoded software is used on a wide basis, these errors can add up to numerous hours of lost productivity. What is needed is a way to eliminate a source of errors in operating an existing software application.
  • Messages generated by existing software applications may be difficult for a user to interpret or even cryptic in nature.
  • an out-of-stock error may be displayed as a series of numbers and symbols meaningful only to those who are familiar with the system. Valuable time may be lost as new users spend time learning the meaning of obscure messages and taking the appropriate action.
  • What is needed is a way to reformat cryptic messages within an existing software application.
  • Existing outmoded software is often complex, difficult to use, and therefore requires extensive training for new users. Multiple forms within existing software application can be difficult to navigate and counterintuitive for the average user. Making existing software applications more intuitive and easier to use can substantially reduce training time. What is needed is a way to reduce the training time for an existing software application.
  • the present invention provides a system for and method of improving the operation of an existing software application.
  • the system is able to present a new user interface and by monitoring and interpreting the data streams present in existing software systems, according to a rule set established during a training sequence, transfer the data between the new interface and the existing interface. Since the data is stored in local memory during this process the invention is also able to change the underlying process flow in order to simplify the user's interaction with the system.
  • the system is also able to store and retrieve data from other sources (e.g., an auxiliary database) to extend the existing application's function and to automatically load data into the system without requiring all data to be entered via the new interface.
  • sources e.g., an auxiliary database
  • the system has the ability to reinterpret and reformat data streams within an existing software application, and to be trained to interface with an existing software application. Through this training, the system increases and improves the functionality of an existing software application, enabling the reformatting of the output of the existing software application.
  • a first advantage of the present invention is that it can improve the efficiency of operating an existing software application.
  • a second advantage of the present invention is that it can eliminate a source of errors in operating an existing software application.
  • a third advantage of the present invention is that it can improve the security in the usage of an existing software application.
  • a fourth advantage of the present invention is that it can reduce the training time needed for an existing software application.
  • a fifth advantage of the present invention is that it can be quickly implemented with a minimal amount of training for the user.
  • a sixth advantage of the present invention is that it obviates the need to recode existing applications in order to gain increased functionality.
  • a seventh advantage of the present invention is that it can utilize the existing error checking and error handling functionality in the existing source applications.
  • An eighth advantage of the present invention is that it can easily accommodate changes in the existing source application.
  • a ninth advantage of the present invention is that it is scalable and can support additional client devices with ease.
  • a tenth advantage of the present invention is that it can continue to use original access methods at the same time as using the updated access methods of the present invention, thereby extending the life of existing computer assets.
  • An eleventh advantage of the present invention is that it can omit the display of unused data fields, and can also provide additional data fields to an existing application if needed.
  • a twelfth advantage of the present invention is that, if identical data must be entered multiple times in an existing application, that data need only be entered once.
  • a thirteenth advantage of the present invention is that it can easily access data that is difficult to access without going through many screens and then backtracking, or writing down information from one screen until it is needed on another screen.
  • FIG. 1 is a schematic diagram of a system according to one embodiment of the present invention.
  • Figure 2 is a flow chart showing a method of training a TeleShaper system to operate and improve an existing software application.
  • Figure 3 is a flow chart showing a method of using a TeleShaper system to operate an existing software application in an improved manner.
  • the present invention provides a system for and method of improving the operation of an existing software application.
  • the system is able to present a new user interface and by monitoring and interpreting the data streams present in existing software systems, according to a rule set established during a training sequence, transfer the data between the new interface and the existing interface. Since the data is stored in local memory during this process the invention is also able to change the underlying process flow in order to simplify the user's interaction with the system.
  • the system is also able to store and retrieve data from other sources (e.g., an auxiliary database) to extend the existing application's function and to automatically load data into the system without requiring all data to be entered via the new interface.
  • sources e.g., an auxiliary database
  • FIG. 1 is a schematic representation of a TeleShaper system 100.
  • TeleShaper system 100 includes a TeleShaper computer 140, a host computer 120, a training terminal 154, and a second terminal 180.
  • Host computer 120 further includes a data storage device 110, a host application 121, and a first terminal 170.
  • TeleShaper computer 140 further includes a TeleShaper application 150, a shaper rule set storage device 153, and an auxiliary database 115.
  • TeleShaper system 100 also includes a first network 125 and a second network 132, arranged as shown in the figure.
  • Host computer 120 may connect to TeleShaper computer 140 via first network 125, as shown in Figure 1.
  • Training terminal 154 may connect to TeleShaper computer 140 via second network 132, as shown.
  • First network 125 and second network 132 may be intranet networks or the Internet. Alternatively, first network 125 and second network 132 may be the same network. Further, in an alternative embodiment, a direct connection may be arranged instead of a network between computer 120 and TeleShaper computer 140, and between training terminal 154 and TeleShaper computer 140.
  • Training terminal 154 is typically a PC client running telnet but may also be a hard wired terminal or a display and keyboard directly connected to TeleShaper computer 140.
  • First terminal 170 and second terminal 180 are typically wired terminals such as 3270 or VTlOO-type terminals but may also be, for example, PC clients running appropriate terminal emulation software.
  • training terminal 154 may also have the capability of emulating one or both of first terminal 170 and second terminal 180, thus obviating the need for first terminal 170 and second terminal 180.
  • a method of training TeleShaper system 100 to operate and improve an existing software application will now be described with reference to Figure 2. Step 202: Defining transaction
  • Step 205 Selecting sample data sets
  • the user selects and records a collection of sample input data to be used in subsequent steps.
  • the data should include data sets that completely exercise the host application's functions that are to be reformatted via the new interface.
  • Step 207 Choosing a data set In this step, the user selects one of the sample data steps defined in step 205 for use in operating the system.
  • Step 210 Transmitting starting page
  • a trainer using training terminal 154, instructs TeleShaper application 150 to transmit the initial page to second terminal 180, which displays the page.
  • the initial entry page may contain a login form or a "select application" form, for example.
  • Step 220 Filling inform
  • Step 230 Transmitting form data to TeleShaper computer
  • Step 240 Reviewing data and sending data to host computer (s)
  • the trainer using training terminal 154, exercises host application.
  • the trainer operates the host application to obtain the needed responses using the form data submitted in step 230 and, optionally, data previously submitted, data stored on auxiliary database 115, and/or data previously obtained from host application 121.
  • the sequence of steps for interacting with these host application(s) (known as the "rule set") is generated by TeleShaper application 150 and stored on shaper rule set storage device 153.
  • Step 250 Sending response page to client device
  • Step 260 Sending sample response data to TeleShaper computer
  • Step 270 Completed transaction?
  • Step 280 Additional samples?
  • the trainer determines if there are additional data sample sets selected in step 205 to process. If yes, process 200 returns to step 207; if no, process 200 proceeds to end.
  • the training sequence outlined in process 200 is performed for multiple iterations in order to fully train TeleShaper application 150.
  • host application 121 is exercised and TeleShaper application 150 is trained in the "normal" mode. That is, no errors are produced in the operation of the host application and the TeleShaper software is trained to accommodate routine operation of the host application.
  • the host application is exercised and the TeleShaper software is trained in the "exception" mode. That is, exception data is intentionally introduced during the operation of the host application and appropriate responses are integrated. Appropriate response screens are sent to second terminal 180 for each of these exceptions
  • TeleShaper application 150 after being trained using the training sequence outlined in process 200, submits updated screens to second terminal 180 during operation.
  • a user wishing to use the updated screens with increased functionality would utilize terminal 180.
  • first terminal 170 remains connected directly to host computer 120 without being effected by TeleShaper application 150.
  • TeleShaper system 100 can be trained such that some original forms can continue to be used on second terminal 180 in combination with some updated forms.
  • TeleShaper application 150 can be trained to navigate forward and backward within host application 121 to extract data buried within the form hierarchy and then save this data for later use.
  • TeleShaper application 150 can be trained to automatically perform this data retrieval during process 200. Thereby, during operation, TeleShaper application 150 will perform the steps necessary to retrieve the necessary data, thus simplifying the user interaction.
  • TeleShaper system 100 can be trained to do so in process 200.
  • TeleShaper system 100 can be trained to fill a date field using the date stored within TeleShaper computer 140, host computer 120, or auxiliary database 115. Any data not inherent to TeleShaper computer 140 or host computer 120 can be stored on auxiliary database 115 and used during operation of TeleShaper system 100.
  • host application 121 can be simultaneously accessed using TeleShaper application 150 when training
  • TeleShaper system 100 For example, if an item number is most efficiently extracted by beginning a new instance of host application 121, the trainer using training terminal 154 can begin a new instance of host application 121 and extract the item number. Only the resources of host computer 120 limit the number of instances that may be started.
  • Error messages generated by host application 121 can be reformatted using TeleShaper system 100. For example, if error and exception messages generated by host application 121 are cryptic, TeleShaper system 100 can be trained to reinterpret the messages to make them more user-friendly. These reinterpreted messages are then displayed to the user who can then take the appropriate action. If identical data must be entered multiple times during one usage session of host application 121, TeleShaper application 150 can be trained to perform this task so that the user is relieved of the need to do so.
  • TeleShaper application 150 can be trained so that the item number need only be entered once and is then programmatically transferred to the other pages.
  • TeleShaper application can be trained so that these fields are not displayed to the user. Likewise, if additional data fields are required to accommodate new input data, TeleShaper application 150 can be trained to present the new data fields to the user of host application 121.
  • Process 300 presumes that the training process 200 has been completed and that the results of process 200 have been stored on shaper rule set storage device 153.
  • Step 310 Accessing starting page
  • the user accesses the TeleShaper application 150, which responds by sending the starting page back to second terminal 180.
  • Step 315 Filling in and submitting form
  • Step 320 Accessing host applications
  • TeleShaper application 150 accesses and operates host application 121 in accordance with the rule set stored on shaper rule set storage device 153.
  • Step 325 Transmitting response page
  • TeleShaper application 150 transmits a response page including response data to second terminal 180.
  • Step 330 Completed business process?
  • process 300 determines if the business process is completed. If yes, process 300 returns to step 315; if no, process 300 ends.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Abstract

A system for and method of improving the operation of an existing software application. The invention employs trainable user interface software to intercept data streams generated by existing applications, in order to reinterpret and reformat the data streams for improved performance.

Description

SYSTEM FOR AND METHOD OF IMPROVING THE OPERATION OF AN EXISTING SOFTWARE APPLICATION
The present application claims the benefit of priority to the U.S. Provisional Application No. 60/280,888, filed April 2, 2001, and entitled "System for and Method of Improving the Operation of an Existing Software Application". The present application incorporates by reference in their entirety the contents of that application and issued U.S. Patent Nos. 5,627,977 and 5,889,516, assigned to the assignee of the present invention.
Field of the Invention The present invention relates generally to improving the operation of existing software applications. More specifically, the invention achieves this objective by monitoring, manipulating and recording data streams into and out of the existing applications via trainable user interface translator software, and using the recorded information to simplify a user's interaction with the existing application.
Background of the Invention
Many existing software applications need significant improvement in their operation and implementation. These outmoded software systems are generally static; they have not been designed to evolve with changing organizational needs and are therefore limited in their usefulness to organizations. Older software systems may even present inefficiencies or security breaches in operations. Further, outmoded software can reduce productivity within a business and diminish customer satisfaction during client transactions. However, creating entirely new applications that completely fulfill the needs of an organization can be costly and resource-intensive. This situation has opened a niche for software companies involved in designing software interfaces that are able to update and improve the functionality of existing software applications.
Organizational software systems (including legacy systems) are in widespread use throughout the developed world. Because of the accelerating rates of technology development and changes in business methodologies, much of this software has become outdated, severely restricting its usefulness. The market for updating and improving these systems is measured in tens of billions of dollars per year. Software companies that expand the usability, reliability, performance, and longevity of existing software systems could seize a significant portion of this market. Outmoded software applications cause a number of inefficiencies for users.
For example, existing software applications often contain unused data fields, or are missing necessary data fields. Similarly, existing applications frequently contain data fields that could be filled in programmatically, such as name and date fields. Also, existing applications frequently require that identical data be input multiple times. Existing applications often have data that is difficult to access without going through many screens and then backtracking, or writing down information from one screen until it is needed on another screen. All of these problems create inefficiencies in the operation of the software and thereby reduce productivity. What is needed is a way to improve the efficiency of an existing software application. During the operation of outmoded existing software applications, users are frequently asked to input identical data in multiple locations at different times. For example, in an inventory tracking application, the user may need to enter the same item number on the first screen, on the fifth screen, and on the seventh screen. This repetitive entry increases the likelihood that the user may mistype an entry and cause an error, thereby slowing the process. When this outmoded software is used on a wide basis, these errors can add up to numerous hours of lost productivity. What is needed is a way to eliminate a source of errors in operating an existing software application.
Existing software applications often display data on one screen that is then required as input on some later screen. However, much outmoded software does not automatically transfer the required information to the input screen. This circumstance forces the user to either remember the data or temporarily write the information on a slip of paper for later use. If the data is confidential in nature, this presents a breach in security, since the classified information is recorded on paper and not easily disposed of. For computer systems that experience wide usage in sensitive areas (such as financial or governmental organizations) this situation presents a serious security concern. What is needed is a way to improve security in an existing software application.
Messages generated by existing software applications may be difficult for a user to interpret or even cryptic in nature. For example, in an inventory application, an out-of-stock error may be displayed as a series of numbers and symbols meaningful only to those who are familiar with the system. Valuable time may be lost as new users spend time learning the meaning of obscure messages and taking the appropriate action. What is needed is a way to reformat cryptic messages within an existing software application. Existing outmoded software is often complex, difficult to use, and therefore requires extensive training for new users. Multiple forms within existing software application can be difficult to navigate and counterintuitive for the average user. Making existing software applications more intuitive and easier to use can substantially reduce training time. What is needed is a way to reduce the training time for an existing software application.
Summary of the Invention The present invention provides a system for and method of improving the operation of an existing software application. The system is able to present a new user interface and by monitoring and interpreting the data streams present in existing software systems, according to a rule set established during a training sequence, transfer the data between the new interface and the existing interface. Since the data is stored in local memory during this process the invention is also able to change the underlying process flow in order to simplify the user's interaction with the system. The system is also able to store and retrieve data from other sources (e.g., an auxiliary database) to extend the existing application's function and to automatically load data into the system without requiring all data to be entered via the new interface.
The system has the ability to reinterpret and reformat data streams within an existing software application, and to be trained to interface with an existing software application. Through this training, the system increases and improves the functionality of an existing software application, enabling the reformatting of the output of the existing software application. A first advantage of the present invention is that it can improve the efficiency of operating an existing software application.
A second advantage of the present invention is that it can eliminate a source of errors in operating an existing software application. A third advantage of the present invention is that it can improve the security in the usage of an existing software application.
A fourth advantage of the present invention is that it can reduce the training time needed for an existing software application.
A fifth advantage of the present invention is that it can be quickly implemented with a minimal amount of training for the user.
A sixth advantage of the present invention is that it obviates the need to recode existing applications in order to gain increased functionality.
A seventh advantage of the present invention is that it can utilize the existing error checking and error handling functionality in the existing source applications. An eighth advantage of the present invention is that it can easily accommodate changes in the existing source application.
A ninth advantage of the present invention is that it is scalable and can support additional client devices with ease.
A tenth advantage of the present invention is that it can continue to use original access methods at the same time as using the updated access methods of the present invention, thereby extending the life of existing computer assets.
An eleventh advantage of the present invention is that it can omit the display of unused data fields, and can also provide additional data fields to an existing application if needed. A twelfth advantage of the present invention is that, if identical data must be entered multiple times in an existing application, that data need only be entered once.
A thirteenth advantage of the present invention is that it can easily access data that is difficult to access without going through many screens and then backtracking, or writing down information from one screen until it is needed on another screen.
Brief Description of the Drawing Figure 1 is a schematic diagram of a system according to one embodiment of the present invention.
Figure 2 is a flow chart showing a method of training a TeleShaper system to operate and improve an existing software application. Figure 3 is a flow chart showing a method of using a TeleShaper system to operate an existing software application in an improved manner.
Detailed Description of Certain Preferred Embodiments
Certain embodiments of the invention will now be described with reference to the accompanying figures.
The present invention provides a system for and method of improving the operation of an existing software application. The system is able to present a new user interface and by monitoring and interpreting the data streams present in existing software systems, according to a rule set established during a training sequence, transfer the data between the new interface and the existing interface. Since the data is stored in local memory during this process the invention is also able to change the underlying process flow in order to simplify the user's interaction with the system. The system is also able to store and retrieve data from other sources (e.g., an auxiliary database) to extend the existing application's function and to automatically load data into the system without requiring all data to be entered via the new interface. The embodiments described below share the ability to monitor, record, and manipulate data streams by means of "TeleShaper" servers executing "TeleShaper" applications. These references relate to "trainable user interface translator" technology for fulfilling the monitoring, recording, and manipulation goals. One such source of trainable user interface technology is described in U.S. Patent Nos. 5,627,977 and 5,889,516, which are assigned to the assignee of the present application and which are hereby incorporated by reference in their entirety into the present application.
Figure 1 is a schematic representation of a TeleShaper system 100. TeleShaper system 100 includes a TeleShaper computer 140, a host computer 120, a training terminal 154, and a second terminal 180. Host computer 120 further includes a data storage device 110, a host application 121, and a first terminal 170. TeleShaper computer 140 further includes a TeleShaper application 150, a shaper rule set storage device 153, and an auxiliary database 115. TeleShaper system 100 also includes a first network 125 and a second network 132, arranged as shown in the figure.
Host computer 120 may connect to TeleShaper computer 140 via first network 125, as shown in Figure 1. Training terminal 154 may connect to TeleShaper computer 140 via second network 132, as shown. First network 125 and second network 132 may be intranet networks or the Internet. Alternatively, first network 125 and second network 132 may be the same network. Further, in an alternative embodiment, a direct connection may be arranged instead of a network between computer 120 and TeleShaper computer 140, and between training terminal 154 and TeleShaper computer 140.
Training terminal 154 is typically a PC client running telnet but may also be a hard wired terminal or a display and keyboard directly connected to TeleShaper computer 140. First terminal 170 and second terminal 180 are typically wired terminals such as 3270 or VTlOO-type terminals but may also be, for example, PC clients running appropriate terminal emulation software. For the purposes of training TeleShaper system 100, training terminal 154 may also have the capability of emulating one or both of first terminal 170 and second terminal 180, thus obviating the need for first terminal 170 and second terminal 180. A method of training TeleShaper system 100 to operate and improve an existing software application will now be described with reference to Figure 2. Step 202: Defining transaction
In this step the user decides on the details of the transaction to be designed. This includes the client screens to be utilized, the data to be displayed on these screens, the data to be obtained from the user via these screens, and the host application operation associated with these data. Using training terminal 150, the user then enters into the TeleShaper rule set the instructions necessary to generate the new client screens on second terminal 180 and the instructions to receive the form data entered on 180 and to store said data in temporary storage. Step 205: Selecting sample data sets In this step, the user selects and records a collection of sample input data to be used in subsequent steps. The data should include data sets that completely exercise the host application's functions that are to be reformatted via the new interface. Step 207: Choosing a data set In this step, the user selects one of the sample data steps defined in step 205 for use in operating the system. Step 210: Transmitting starting page
In this step, a trainer, using training terminal 154, instructs TeleShaper application 150 to transmit the initial page to second terminal 180, which displays the page. The initial entry page may contain a login form or a "select application" form, for example. Step 220: Filling inform
In this step, the trainer, using second terminal 180, fills in the necessary information in the entry form. Step 230: Transmitting form data to TeleShaper computer
In this step, the trainer, using second terminal 180, submits the form data. The data is transmitted to the TeleShaper computer 140. TeleShaper application 150 then stores the form data locally. The trainer at training terminal 154 is alerted to the fact this form data has been submitted. This begins the training session. Step 240: Reviewing data and sending data to host computer (s)
In this step, the trainer, using training terminal 154, exercises host application. Using training terminal 154 and TeleShaper application 150, the trainer operates the host application to obtain the needed responses using the form data submitted in step 230 and, optionally, data previously submitted, data stored on auxiliary database 115, and/or data previously obtained from host application 121. The sequence of steps for interacting with these host application(s) (known as the "rule set") is generated by TeleShaper application 150 and stored on shaper rule set storage device 153. Step 250: Sending response page to client device
In this step, the trainer, using training terminal 154, instructs TeleShaper application 150 to build the response page and send the to second terminal 180. Also in this step, additional elements of the "rule set" are generated by TeleShaper application 150 and stored on shaper rule set storage device 153. Step 260: Sending sample response data to TeleShaper computer
In this step, the trainer, using second terminal 180, fills the next form with sample data and submits the completed form to the TeleShaper application 170. TeleShaper application 170 then stores the form data locally. The trainer at training terminal 135 is alerted to the fact this from data has been submitted. Step 270: Completed transaction?
In this step, the trainer determines if TeleShaper system 100 is fully trained to complete the transaction defined in step 202. If no, process 200 returns to step 240; if yes, process 200 proceeds to step 280. Step 280: Additional samples?
In this step, the trainer determines if there are additional data sample sets selected in step 205 to process. If yes, process 200 returns to step 207; if no, process 200 proceeds to end.
The training sequence outlined in process 200 (steps 207 thru 280) is performed for multiple iterations in order to fully train TeleShaper application 150. During the first of these iterations, host application 121 is exercised and TeleShaper application 150 is trained in the "normal" mode. That is, no errors are produced in the operation of the host application and the TeleShaper software is trained to accommodate routine operation of the host application. During the subsequent iterations of the training sequence, the host application is exercised and the TeleShaper software is trained in the "exception" mode. That is, exception data is intentionally introduced during the operation of the host application and appropriate responses are integrated. Appropriate response screens are sent to second terminal 180 for each of these exceptions
TeleShaper application 150, after being trained using the training sequence outlined in process 200, submits updated screens to second terminal 180 during operation. Thus, a user wishing to use the updated screens with increased functionality would utilize terminal 180. However, first terminal 170 remains connected directly to host computer 120 without being effected by TeleShaper application 150. Thus, the original forms will continue to appear on first terminal 170 for users who wish to utilize the original functionality. Additionally, TeleShaper system 100 can be trained such that some original forms can continue to be used on second terminal 180 in combination with some updated forms. During process 200, TeleShaper application 150 can be trained to navigate forward and backward within host application 121 to extract data buried within the form hierarchy and then save this data for later use. For example, if a user has to retrieve an item number that resides on a form five levels deep for use in the first form, TeleShaper application 150 can be trained to automatically perform this data retrieval during process 200. Thereby, during operation, TeleShaper application 150 will perform the steps necessary to retrieve the necessary data, thus simplifying the user interaction.
If there is a field within a form that TeleShaper application 150 is able to fill in programmatically, TeleShaper system 100 can be trained to do so in process 200. For example, TeleShaper system 100 can be trained to fill a date field using the date stored within TeleShaper computer 140, host computer 120, or auxiliary database 115. Any data not inherent to TeleShaper computer 140 or host computer 120 can be stored on auxiliary database 115 and used during operation of TeleShaper system 100.
To access difficult-to-access data, multiple instances of host application 121 can be simultaneously accessed using TeleShaper application 150 when training
TeleShaper system 100. For example, if an item number is most efficiently extracted by beginning a new instance of host application 121, the trainer using training terminal 154 can begin a new instance of host application 121 and extract the item number. Only the resources of host computer 120 limit the number of instances that may be started.
Error messages generated by host application 121 can be reformatted using TeleShaper system 100. For example, if error and exception messages generated by host application 121 are cryptic, TeleShaper system 100 can be trained to reinterpret the messages to make them more user-friendly. These reinterpreted messages are then displayed to the user who can then take the appropriate action. If identical data must be entered multiple times during one usage session of host application 121, TeleShaper application 150 can be trained to perform this task so that the user is relieved of the need to do so. For example, if an inventory program requires a user to enter an item number on the first page, the third page, and the fifth page of the application, TeleShaper application 150 can be trained so that the item number need only be entered once and is then programmatically transferred to the other pages.
If unused data fields are present within host application 121, TeleShaper application can be trained so that these fields are not displayed to the user. Likewise, if additional data fields are required to accommodate new input data, TeleShaper application 150 can be trained to present the new data fields to the user of host application 121.
A method of using TeleShaper system 100 to operate an existing software application in an improved manner will now be described with reference to Figure 3. Process 300 presumes that the training process 200 has been completed and that the results of process 200 have been stored on shaper rule set storage device 153. Step 310: Accessing starting page
In this step, the user, using second terminal 180, accesses the TeleShaper application 150, which responds by sending the starting page back to second terminal 180.
Step 315: Filling in and submitting form
In this step, the user, using second terminal 180, fills in the requested information in the starting form and submits the form data to TeleShaper application 150. Step 320: Accessing host applications
In this step, in response to the form data request, TeleShaper application 150 accesses and operates host application 121 in accordance with the rule set stored on shaper rule set storage device 153. Step 325: Transmitting response page In this step, TeleShaper application 150 transmits a response page including response data to second terminal 180. Step 330: Completed business process?
In this step, the user determines if the business process is completed. If yes, process 300 returns to step 315; if no, process 300 ends.
Other embodiments of the invention will be apparent to those skilled in the art from a consideration of the specification or practice of the invention disclosed herein. It is intended that the specification and examples be considered as exemplary only, with the true scope and spirit of the invention being indicated by the following claims. What is claimed is:

Claims

1. A trainable system for improving the operation of an existing software application, comprising:
a first computer operating a trainable user interface translator application and adapted to store a rule set;
an interface computer electrically connected to the first computer and one or more client devices and adapted to store format data;
one or more host computer(s) electrically connected to the first computer and operating one or more existing applications, thereby establishing data streams to and from the interface computer;
a training terminal electrically connected to the first computer for establishing the rule set during a training sequence;
wherein the first computer, according to the rule set established during the training sequence, monitors and reinterprets the data streams, extracts and stores the useful application data from the data streams, and generates response data streams with substituted data by combining and reformatting the extracted useful application data with the stored format data.
2. The trainable user interface translator system of claim 1, further comprising a rule set storage device electrically connected to the first computer for storing the rule set.
3. The trainable user interface translator system of claim 1 , further comprising a format data storage device electrically connected to the interface computer.
4. The trainable user interface translator system of claim 1, further comprising a network for electrically connecting the first computer to the interface computer, one or more host computer(s) and training terminal, and for electrically connecting the interface computer to the one or more client devices.
5. The trainable user interface translator system of claim 1, wherein the one or more host computer(s) includes one or more remote host computer(s) operating an existing remote host application or applications.
6. A method of training a trainable user interface translator system adapted to monitor and reinterpret data streams to improve the operations of an existing software application, the trainable user interface translator system comprising a computer operating a training application and adapted to store a rule set and electrically connected to a training terminal, to a host computer operating an existing software application, and to an interface computer electrically connected to a client device, the method comprising the steps of:
defining a transaction at the training terminal;
selecting sample data sets;
choosing a data set from the selected data sets;
requesting a starting page at the client device via the interface computer to the computer operating the training application;
entering form data at the client device into a form returned from the computer operating the training application; transmitting the form data from the client device via the mterface computer to the computer operating the training application; exercising the existing software application operating on the host computer from the training terminal to obtain needed responses using the transmitted form data and storing a sequence of steps for interacting with the existing software application in the rule set;
instructing from the training terminal a response page to be sent to the client device via the interface terminal which formats the response page and storing additional elements in the rule set;
determining if the trainable user interface translator system is fully trained to complete the transaction, and if not, reverting to the step of exercising the existing software application; and
determining if there are additional selected sample data sets to process, and if so, reverting to the choosing a data set step.
7. The method of claim 6, wherein the sample data sets comprise data sets that result in normal operation of the existing software application as well as data sets that cause error conditions to be automatically corrected, whereby the trainable user interface translator system learns to transparently process exceptions that occur in the existing software application.
8. The method of claim 7, wherein the sample data sets are stored on an auxiliary storage device.
9. The method of claim 6, wherein the interface computer formats the response page by combining format data stored on a format data storage device with starting page name and variable data received from the computer operating the trainable user interface translator application.
10. The method of claim 6, wherein the host computer comprises a remote host computer.
11. The method of claim 6, wherein the trainable user interface translator system further comprises two or more host computers operating existing software applications which are exercised from the training terminal.
12. The method of claim 6, wherein the rule set is stored on a shaper rule set storage device.
13. A method of using a trained user interface translator system adapted to monitor, reinterpret and reformat data streams to improve the operation of an existing software application, the trained user interface translator system comprising a trained computer adapted to store a rule set and electrically connected to an auxiliary storage device and to a host computer operating an existing host application and to an interface computer further electrically connected to a client device, the method comprising the steps of:
requesting at the client device a starting form from the trained computer via the interface computer;
filling in at the client device form data into a form returned from the trained computer and submitting the form data to the trained computer;
accessing the existing host application by the trained computer using the stored rule set, thereby responding to exceptions in a manner predetermined during a training sequence; transmitting to the interface computer variable data obtained by the trained computer by interacting with the existing host application and/or the auxiliary storage device and/or by internal calculation; combining the variable data with page format data by the interface computer to produce a formatted page; and
determining if the business process is complete, and if not reverting to the accessing step.
14. The method of claim 13, wherein the trained user interface translator system further comprises more than one host computers operating multiple existing host applications, and wherein the trained computer accesses during the accessing step the multiple host applications.
15. The method of claim 13, wherein the host computer comprises a remote host computer.
16. The method of claim 13, wherein the rule set is stored on a shaper rule set storage device.
17. The method of claim 13, wherein the page format data is stored on a format data storage device.
PCT/US2002/010360 2001-04-02 2002-04-02 System for and method of improving the operation of an existing software application Ceased WO2002079912A2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US28088801P 2001-04-02 2001-04-02

Publications (1)

Publication Number Publication Date
WO2002079912A2 true WO2002079912A2 (en) 2002-10-10

Family

ID=23075021

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2002/010360 Ceased WO2002079912A2 (en) 2001-04-02 2002-04-02 System for and method of improving the operation of an existing software application

Country Status (1)

Country Link
WO (1) WO2002079912A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1867892B (en) * 2003-10-16 2010-04-21 三菱电机株式会社 User Interface Software Design System

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1867892B (en) * 2003-10-16 2010-04-21 三菱电机株式会社 User Interface Software Design System

Similar Documents

Publication Publication Date Title
US7281029B2 (en) Method and system of capturing data for automating internet interactions
US7490167B2 (en) System and method for platform and language-independent development and delivery of page-based content
US8572564B2 (en) Configuring and constructing applications in a mainframe-based computing environment
JP5520856B2 (en) System and method for content delivery over a wireless communication medium to a portable computing device
US8370281B2 (en) Self-modification of a mainframe-based business rules engine construction tool
US6691100B1 (en) HTML/DHTML web interface system and method
US7287229B2 (en) Template-driven process system
US20020169789A1 (en) System and method for accessing, organizing, and presenting data
US9116705B2 (en) Mainframe-based browser
CA2417625C (en) Method and system of automating internet interactions
JPH10254803A (en) Method for collecting and storing user generation data and computer system
EP1190334A2 (en) Method and system for transferring information
US8364625B2 (en) Mainframe-based business rules engine construction tool
WO2000062170A1 (en) Method and apparatus for providing direct transaction access to information residing on a host system
US9442618B2 (en) Mobile device interface generator
CN111694561A (en) Interface management method, device, equipment and storage medium
US8019884B2 (en) Proxy content for submitting web service data in the user's security context
MXPA05002276A (en) System and method for building wireless applications with intelligent mapping between user interface and data components .
CA2716635A1 (en) Methods for web content optimization in single page display environments and systems thereof
US20170201634A1 (en) Document output processing
US20060143340A1 (en) Managing elements residing on legacy systems
KR20020041332A (en) Content server device
US20030131071A1 (en) Electronic document interchange document object model
WO2002079912A2 (en) System for and method of improving the operation of an existing software application
US20130297805A1 (en) Methods and systems to generate reports including report references for navigation

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SD SE SG SI SK SL TJ TM TN TR TT TZ UA UG UZ VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WA Withdrawal of international application
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

NENP Non-entry into the national phase in:

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP