Many people think Quality assurance and Quality control are the same. also, they often use the phrase QA to refer to testing, but this isn’t true. They are related and tightly linked, and it’s very confusing to differentiate between QA, QC and testing and to identify each activity of them.
Moreover, people in this domain sometime wonder about their job title:” am I a software tester, QA engineer or QC engineer ?”
In this article, we will define each term and the difference between them, and by the end of it, you will be able to respond to this question.
Before defining these terms, let’s agree on the definition of quality. According to the wiki, “it’s defined as being suitable for the intended purpose while satisfying customer expectations”.
QA, QC and testing are tied under a larger concept called quality management. “Quality management includes all activities that direct and control an organization with regard to quality. Among other activities, quality management includes both quality assurance and quality control” ISTQB FL
Quality assurance encloses all the activities within your strategy to ensure that the quality requirements you planned will be fulfilled as the product is made. It takes place in every software development stage, from the creation of requirements specifications to the release of the product. Quality Assurance is the process-oriented method and focuses on defect prevention.
Quality control is the inspection phase of quality assurance. In the software development process, QC generally comes at the last stage. It starts once a product is already built. It’s a series of test procedures used to verify that a product is safe and effective after mass production. it’s a product-oriented method which ensures that the end result is the expected result or that the final product works expectedly.
Testing is a subset of QC. It’s the activity of detecting and solving technical issues in the software. it is the process of examining the software for possible flaws. The basic idea involves executing the program or software and observing the behaviour or outcome. It can provide a level of confidence about the product’s usability, performance, security, and compatibility.
|Quality assurance||Quality control||Testing|
|Subset of SDLC||Subset of QA||Subset of QC|
|A process-oriented method||A product-oriented method||A product-oriented method|
|Project team||Testing team||Testing team|
|Throughout the process||At the testing stage||At the testing stage|
|Preventive process||Verification proccess||Detective process|