Making any software program or service effective and use worthy, it is important to test that with the end user. After getting the responses or you can say suggestions, the programmer can make effective changes and improve the usability. Similarly, when you think about SAP – the user acceptance test plays an important role to deliver a fully functional system without any error.
Introduction of User Acceptance Test
The ERP team performs the critical phase of testing and during the test – check the design and configuration of the system. The user or tester gets the opportunity to ensure that the delivered system is working properly and the quality of work has not been compromised. Before making the delivered system live, user acceptance test phase has been performed that can take up to a month to be completed and half doe a 50 user site should be carefully executed and prepared to get the best out of it. The business must have full ownership of this testing phase and not fully rely on the implementation partner.
The User Acceptance Testing Phase has three major components:
- Unit Testing – this testing ensures that the designed functions of the system are working as required.
- User Acceptance Testing – this test validates the overall business processes and users’ daily tasks in the system.
- Performance Testing – this helps to determine system behaviour- if it is normal, then all users are connected and performed high CPU requirement tasks.
Identification of Resources and Prerequisites
During the preparation of the system implementation, the programmer identifies key users and involves them into the design phase. This step helps to have a clear understanding of the project, the philosophy of SAP Business One and an appreciation for new business processes. The key user should have knowledge of the system to make sure to perform the user acceptance testing efficiently within the allocated time limit and not spent that on training. During this phase, the project manager will involve all the key users based on process, function etc. covered during the session. This testing phase can be divided into four major categories:
- Quote to Cash
- Procure to Pay
- Demand to Supply
In different organisations, other process streams can be considered such as sales, construction, operation planning etc. You need to just ensure that the key user with overall understanding and knowledge of the stream should be there because he/she will be responsible for the process inside and outside system’s acceptance testing.
Training is important for the final phase of the user acceptance testing, else it can become difficult if the key users have not been trained and upskilled. Usually, for a website with more than 20 users requires a full day of the functional consultants with each key user to explain the process stream in SAP Business One. As well as the key user must have received a full system navigation or overview training prior to the start of the phase.
While writing the test scripts, one ensures to cover the functional aspects of the system as well as overall business processes and the documents, which are supporting the process, but outside the system. The key users and project manager should review the test script carefully prior to the beginning of the phase and make sure that it covers all aspects of the system.
Publishing a test plan
It is important for the project manager to publish a detailed test plan so that users can easily understand their goal. Generally, the project manager will plan for at least two runs of acceptance testing where the second would include only the test scripts that failed the first time. Typically, in a SAP Business One implementation, about 50% of test scripts will have to be retested though it depends on how well it has been written. When the final end-to-end testing organised then all the test scripts went through run one and two. The final end-to-end testing focuses more on execution and process.
What should you consider in your test plan?
You should include a full list of all test scripts grouped by process streams to begin the test plan. You must assign each test script to a functional consultant and a key user who test this later on. Usually, the project manager should indicate if a test script has any dependencies on other test scripts. This helps to save a lot of time by not running test script if a parent script failed already. The project managers also try to identify those scripts, which must be successful before going through training and even go live.
How do you manage the unit testing?
Generally, the clients are not involved in the unit testing conducted by the functional consultants and this is a fundamental step to eliminate bugs in the final solution. Each consultant is responsible for the testing of the functions – they have been working on. Then the issues would be documented in the issue log to be evaluated and prioritised by the project manager. The count of the issues and required time to fix them impact potentially on the timing of the user acceptance testing, and to eliminate most of the critical issues, the project manager should have factored enough contingency in the project plan. However, he/she could decide to fix some of the low priority issues during the user acceptance. It is not an ideal situation, but should still be tolerated as to avoid compromising go live.
What is User Acceptance Testing (UAT)?
User Acceptance Testing is a simple process to test the system with users. The project team not only focus on testing the system as well as find anything that can help users to run the ERP smoothly. During the UAT, usually, the team test all the functions, documentations, process, operating manuals, cheat sheet and more. The one major aim of UAT is for the users to take full ownership of the system and ensure to make it with the new business environment. Once again, test scripts should help the process and document all the issue in the issue log. Ideally, the project team should review the issue register on a daily basis, priorities assigned (all these should be fixed before training or go live) and resources allocated to fix the issue. As well as the scripts should have to be executed once again if, they fail during the first run.
The overall performance of the system should be tested and ensured to be in line with the business expectations by the project team. The performance testing phase would completely depend on the architecture, which has been selected to support SAP Business One (installation of fat clients on each workstation, remote desktop connection, Citrix etc.). The project team would simply test the performance for the site under 20 users that each user can create the document, print in the reasonable time that doesn’t drop etc. You need to identify the construction of the system in the bigger implementation, for example, if about 20 users add a sales order at the same time and if everyone connect at the same time. With this testing, you would come to the result that will be documented and compared against the benchmark if one exist.
Once the user acceptance testing has been done, the project team can discuss the system’s a go or no-go. This decision would allow the project tem to move towards the training phase. Most of the users who have participated in the UAT in a small implementation, and typically for SAP Business One would require only a limited training after this phase. Classroom training is one of the most appropriate ways for bigger implementation. In any case, this testing phase is one of the most important testing phases for the project.