If you are a Product Manager or Business Analyst in charge of managing users through User Acceptance Testing (UAT), here are the top 10 things to do to prepare:
- Formal scripts – prepare formal scripts for the business users to run. If you can re-use any of QA’s scripts, all the better. At a minimum, use your use cases to build test scripts. As an added bonus, these scripts will serve as training to the business users on how to use the system after deployment. We suggest you have scripts for testing both functionally and migrated data.
- Informal scripts – prepare informal, unstructured scripts for the business users to run as well. I strongly encourage you to do these in addition to formal scripts, in that these are the ones that will pull out defects about how the system isn’t intuitive to use. In addition, they may think to test things you didn’t formally script. As an example, this type of script might simply say “Login to the system and take a training course.” And you are hoping it’s intuitive to the user to figure out how to do that on their own.
- Use a tool – we strongly encourage you to put your scripts in a tool and teach the business users how to use that tool. For example, Quality Center is a tool that works well for this.
- Master data – create master data that can be used for testing by the business users. This includes logins and passwords and any data they must look at and/or consume in the tool. A great starting place to determine what data you need is to look at your Business Data Diagrams, and then of course look at your scripts. For example, if you have a training system, upload sample training courses for them to take during UAT. You should also organize this master data into a format such as a spreadsheet by test case, so they can quickly reference what data they should use in each script.
- UAT Kick-off deck – Create a slide deck to kick the UAT window off with. This kick-off should include the scope of testing, a reminder about the value of the system, a reminder that it is a testing phase and they will find defects in the system, and instructions on how to perform UAT. You need to teach them about using the tools, how to login, and even where to go to access the system.
- UAT User Manual – Create a manual for the users to quickly reference to while they execute the UAT scripts. You can hopefully reuse some or all of your kick-off slides. You definitely must include where to access the system (URLs), logins, and where to find master data.
- Pre-run scripts – Ideally you should pre-run the scripts before the business users try to execute them. You are familiar with the system, so your eyes on the scripts will be looking for things that are not obvious or incorrect steps. This will help ensure a much more smoothly run UAT.
- Teach them how to write a good defect – If you want to avoid a lot of manual labor yourself, teach the business users how to enter their own defects into a defect tracking system (and yes, I’m assuming you have one!). You need to teach them what information to include (logins, urls, steps to recreate) and how to set severity and priority values if appropriate.
- Coordinate build schedule with dev – Make sure your dev team is onboard with your UAT testing schedule so that they don’t do a build while users are trying to test. And more importantly, if they do a build overnight, that they don’t take the system down with a broken build! In general you need to coordinate with your entire IT team, I just call this one out as they have an immediate way to cripple testing by accident.
- Work with a business owner so they truly own acceptance – All of that said, you need to make sure there is someone in the business who owns the UAT process. You are simply here to facilitate it going well and do a lot of the prep work for them. But truly, they must be the ones who own acceptance of the system or they will never actually adapt it for use. So every step of the way as you go through your prep tasks, be sure you are getting the business UAT owner’s buy-in!
And a bonus #11: Have fun with it! This is when you get to see your system come to life with the people who will be use it. If you have fun, they’ll be more likely to have fun and actually enjoy this!!