The issue of improving software quality in the development phase than in testing phase has always been discussed. Many times we see that a lot of defects, bugs are fixed during testing phase which are actually supposed to be fixed during development phase. This leads to a significant increase in cost and time.
Developers always think in terms of building something. Resultantly they often think only of positive system flows. They do not consider the situations in which system will not work. This results into some very small defects, which are supposed to be solved at the time of development.
Testers think exactly opposite. They just focus on how the system will not work and can be broken.
IT managers should see to it that the development teams are trained so that they start thinking more from the testers and the end user’s point of view. If developers continually think of how the system can be broken or how it will fail, its likely that a lot of bugs would be caught well before the testers start using the application.
Unit testing needs to be carried out thoroughly so that the application that is handed over to the testing team will have certain quality.