Often times, customer receives the application from the offshore provider which looks okay on the surface but is full of defects. What happens is the offshore team in order to meet the dates, skips the most important phase of the software project life cycle – Testing.
To ensure the excellent quality of application, the provider must do the testing at the various stages of the software project. For instance, during the coding phase, the developers must write the Unit Test cases for their module/form, and test the program thorougly. Once the coding is complete, QA group (assuming your provider has one) should execute the System Test Cases (written after the requirements are finalized) and make sure that the system performs as per the customer’s requirements.
Another way to improve the quality of the software projects is to do the Inspections of the work products.
Each hour spent on quality assurance activities such as design reviews saves from 3 to 10 hours in downstream costs. A requirement defect that is left undetected until construction or maintenance will cost 50 to 200 times as much to fix as it would have cost to fix at requirements time.
Inspections are detailed technical peer reviews of software designs or implementations. The customers should ask their offshore provider to conduct inspections at every stage of the development or the maintenance process. Because of their ability to detect and correct defects in upstream work products, inspections help us control cost and schedule of the project.