lot of issues in the performance aspect of the application). The design reviews also should be focused around the customization rather than on the core application. The extent of unit testing that is required also will not be the same. More unit testing should be carried out for the customized code than for the core application code. The changes made to the standard application to cater for the business requirements should be the main focus of system and integration testing.
All the business requirements as interpreted by the users should be verified in the user acceptance testing phase.
Quality Ownership from the Vendors
In most cases, the contract between the vendor and the customer is legally binding in terms of delivery schedules. It also ties the delivery dates to the payment schedules. The contract may or may not have clauses about the quality of the software delivered. If the quality of the software is highlighted as an important clause in the contract, then it is relatively easier to get the vendors to test their products before delivering them. Signing off on testing by the vendor's project manager before releases, records of test results, and a copy of the vendor's test beds can help boost their quality and our confidence in the delivered software.
It is also beneficial to create the test plans and test scripts in association with the vendor's implementation team. This lets the vendors know the test approach and the main focus. At times vendors may execute our test scripts before delivering the software so that we receive good quality software. From our test approach, they can guide us in deciding what the test scope should be. Since the vendors have knowledge and expertise in their applications, if vetted out correctly, their input can be very valuable.
The point I have tried to stress is to not leave things out of testing, but reprioritize on the basis of what is most important in an implementation in terms of quality. These types of projects have been around for a long time, but the quality issues are not addressed that often. The idea is to get equal or greater value from the software application than the amount invested by our organization. Therefore, it is best to work closely with the vendors to achieve quality and successful implementation.