Skip to main content

Quality Assurance

QA

Pronunciation
KWOL-uh-tee uh-SHOOR-unss
Updated 2 min read

Share this page

Send the link, quote the definition with a link back, or show it as a card on your own site.

https://softwaredictionary.org/terms/quality-assurance

In short

Quality assurance (QA) is the set of practices that ensure software meets its requirements and works reliably, aiming to prevent defects, not just find them.

What is quality assurance in software?

Testing checks whether a product works; quality assurance asks how the team builds products so that they work. QA covers the whole process: writing testable requirements, reviewing designs and code, agreeing on a definition of done, automating tests, checking releases and learning from bugs that reach users. In many companies QA is also the name of a role, the QA engineer, who plans and runs tests and champions quality.

A useful distinction is between assurance and control. Quality control finds defects in a finished piece of work, for example by testing a release candidate. Quality assurance improves the process that produces it, so fewer defects are created in the first place. Both are needed, and modern teams blend them into their everyday work instead of treating them as a final phase.

This blending is often called shifting left: involving testers early, writing automated tests alongside the code, running them on every commit in CI, and adding monitoring and feature flags so problems in production are noticed and contained quickly. Exploratory testing by people still matters, because humans spot confusing behavior that scripted checks miss.

A common misconception is that quality is the QA team's job. When developers hand code over to a separate team to be checked, bugs are found late and fixing them is expensive. Quality is shared: developers own tests for their code, product managers own clear requirements, and QA specialists bring testing expertise and strategy to the whole team.

Key takeaways

  • QA is the set of practices that keeps software meeting its requirements.
  • It aims to prevent defects, not only to find them.
  • Quality control checks the product; quality assurance improves the process.
  • Shift left: test early, automate in CI and monitor production.
  • Quality is shared by the whole team, not just a QA department.

Readers ask

What is the difference between QA and testing?

Testing is one activity: checking whether software behaves as expected. QA is broader and covers the whole process that leads to quality, including requirements, reviews, standards, automation and continuous improvement.

What does a QA engineer do?

Plans test strategies, writes and runs manual and automated tests, reports and tracks bugs, reviews requirements for testability and helps the team build quality into the development process.

What is the difference between QA and QC?

Quality control (QC) inspects the output to find defects. Quality assurance (QA) works on the process to stop defects from being made. QC is about the product; QA is about the way it is built.

See also

Spotted a mistake or something missing on this page?Suggest an edit

Read a random page
Open today's review
Switch to the dark theme
Read this page in Türkçe

More

Settings