User acceptance testing (UAT) is one of the final phases prior to ‘Go Live’ in a software implementation project and allows the client to see first-hand how the mapped workflows translate in the selected software. Test cases are created to replicate each user workflow to ensure that each scenario is tested and validated with the appropriate user group and that agreed reporting outcomes are met. It is now time for project stakeholders to get a feel for what users can expect from this new way of working and see their agreed workflows in action. It is also an opportunity for them to give feedback and for the implementation partner to refine the system configuration accordingly.
Nicky Harvey, Senior Consultant at Tangram, shares why a well planned and executed User Acceptance Testing phase is essential in any software implementation.
User Acceptance Testing is Important
For the UAT phase of an implementation project, a detailed task and communications plan is especially important. It precedes the launch phase and is dependent on a number of stakeholders providing feedback by a specific date.
Ensure all testers know your UAT dates, build all tasks into a plan, and include the required effort. They need to know what is expected of them. Give adequate time for testing, but not too long (or you will lose momentum). Typically 2-3 weeks is the sweet spot for a full ERP implementation project.
Remember, in a software implementation, you are testing the agreed processes and workflows as mapped to your business and configured in the system. You are not testing the functionality of the software.
A well-planned and executed UAT phase is usually indicative of successful software implementation. There are several factors that will ensure a successful UAT phase from the perspective of both the client and the implementation partner.
1. Select the Right People for User Acceptance Testing
Typically, in an implementation project, there will be 1-2 stakeholders from each department involved in the decision-making throughout the business process mapping sessions. Therefore, they are aware of how each department works individually and collectively. As they were part of the discussions, they understand the end-to-end processes and desired business outcomes.
This core project team would usually form the testing group for UAT. At this stage, additional users may be invited to the testing group by exception, however as they were not part of the initial decision-making process, this should be carefully considered. If additional users are added to the testing group, it is the client’s responsibility to brief them on the approved workflows and the context of why certain decisions were made. UAT is not the time to revisit or change decisions with new stakeholders.
2. Brief Your Testers
Conduct a UAT kick-off session to brief your testers. Define testing roles, share key dates and deadlines, walk through the testing process. Define where and how to log feedback/results, assign each test case and be clear on expectations. Explain the effort required per test case so that testers can plan their time around their current workload. Also, highlight the implications of not submitting feedback by the due date, i.e. a delayed Go Live date. Ensure each test case has all of the information required for the user to complete it and log their results. If a test case fails, be clear on what you need the user to do, e.g. provide commentary and full screenshots or a video demonstrating the failed testing results.
3. Train Your Testers
Remember this may be the first time users have logged in to the system, so you will need to ensure they have the correct access to the test environment and can navigate the system to complete their test cases. Depending on the number of workflows and user types, you can split training agendas over one or several sessions. Sometimes user-specific training sessions are required for certain departments, including HR or Finance. This makes sure users are not overwhelmed with tasks that are unrelated to their testing role.
It’s important to schedule training sessions in advance to ensure full attendance and enable users to ask questions in real-time. If conducted online, it is a good idea to record the sessions and/or provide supporting training material. Users can then reference these as needed throughout UAT.
4. Support Your Testers
Just as with the system Go Live, users will require support during UAT. They are not only learning a new system but also required to fit testing tasks around their current workload. Include Q&A sessions in your UAT schedule to allow testers to ask questions and get advice, these can be structured refresher training sessions by request or open drop-in sessions. It also provides a forum for the client to raise any concerns, request changes, and provide general feedback. If users are well-supported it minimizes the risk of delays in testing and gives a better user experience to all involved.
5. Track Your Testers Progress
Suggest testers book out time in their diaries to complete testing. Be mindful that some workflows will require testing at different stages of the process, so if one tester hasn’t completed their test case, the downstream testers will not be able to complete their tasks. Save your test cases and feedback document in a shared location so progress can be tracked in real-time, and users who are falling behind can be prompted. Offer additional support where needed if testers are struggling to complete their test cases.
Address feedback periodically throughout UAT, document configuration changes required and/or made in the testing environment, confirm when re-testing is required and communicate clearly any outstanding actions.
6. User Acceptance Testing Approval
UAT approval is the final milestone in this phase. It is recommended to hold a feedback/approval session with the testing group to ensure that all test cases have been assessed, feedback is documented and understood, and any re-testing has been completed. Client sign-off signifies approval to proceed to the next phase, usually end-user training, and the Go Live date is also confirmed at this point. The implementation consultant will ensure any updates are made into the Production environment ready for Go Live, and that scheduled training sessions and support materials reflect the desired end state.
This core group of testers will be your greatest asset after Go Live, as they will have advanced knowledge they can share with the wider teams, can answer process questions, and help engage end-users in those crucial first few weeks after launch.
UAT is an essential phase of a software implementation, and to be successful it relies on a solid testing plan and communication strategy. Plan out your UAT phase and communicate clearly throughout the whole process to ensure testers understand their tasks and the testing deadlines. Support your testers and track progress to ensure feedback is documented, understood and the next steps agreed. As the first group to be exposed to the system, the group of testers will become your super-users post Go Live, so you want them to enjoy the experience and share their newfound system knowledge with other users.