User Acceptance Testing (UAT) for CRM Projects – Secrets of Success
User Acceptance Testing for CRM is a key part of your implementation project. Of course all testing is important, but UAT is the only testing which is led by users rather than developers. With poor user adoption being the primary cause of CRM project failure, why would you want to skimp on user acceptance testing?
Here’s our take on User Acceptance Testing for CRM implementations. We look at where it fits in overall testing, why you need it, and most importantly, how to do it well.
Why do we need to test CRM implementations?
There are two main reasons why testing is so important.
- Good testing should identify errors (bugs) in the application. Finding bugs is not the end of the world; if found during the testing process, this just means that the tests are doing what they are supposed to! Finding bugs prior to go-live makes them much easier and cheaper to fix than finding them after you are using the application!
- Testing should ensure that the implemented solution covers each and every point in the scope document.
Please note that testing should not be used for defining additional scope for the project. Testing comes quite late into a project. Even ‘minor’ additions to the scope of the project (‘scope creep’) can have adverse implications for your project. They will probably end up in you having to:
- Pay extra for the development team to build the added features for you.
- Accept that the initial deadline for the delivery of the CRM will not be met.
What if something really important was missed in the original scope? This happens occasionally, usually when scoping was poorly done. The best approach is to talk to your CRM partner or developer about the impact on cost and timelines of the project, then make an informed decision.
What kind of tests should we do when implementing CRM?
There are various types of testing that are used to test different aspects of the development:
- Unit testing: This is used to check code quality. The smallest ‘whole’ part of the application (also known as functionality or a unit) is independently tested to ensure that it is performing as required! Usually the developers do this.
- Integration testing: If your CRM is to integrate with other systems (marketing, website, finance, ERP, etc), this needs to be tested as a stand-alone exercise.
- Data Migration testing: This is necessary if you are switching applications, importing data or changing your database structure or fields. It ensures that the data ‘makes sense’ after migration to the new system.
- Stress testing: This finds out how robust the software application is when usage is heavy and resources are limited. For CRM, this could be mobile access with limited bandwidth. Or it might be many users all on the system at the same time.
- User acceptance testing (UAT): UAT is different from all these tests. It does not focus on technical specifications. Instead, it makes sure that the CRM matches the requirements in the scope document and that the solution will actually work for the end-users.
All these tests are important for your CRM applications. But in this post our key focus is on User Acceptance Testing for CRM.
Why is User Acceptance Testing so important?
User Acceptance Testing or UAT is absolutely essential for all CRM implementations. Here’s why.
- UAT will ensure that you get the CRM solution you asked for.
As mentioned, your requirements should all be in the ‘scope document’, which was agreed at the start of the project. Scoping is very important. Without a good scope, UAT is difficult if not impossible. (If you need help with scoping, consider either an Opsis scoping workshop, or download the Opsis scoping resources and run a workshop yourselves. Note you will still need to collate all the information from the workshop into a scoping document. )
- UAT makes sure that the business users can intuitively follow their business processes in the new interface. This is essential for widespread user adoption of the new CRM!
- If you involve your subject matter experts (SMEs) in the UAT process, it can help identify which parts of the application are most challenging for end-users, thus guiding the creation of supporting documents such as Training Manuals and FAQs. This is yet another factor which will improve user adoption of CRM.
How to run successful User Acceptance Testing for CRM
There are six core requirements for successful UAT.
- Actual business end users need to be involved with UAT. This means you get real feedback about your new CRM and whether it meets user requirements. You catch issues that the technical team missed. You also get the users engaged with the new CRM and give them some ownership. That ownership alone will improve your chances of company-wide user adoption of the CRM.
- Use test data, but make the data as ‘real’ as possible. Take a snapshot of the live environment and populate the test system with it. Have your testers use this data during UAT. They will be comfortable with familiar data. Their input is also great for double-checking your data migration tests.
- Allow sufficient time in the project schedule. Check the phases of UAT below. These have to be performed one after the other. If you cram them all in, or let them overlap, you won’t get a good result.
- Prepare in advance for UAT. This includes getting the data ready and freeing time for your end users to concentrate on testing. This may mean temp staff, or extra shifts for other staff to cover the normal workload. End users need to be sure their ‘day job’ is still looked after so they can focus on the UAT task.
- Plan your testing process. Testing should include a set of scenarios (use cases) which cover how the system will be used. These scenarios should be developed based on the processes discussed in your scoping.
Planned scenarios for testing help users to explore all nooks and crannies of the system, rather than repeatedly testing the most obvious tasks.
- Select and train your end user testers. You need to use the same people throughout the User Acceptance Testing process, so that you can build on what happened earlier. You also need specific training on ‘how to test’ as well as on the business reasons for the project and how the solution is meant to be used. This ‘how to test’ training helps your end-users communicate effectively with the developers who will have to fix any issues they find.
When is it the best time to perform User Acceptance Testing?
The ideal time to perform UAT is after the development has been completed, but before your new CRM is rolled out for general user adoption.
What are the various phases of User Acceptance Testing?
User Acceptance Testing generally has the following phases.
- Phase 1: Have the users provide feedback and compare it with the scope document. Any ‘scope creep’ from the user feedback needs to be avoided. Once valid issues have been identified, the document needs to be submitted to the development team for resolution. So the developers have all the issues at one time. They can address them in a unified fashion.
- Phase 2: Once the developers believe all issues have been fixed, it is time to repeat the UAT process with the same group of users. Any new issues that may have crept in because of the previous fixes should be documented and sent back to the development team.
- Phase 3: The steps in Phase 2 are repeated here. Issues here should be extremely minor, if there are any at all. (In our experience, Phase 3 issues are usually due to scope creep.
- Sign off: This means everyone is happy and the CRM product is ready to roll out.
What user acceptance testing is NOT
User acceptance testing is NOT a replacement for scoping, or checking that everything that the business wants is included
User acceptance testing is NOT a replacement for training - in fact training is needed before the testers can do the testing
Proper User Acceptance Testing will help you in key ways. It will:
- Ensure you get the CRM you asked for.
- Ensure you get a CRM your users can use.
- Engage your end-users and encourage faster adoption of your new CRM.
But remember, User Acceptance Testing is not End-User Training. UAT can help make your CRM work well for users, but it is no substitute for planned end user training around the rollout of the live system.
Published by Gill Walker
Who is Gill Walker?
Gill Walker is many things:
- She is an author who loves spreading knowledge of CRM and specifically Microsoft Dynamics 365 via articles such as this;
- She is an expert consultant who has been helping her clients with their Microsoft Dynamics 365 (and previously Microsoft Dynamics CRM and Microsoft CRM) challenges since 2002;
- She is a professional trainer who shares her wide knowledge of Microsoft Dynamics 365 with her training delegates – so they can implement and manage their Microsoft Dynamics 365 more easily and effectively;
- She is a speaker who shares her knowledge of varied CRM topics with her audiences;
- She is a troubleshooter – who helps organisations with their sticky problems.