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.