Software Testing: QA or QC

In every other field the testing of products is called Quality Control (QC) but in IT (software especially, it is called QA (Quality Assurance).    This is a historic anomaly.

In the early years of computing, computer time was so precious that programmers had to submit their code for a review to prove they had followed all the coding standards and local rules before it would be typed in to the system, compiled and (hopefully) run. This process check was quality assurance (QA).  Often those doing the checking were not skilled programmers so could not actually test the code (QC) to see if it would work.

Eventually, programmers got used to typing their own code into PCs and the QA team became mainly system testers.

Checklist Quality is Bad Value

Kaoru Ishikawa lead the thought that said everyone was responsible for quality.  Ray Kroc founded McDonalds success on a work system of very tightly defined tasks performed by people who needed minimal training to do that job as well as their company’s expert.  Richard M Hodgetts defined check sheets (checklists) as a way to “record data on a form that readily allows interpretation of results from the form itself”.

These developments are helpful to quality: make everyone care about quality, define the job and train people, give them tools to monitor and interpret progress made on their work.  That way is the road to great management and excellent performance.

So why does it go bad?  Read more of this post