Because we are developing custom software, we strongly suggest a formal testing process conducted jointly by both companies. We carefully test our application during development and are able to eliminate most of the syntax bugs before installation. However, there may be a few adjustments that need to be made once the system is installed and given “real world” field testing. For example, a common problem with legacy systems is that the data does not match the specifications provided and cannot easily be converted because of referential integrity constraints included in the new system.
There are many ways to handle this testing process and the approach depends on your preferences. Some of our clients create a formal test process. They enter test data for a number of situations and verify the results. This is a good approach because it serves as a training mechanism in the use of the new software and generates confidence that the program will handle all situations.
Some clients implement a parallel system. They enter real data into the program and compare the results to results generated manually or with their old system. The key to successfully implementing this style of testing is to back up the data frequently (every few hours or before a major process is executed) so that a large amount of work will not be lost if a major logic bug is found. Whatever testing style selected, we will work with you to provide solutions in a timely manner. Once you are satisfied that the application is working correctly, we ask that you sign off on the project. Signing off on a project merely means that you acknowledge that we have successfully completed the project. We will remain available to provide support and enhancements when needed.