Very often I hear people say "Quality Assurance" while talking about "Testing" and vise versa. According to my understanding these two terms mean different things. Could anyone explain the difference? Or they really mean the same?
I think this question better suited for programmers– Sandeep Kumar MFeb 25, 2011 at 8:45
1I also thought so, but then decided to ask here since Quality Management is part of Project Management. And Quality Assurance is a process in Quality Management discipline.– yegor256Feb 25, 2011 at 9:21
ok, lets see peoples response.– Sandeep Kumar MFeb 25, 2011 at 12:35
1Testing is a subset of Software Quality Assurance. SQA is combined effort of PM, SQA Team and Client; in other words all combined effort of all stakeholder. You will get detailed information if you Google "Software Quality Assurance" instead of just "Quality Assurance". Check out wiki articles too..– Sandeep Kumar MFeb 25, 2011 at 12:39
These two terms are often used interchangeably but this is wrong understanding of their meaning.
Software Quality Assurance is a set of processes/practices which aim to assure high quality of the product. Testing is only one of these processes. QA consists, but is not limited to, design, architecture, coding standards, code reviews, testing, change management, configuration management, release management, audits, etc.
Testing sometimes is the only area where quality assurance is implemented consciously, and this is probably the source of wrong understanding of the terms. If you wanted to use other term for testing it would be quality verification, not quality assurance.
In short: quality assurance is implemented all over the production process while testing is only one of stages of it.
Do you have any resources you can include to back up your answer? Feb 26, 2011 at 6:16
I'd start with wikipedia definitions for QA: en.wikipedia.org/wiki/Software_quality_assurance and testing: en.wikipedia.org/wiki/… Also you can read Tom Mochal's article: builderau.com.au/strategy/projectmanagement/soa/… Feb 26, 2011 at 13:11
I edited your answer to add these links to it, but I don't have edit permissions. Can you review my edit and accept it? Thank you. Feb 26, 2011 at 18:45
@jmort253: Many years ago I was asking myself the very same question. I can't provide exact sources, but I found my answer from reading MIT and SEI literature where they had articles which stated exactly what Pawel is stating. I'm sure if you Google it, you'll find it.– JeachNov 21, 2011 at 21:21
'Testing' is an activity to assure the quality of your end result. Hence it is a subset of Quality Assurance.
So 'Quality Assurance' are all activities you planned to to to make sure you deliver up to the quality standards you decided upon at the start of your project (= Quality Planning). Another activity could be peer code reviews for instance.
Quality Control finally = the act of monitoring the results off all those activities (like testing eg test coverage, # tests passed, # bugs, and initiating corrective actions when necessary (like bugfixing)
Hope this is clear.
Testing is something that is done to check the level of quality. It CAN be thought of as quality assurance or quality checking.
But the process of assuring that a deliverable meets a certain quality standard is something that needs to be built-in directly into the project itself. You can't make something quality at the end, you can just catch the defects and try to remediate.
Quality is planned (like meeting requirements).
Your QA/Testing statement is in direct conflict with @pawelbrodzinski's answer. Do you have resources for which you can back up your statement that Testing can be thought of as Quality Assurance? According to Wikipedia, Testing is but one specific part of Quality Assurance, but they're allegedly not the same. Thank you :) Also, you're right about quality having to be part of the process. If you wait until the end to focus on quality, you end up rebuilding the product, and that is never fun. Feb 26, 2011 at 18:48
Quality Control (aka testing) is checking the product after it comes off the production line.
Quality Assurance means making sure that the processes and inputs to the production line are correct so that only good products come off the line.
The slogan "you can't test quality in" can be demonstrated with the following manufacturing examples:
On assembly line A, every product coming off the line is 100% defective. If QC is doing their job correctly, every item off the line fails testing and nothing gets shipped. When QC screws up, they'll let defective products get shipped. QA would not sit at the end of the line and test everything, QA would shut the line down (since the line is producing 100% defective items) to find out what's wrong and fix it.
On assembly line B, every product coming off the line is 100% good. If QC is doing their job correctly, every product gets shipped. When QC messes up, they fail a good product. With everything working correctly, QA has nothing to do except to continue to monitor the situation.