User acceptance testing is an integral part of any software development life cycle and it provides the customer the opportunity to check out their new system in its entirety and ensure that it meets their expectations and requirements. In this way, the customer becomes part of a larger team of testers each with their own part to play to bring to life the CRM system.
In an ideal world the system the customer receives would have been tested thoroughly (unit, functional, integration, regression among others) and as such should fly through their UAT process. However, it appears that this “ideal” is often the exception not the rule! This is disappointing, planning and preparing for UAT is necessary to better our chances of successfully satisfying our customers.
Furthermore, it would be incorrect to assume the customer knows and understands the UAT process and how to go about it in a productive way. Assisting with User Script templates and defining bugs is an important part of the service the project manager and analysts should provide throughout the project.
A project we worked on had an upgrade to CRM 2011 and once that phase was complete, it was deployed into a UAT environment. Following that further system enhancements were developed and once complete the whole new CRM 2011 system went through UAT in its entirety. While traditionally UAT occurs right before the system Go Live; this can mean that there is not a lot of contingency to fix bugs without potentially affecting the deadline. If the system is released in phases then UAT can occur in junctures which would allow time for corrections and feedback on the system bit by bit.
UAT has benefits for all – the customer is provided with the ability to validate their product before sign off, and if we have done our job efficiently then we can guarantee that the resources we have put will bring about significant return on investment by ensuring we provide ‘ideally” a bug free solution.