Beyond testing program modules, the entire system is tested to determine that it meets requirements established by business process owners and users, and that it can be used and operated to the satisfaction of both users and system operators. Testing is carried out by systems developers, by developers and the users together, and finally by users. The more closely the test can simulate a production environment (e.g., people, machines, data, inputs), the more representative the test will be and the more conclusive the results.
Several types or levels of tests are usually completed before a system can be implemented. From the users’ point of view, three of these tests are the most important. The system test verifies the new system against the original specifications. This test is conducted first by the development team and then by the users with the assistance of the team. The acceptance test is a user-directed test of the complete system in a test environment. The purpose is to determine, from the user’s perspective, whether all components of the new system are satisfactory. The user tests the adequacy of the system, both manual and automated components; of the manuals and other documentation; and of the training the users received. Finally, the operations test or environmental test runs a subset of the system in the actual production environment. This final test determines whether new equipment and other factors in the environment—such as data entry areas, document and report deliveries, telephones, and electricity—are satisfactory.
As noted earlier, enterprise systems are often implemented using a direct (Big Bang) approach. Successful implementations often involve extensive testing. For example, before implementing SAP at Lucent Technologies, Inc., more than 70 business users tested the system for six months. At the Gillette Company, 150 workers ran test transactions for four months. 1