You might have noticed on regular basis in software business, that when people hear Quality, the they think it is Test. And by people I meant all the technical stakeholders like developers, designers, analysts as well as the management. Specially in 9.9 out of 10 mid and small scale and also many of the MNCs this myth is so widely seen as a truth, that Quality is Test(ing). People so naively compare Quality to Test, even people from English lingual background do that. I'd say they should open their dictionaries and look up the literal meaning on the word Quality.
So now for everybody anything related to Quality is a Testing headache. Right from management to the developers, the first thing they will do when they hear is they point out their finger at the tester.
According to me Quality is not really a testing headache. How? Well lets see...
For every software project there's a business/system analyst, sometimes this role is played by the manager/team leader/developer in companies that have small numbers. Nevertheless, some person analyses all the requirements of the project and put them down in black and white(well generally in digital form) and prepares documents like the BRS, FRS, SRS, etc. In short this person finalizes all the requirement, which means that this person decides the Quality for the project at hand. Once the Quality of the project is defined, the designers and developers implement that Quality with their code.
So long story short - analysts decide the Quality and Designers and Developers implement that Quality. Then how exactly is it true that Quality = Test? Quality is the responsibility of the project team as a whole. The management, analysts, designers, developers and testers collective should be held responsible for an issue/defect that slips out. This brings us to another widely misinterpreted term, which is QA = Quality Assurance. So now lets see how this to is not true...
When we abbreviate QA as Quality Assurance we couldn't be more wrong. Like explained above, Quality for a project is defined by analysts and implemented by designers and developers(That is, these people own Quality). One might think, that if that were true, then what exactly a Tester do? Well a Tester assists all the other stakeholders to achieve the defined quality, and if required improvise on it and give suggestions on how to improve on it. That means, a Testers helps to improve the productivity of the software. Testers don't own Quality, they simply see the wide picture and helps the project team look better in front of the client/end user.
To assure something means to guarantee it. How can something guarantee something which they do not own? As we have seen above, Tester doesn't own Quality, and therefore, cannot assure it. Tester can only assist on achieving quality by observing the work/work process of the project team. Therefore, QA should be refereed as Quality Assistance rather than Quality Assurance. And the project team needs to learn to understand and accept the fact that anything related to Quality is not Testing headache but their own. Unless the teams learn to accept this truth and owns up everything collectively every start up or the small/mid scale company who thinks, one day they will be like Facebook and Google, will never reach half of them.