What is the difference between Quality Control and Quality Assurance?
How do you achieve a high quality digital product? How do you ensure it’s good enough to meet users’ needs while also being free of defects and flaws? Maybe you’ve heard of quality assurance (QA) and quality control (QC)? Read on to find out the differences between the two and discover the benefits of applying them.
Table of contents
What is quality assurance and what is quality control?
What is the difference between quality control and quality assurance? In a nutshell,
- Quality assurance describes the measures and processes put in place to ensure that a digital product is of the intended and planned quality.
- Quality control, on the other hand, is about procedures to check whether that quality is being or has been achieved.
To put it another way, QA is everything you do to ensure that the finished product meets the agreed quality standards; QC is what you do to check whether or not those standards have been met.
Let’s add some detail to our differences.
What does quality assurance mean? Quality assurance is…
- The management of quality.
- Activities that aim to prevent quality defects or problems.
- A proactive set of measures.
- Embedded throughout the software development life cycle, at all stages of product maturity.
- The whole development team is involved.
- Doing the right things.
- A fundamental part of the process that creates product deliverables.
What is quality control? Quality control is…
- The verification of quality.
- Activities that aim to identify quality defects or problems, and fix them.
- A reactive set of measures.
- Part of software/product testing.
- Primarily the responsibility of people in charge of product testing.
- Checking you have the right results.
- Verification that the product deliverables are to specification.
Quality activities – What do QA and QC involve?
Bearing in mind the differences in function and process outlined above, we can categorize quality-related activities as related to either QA or QC.
Aiming to ensure quality and prevent defects, QA can be clearly seen in activities such as,
- Documentation – Written details describing the methodologies and activities that will be used to test the product’s quality criteria, including test plans and strategies, checklists, and test cases.
- Audits – Audits and other product inspections are a critical part of quality assurances; see below for more detail.
- Team training – Whether the team has the necessary knowledge and skills to deliver the product as desired, plus the capacity to work collaboratively, can have a significant impact on quality.
- Change control – Documenting all changes to the product during the course of its development and evolution, ensuring a clear and traceable history.
Meanwhile, with a focus on checking results and emerging outcomes, QC activities and tools often include:
- Quality metrics – enabling easy checking, especially when established early in the process thus informing development.
- Validation testing – a wide-ranging term that encompasses a range of tests to establish product performance against the specified parameters; including unit testing (assessing individual pieces of code), integration testing (checking individual elements work as part of a larger setup), system testing (measuring performance as part of a whole system; including smoke testing, sanity testing and regression testing), and user acceptance testing (the involvement of actual users in confirming product performance).
It’s worth pointing out that different stages in a product’s life cycle can require different quality-related activities due to the different focus of each stage. For example, QA for an MVP is likely to consist of rapid activity giving quick, actionable feedback; whereas performance and load testing are more likely to feature when scaling products.
For more on stage-specific QA strategies, check out our article “Differences in QA approach for product life cycle phases”.
Quality – whose job is it?
Who is responsible for quality when designing and developing digital products?
While the facile answer is: everyone, it’s common for development teams to include a quality assurance specialist to take overall responsibility for coordinating the QA strategy and activities.
With experience in quality issues, the QA specialist is well-placed to advise and guide the development team. The role can include the following:
- QA strategy and planning
- Data integrity standards
- Error-handling procedures
- Quality testing procedures
- Technical documentation and change control
- Manage test cases
- Bug tracking
- Quality audits
At Boldare, we have found it effective to field a combined quality assurance and business analyst role as a team specialist. This has the benefit of tying quality-related activities closely to the desired business outcomes for the product. After all, however perfect the design, however popular with users, a product still has to provide business results.
Quality audits and inspections
Inspection is about the direct examination, testing, and measurement of the product (or part-product) with some aspect of quality in mind. Inspection processes or tools can be part of a more formal and in-depth process of quality audit, carried out either within the development team or by neutral, outside auditors.
A software quality audit often focuses on:
- Code
- Architecture
- Processes used in development
Apart from any criteria determined by the specific nature of a product, a quality audit will usually focus on best practice coding standards, logic and simplicity of structure, documentation, timeframes, and costs and ROI.
Benefits of QA & QC
Quality assurance and control are critical activities – partly because you want to create a product that fits specifications and user needs, but also because the world’s current state of volatility means that the market and its demands can change rapidly. Solid QA and QC give you better control over processes, a built-in system of checks and balances, fewer bugs or other mistakes to fix, a closer fit with user needs, and finally, just a better digital product.
All of which strengthens the case for including a quality role on the development team. The proven advantages of doing so include:
- Well-maintained and better organized product requirements – essential in order to ensure a common understanding of quality issues across the team.
- An enhanced awareness of quality from the start, resulting in fewer defects or bugs.
- A deeper understanding of what quality means in relation to the specific product due to initial exploration of the related business needs and goals – team members are asking the right questions, earlier.
- A non-technical perspective that keeps the focus on the desired impact of the product with target users, as opposed to the elegance of the code.
- Better communication on quality issues within the team, with the product owner, and with stakeholders and/or user groups.
What if you DON’T focus on quality?
Not paying due attention to quality issues not only leaves you with a less impressive product, the impact can be financially substantial. After all, the effect of even the tiniest glitch can be substantial if your product is used by a large enough group of people.
To quote one example, slow loading times on websites can cost you visitors (and therefore sales) – according to a Forbes article, a few years ago Amazon found that, “…just 100 milliseconds of extra load time cost them 1% in sales.”
Not focusing on QA or QC can result in.
- More time spent on development
- Increased development and production costs
- Increased technical debt
- Damage to brand and reputation
It’s not quality assurance vs. quality control, it’s QA and QC
The difference between quality control and quality assurance should be clear by now. Not only are quality assurance and quality control closely linked, QC is actually a part of QA – a specific subset of quality activities. QA and QC are connected and equally essential, the one is proactive, planning to avoid defects and flaws and implementing that plan; the other is reactive, checking whether or not that plan worked (and if not, prompting the appropriate remedial action). The two may differ in focus and specifics but the overall goal is the same: a high quality product that fully meets both user and business needs.
Share this article: