The purpose of User Acceptance Testing (UAT) is to conduct user testing and also to obtain user acceptance sign-off for the Microsoft Dynamics CRM solution.
This involves testing of the end-to-end system to ensure that the system meets the customer business requirements. These tests are performed on the UAT environment using actual transactions that would provide a good sample of their business. The test results are then analyzed and compared to the original requirements and design.
Although the analysis may determine that the tests were successful, the customer may still request changes to the feature, data migration, or integration process. These changes are then taken up through the Change Control process. Once the changes are approved and implemented, the changes made to the system will be subject to individual unit and function testing, and will have to undergo UAT again.
Below are some of the considerations for a successful UAT:
Define the Test Objectives– The key here is to define test objectives for UAT testing. This is because a complete test execution for large application may not be possible in UAT phase. Testing should be carried out by prioritizing critical business objectives first. Think of what are the most important use cases or business processes that you would like to execute as part of UAT. One of the ways of identifying this is to understand how many different modules of CRM a specific process touches upon.
Create a Sandbox Environment – Identify the key set of users who have defined the requirements and those who would potentially play a role during UAT. These are the power users. Deploy the configurations and customizations to the Sandbox environment and get these set of users to familiarize the work-in-progress solution. The benefits of a Sandbox environment are multi-fold – (1) the users get a feel of the application that is being rolled out for them. (2)Collecting valuable feedback which can be incorporated into the product either as part of the current release or the future releases. (3) No surprises to the customer and the system implementer during the UAT (4) both parties have a head-start through these informal trainings.
Drive Product Familiarization Workshops – Invite the power users for a product familiarization workshop. The product familiarization workshops can happen at various milestones of the project – for e.g. – midway of design phase, end of design phase, midway of development phase, end of development phase. The aim of the product familiarization workshops is to introduce the new set of configurations and customizations made to the CRM system. This is another way of acclimatizing the users to the work-in-progress solution.
Setup the UAT Environment and Real-world test data – Provide a heads-up to the customer IT team on the UAT Plan and execution dates will in advance. This information would help the customer IT team to organize the servers required to model the production environment setup, along with the real-world test data. Prepare a Pre-UAT checklist which defines the tasks that the customer IT team and your development team are responsible for. Track the check-list to completion.
Pre-UAT Training – By now, you will have the list of all the users who will participate in UAT. You already have a head-start as a subset of the UAT users (power users) knows how to operate the system. These power users can be your advocate during the Pre-UAT training and the UAT phase.
a. Set the UAT Agenda – It is very important to set the UAT Agenda and UAT users accept the agenda. The time allotted will vary depending on the functionality being tested. Ensure that the test schedule allows for the resolution of issues and discussion.
b. Highlight the Acceptance Criteria – Highlight the criteria to determine system acceptability. Your reference should always be the use cases, functional requirements and functional design gathered as part of the earlier stages of the project.
Collect User Feedback – Handhold the UAT users. Even though the product familiarization workshops and pre-UAT trainings have been imparted, some of the UAT users might lose their way. It is the responsibility of the Functional Consultant to bring them back on track. During UAT, collect feedback from the end-users – the feedback could be related to the processes or the usability or the design. The feedback could be the first step in building a scope for the next phase of the CRM implementation.