1. Field of Invention
This invention relates to Hardware, Network, and/or Software technology and the regression and verification of the accuracy of that technology; more particularly to a method for coordinating and managing the method and procedure, including full regression, to established generational baselines in order to provide errors, deviations, recommendations, and acceptance status information.
2. Description of Prior Art
Over many years of technology development a general methodology for testing and implementing technology has evolved:
Unit Test--Each individual technology, whether it be hardware, network, and/or software, is tested by its creator to demonstrate that it accurately and completely includes all the capability that was requested in the system requirements specification document, and that each technology item can be executed accordingly.
System Test--A group of hardware, network, and/or software technologies are collectively exercised by technical staff to demonstrate that it accurately and completely includes all the capability which was requested in the system requirement specification documents, and that the group can demonstrate accurate and complete processing as was requested. An Information Technologist testing organization typically conducts these tests.
Inter-System Test--An entire platform of hardware, network, and/or software technologies are collectively exercised to demonstrate that the platform accurately and completely includes all the capability which was requested in the system requirement specification documents. An Information Technologist testing organization typically conducts the inter-system tests.
System requirement specifications are prepared by members of technical organizations after they interpret the original business user customer requirement request and determine the technology and computer languages, machines, networks, routers, switches, and other hardware and network components that will be used to support the business user request.
User Acceptance Test--A support platform [or part of it] is collectively exercised to demonstrate that it accurately and completely includes all the capabilities that the business user customer requested in their original business user requirements request initially presented to the Information Technology organization. These tests are typically conducted by, or for business user customers, and they are not technology focused, rather they are exercised to verify that the business needs, transaction processing, and reporting exactly meets the business user's needs as they requested.
Usually the Unit, system, and Inter-System tests are expected to be completed by the Information Technology organization before it delivers the technology to the business user customer for the User Acceptance Test. All these tests should be correctly completed prior to implementing the new or enhanced technology into the operating production environment. On many occasions, however, the business user customer is unable to verify that the technology fulfills their original user request, generally due to their inability to conduct the acceptance verification process, timing constraints, late delivery, lack of available, and/or not having capable staff. Because the business user customer has been unable, in many instances to test the technology, it may be implemented into their production environment with errors that are detected after the production implementation. In a large number of, if not all, situations, these errors would have been identified during a full regression and user acceptance test.
Testing and the verification of accuracy and completeness of technology development are estimated to cost about 60 percent of the technology development budget. Inter-System and especially User Acceptance Testing, the more expensive and time consuming areas, are often shortened or eliminated in order to meet budget and delivery timeframes. Even though there can be significant costs incurred for later corrective actions which are borne by the same business user customer, these costs and the delays associated with corrective actions are now assessed after customer dissatisfaction, errors in transactions, and business delays.
Inventors have created various testing techniques to address the Unit, System, and Inter-System testing processes. These techniques appear to indicate that their use could improve testing, however these tests principally support technologists who are familiar with the complicated details required to build the hardware, network, and software technologies themselves. Importantly, these improvements test and verify the system specifications created by technologists after interpreting the original business user customer request, and therefore the technology developed, even if fully tested, may still not fulfill the original business user customer Requirement. In many cases these differences in interpretation are responsible for errors in the technology developed.
Business user acceptance verification processes in the User Acceptance Test are expected to affirm that the technology to be implemented delivers the business user customer's requested technology. In order to meet the intent of user acceptance testing noted above, however, methods require improvements to verify the technology accuracy, meet business user customer needs, improve business processes, reduce dissatisfaction, business expense and business delays.
U.S. Pat. No. 5,233,611 to Trienthafyllos, Shield, and IBM (1993), discloses automated function testing of application programs which utilizes a test case program which collects and executes commands and transactions. This method, however, does not include regression testing and it does not test hardware or network technologies. Nor does the method specifically support user acceptance by the non-technical business user customer community.
U.S. Pat. No. 5,513,315 to Tierney, Cross, and Microsoft (1996) shows a system and method for automatically testing software using a deterministic acceptance test and random command sequence selections with a results analyzer. This method uses specifically predetermined commands with a log file and tracker file to execute technologist oriented code level testing. Again, there is no regression component; nor are hardware and network elements tested. Evaluative intelligence is not included, and the method does not support user acceptance by the non-technical business user customer community.
U.S. Pat. No. 5,892,947 to DeLong, Carl, and Sun Microsystems (1999) is a test support tool which produces software test programs from logical descriptions and cause-effect graphs. This method generates code level test cases, as well. This method does not support regression testing, does not test hardware and network elements, does not include evaluative intelligence, and does not support user acceptance by the non-technical business user customer community.
U.S. Pat. No. 5,805,795 to Whitten and Sun Microsystems (1998) shows a method and computer program product for generating tests with optimized test cases and a selection method. Again, this method does not support regression testing and does not test hardware and network elements. The invention does not include evaluative intelligence and does not support user acceptance by the non-technical business user customer community.
U.S. Pat. No. 5,913,023 to Szermer and Siemens Corporate Research (1999) is a method for automated generation of tests for software. Again, this method does not support regression testing and does not test hardware and network elements. The invention does not include evaluative intelligence and does not support user acceptance by the non-technical business user customer community.
U.S. Pat. No. 6,002,869 to Hinckley and Novell, Inc. (1999) shows a system and method for automatically testing software programs. This method enables the functional testing of various code of a software program. Even though claim 4 in this invention states the method enables a test history of a test procedure, this is at a very detail program level, and is not regression testing. Also hardware and network components are not tested. Evaluative intelligence is not included, and the method does not support non-technical business user customer community.
U.S. Pat. No. 6,014,760 to Silva, et al. al, and Hewlett-Packard Company discloses a scheduling method and apparatus for a distributed automated testing system. This invention schedules and executes software tests. It does not test hardware and network components. The invention does not add evaluative intelligence, does not control regression, nor does it support users or manage test conditions.
U.S. Pat. No. 5,500,941 to Gil, and Ericsson, S. A. shows an optimum functional test method to determine the quality of a software system embedded in a large electronic system using usage concepts modeled as Markov chains. Code level test cases are generated internally, and are not those that would be selected by the business user customer. Regression testing is not covered here, nor are hardware and network components tested. The invention does not add evaluative intelligence and does not support the non-technical business user customer community.
U.S. Pat. No. 5,870,539 to Schaffer and Sun Microsystems (1999) discloses a method for generalized windows application install testing for use with an automated test tool. This invention tests windows software applications only; and no hardware or network. Regression testing is not included, evaluative intelligence is not included, and the process does not support user acceptance for non-technical business user customer community.
None of the above methods indicates the capability of performing a regression process to verify continuing process accuracy and integrity over time.
None of the above methods indicates the capability of clearly identifying errors, deviations, and specifically related recommendation for corrective action over time, the most important components of a verification process.
None of the above methods indicates they reduce time and costs when using their method.
None of the above methods indicates the ability to easily support the non-technical business user customer.
None of the above methods indicates the ability to customize [their methods] to support various different technology, hardware, network, and/or software components.
A method is needed to support non-technical business users and help them ensure their technology is correct and supports their business plans.