User Acceptance Testing (UAT) involves real business users testing a system to determine if it will provide benefit and be acceptable for use in the organization. During UAT, users test the system according to test cases and document any defects found. The goal of UAT is not to prove a system works, but rather to expose faults before it goes live, as the only way to prove a system is by finding ways for it to fail testing. UAT deliverables include test cases, test results, and a defect log.
6. User
Users means the real business users, who will have to operate the
system; normally the staff of an organization, but it could be your
suppliers or customers. They are the only people who understand exactly
what the business is, and how it operates. Therefore they are the only
people qualified to check a system to see if it will deliver any benefit to
the business or organization.
7. Acceptance
The acceptance of a system means you are confident it will give benefit to the
organization. It does not mean that it only meets the original specification as requested.
A system may very well meet all the specifications asked of it, but when trying to see
how it will work in the business it is realized that it will not give anything positive to
the organization, or may even damage the organization. This may be for a number of
reasons such as a change in the business or business environment, such as a takeover.
The point is that a system may not be acceptable, even if it meets specification. You
may still have to pay the supplier, but you will not incur any costs to implement it. Of
course it may not even work to specification, which makes the question of acceptance
even harder to answer. There are cases where it is worth implementing and paying for
systems, which are imperfect, but that deliver real business value.
8. Testing
Whenever people are asked what testing is, many of them say it is to
prove the system works. This is the key problem with the way UAT is
employed in many organizations, as it is impossible to prove any system
is correct. In fact a lot of effort is expended, and wasted, in trying to get
right answers.
There is much literature on the subject of testing, and most writers agree
that all you can prove is if a system is wrong. Therefore a good test is
one that is designed to try and make a system fail, so as to expose its
faults before it goes live. This type of testing is the only type worth
doing.
17. Traditional Approach to UAT
1. Business Analyst or QA Analyst writes the
test scripts
2. A demo of the new application or functions
is given to users
3. Users walk through test scripts stepby-step
UAT is where the rubber meets the road! You have to make a major commitment of your resources to this process.
Testing each logic path to validate that each condition in a system is functioning correctly.
This is typically accomplished through establishment of a test database and processing of test transactions that exercise system functions with the expectation of predictable outcomes for each test.
Stress and performance testing is often also a part of acceptance testing.
Two key elements that can make or break UAT –
Comprehensive test plan that details all steps of the testing process, includes all functions to be tested – inputs and desired results. Users should test the system using scripts that document the path to an error so it can be replicated in order to be corrected and the fix can be validated in UAT.
Test team – Must include the “right” people. Users, IT staff, management staff that will be using reports, as well as the trainers. The peripheral users as well.
The development contractor should be available to answer questions should major errors or defaults be found but should not run the UAT.
Need to assign a test leader who has the authority to stop the testing should critical error occur!
Provides an opportunity to compare the new system’s efficiency versus the system and the business processes it replaces.
Provides the best opportunity to determine what is crucial for training and what kind of learning curve to expect.
Provides an indication of how easily staff can adapt to new business processes
Provides an opportunity to compare the new system’s efficiency versus the system and the business processes it replaces.
Provides the best opportunity to determine what is crucial for training and what kind of learning curve to expect.
Provides an indication of how easily staff can adapt to new business processes
Two key elements that can make or break UAT –
Comprehensive test plan that details all steps of the testing process, includes all functions to be tested – inputs and desired results. Users should test the system using scripts that document the path to an error so it can be replicated in order to be corrected and the fix can be validated in UAT.
Test team – Must include the “right” people. Users, IT staff, management staff that will be using reports, as well as the trainers. The peripheral users as well.
The development contractor should be available to answer questions should major errors or defaults be found but should not run the UAT.
Need to assign a test leader who has the authority to stop the testing should critical error occur!
Two key elements that can make or break UAT –
Comprehensive test plan that details all steps of the testing process, includes all functions to be tested – inputs and desired results. Users should test the system using scripts that document the path to an error so it can be replicated in order to be corrected and the fix can be validated in UAT.
Test team – Must include the “right” people. Users, IT staff, management staff that will be using reports, as well as the trainers. The peripheral users as well.
The development contractor should be available to answer questions should major errors or defaults be found but should not run the UAT.
Need to assign a test leader who has the authority to stop the testing should critical error occur!
Two key elements that can make or break UAT –
Comprehensive test plan that details all steps of the testing process, includes all functions to be tested – inputs and desired results. Users should test the system using scripts that document the path to an error so it can be replicated in order to be corrected and the fix can be validated in UAT.
Test team – Must include the “right” people. Users, IT staff, management staff that will be using reports, as well as the trainers. The peripheral users as well.
The development contractor should be available to answer questions should major errors or defaults be found but should not run the UAT.
Need to assign a test leader who has the authority to stop the testing should critical error occur!
Two key elements that can make or break UAT –
Comprehensive test plan that details all steps of the testing process, includes all functions to be tested – inputs and desired results. Users should test the system using scripts that document the path to an error so it can be replicated in order to be corrected and the fix can be validated in UAT.
Test team – Must include the “right” people. Users, IT staff, management staff that will be using reports, as well as the trainers. The peripheral users as well.
The development contractor should be available to answer questions should major errors or defaults be found but should not run the UAT.
Need to assign a test leader who has the authority to stop the testing should critical error occur!