The primary reason for conducting end-user testing is to identify errors. Testing is carried out by end-users to ensure that the computer system functions correctly and meets the organization’s needs. The analysis may include asking end-users to carry out specific tests, interviews with users, questionnaires regarding usability, comparative testing with users comparing work on two different systems, direct observation (audio/ video feeds). computer-generated data may be evaluated for accuracy and errors.
All of a system’s newly written or modified application programs, as well as new procedural manual, new hardware, and all system interfaces, must be tested thoroughly. Testing is done throughout systems development, not just at the end. It is meant to turn up previously unknown problems, not to demonstrate the perfection of programs, manuals, or equipment. It is an essential series of steps that help ensure the quality of the eventual system.
Testing can be divided into 3 categories: (user acceptance testing can occur at several of these levels)
- Component or unit testing: the first level of testing done immediately after making a change.
- unit-testing should be done after every modification and error fixed immediately.
- after unit testing is completed and the change is working at the local level, it is time for the second level of testing, called integration or functional testing.
- Integration of functional testing: occurs within or between related functions, modules, or components of a system. This type of testing ensures that the change did not introduce bugs or change functionality.
(the purpose of the first two types of testing is to produce a zero-defect product, meaning users should not see these types of fundamental error)
- system testing: the entire application is tested as a whole. This level tests interfaces with all systems as well as test full-system functioning. This level of testing cannot happen until all changes are complete and all components and integration testing are complete, with errors fixed and retested.
- it can be combined with user acceptance testing because it demonstrates full-system functionality.
- The system should look and act exactly how it will act after go-live, except for the use of false patients’ names and data.
- Standard testing scenarios can be developed, admitting different types of patients and working through all the steps of a hospital course of treatment.
- The project manager should be prepared to run through the system level of testing at least twice for the initial go-live.
End-user acceptance and user-acceptance testing:
Analysis of end-user acceptance of systems using human-computer interactions or user-acceptance testing (UAT) is done to determine the end-users willingness to use computer technology and software in the way in which it is designed. Without acceptance, users may avoid or misuse technology or remain dissatisfied, impacting job performance. For the successful implementation of a system, user acceptance is critical.
Analysis of end-user acceptance should begin during alpha (completed by the developer) or beta (completed by end-users) testing before the complete implementation of a system. Usability testing should help to determine ease of use and inherent problems in the system. while some organizations use surrogate end-users for testing, at least some participants should be actual end-users.
Steps to analyzing end-user acceptance:
- analyzing the basic requirements of the system and the organization
- identifying the end-user acceptance scenarios
- describing a testing plan, including different severity levels based on real-world conditions
- designing the testing plan and test cases, considering the risks and the skills of the end-users
- conducting the tests
- evaluating and recording results.