Quality assurance (QA) are actions taken to design and build a safe and effective product by introducing quality controls into the product life cycle.
Quality control (QC) are test procedures used to verify that a product is safe and effective after development is done. Both QA and QC are necessary.
1. Proactive (QA) vs. Reactive (QC)
Effective quality assurance is proactive. It aims to prevent defects before they occur through process design. QC is reactive and exists to identify defects after they have happened.
QA involves the design of processes. QC involves the testing of products to ensure they meet standards. If QC testing uncovers quality issues, it should result in reactive steps to prevent a product from being released.
2. Process (QA) vs. Product (QC)
QA is process-oriented, and it focuses on preventing quality issues. QC is product-oriented and focused on identifying quality issues in developed products. Another way to understand this distinction is through actions vs. results. QA involves the actions which create the product, while QC is focused on the resulting product.
QA Processes:
- Documentation (Test Strategy, Test Plan, etc.)
- Investigation procedures (Audits, Reports)
QC Procedures:
- Verification testing
- Functional testing
- Integration testing
- Non-Functional testing
3. System (QA) vs. Methods/Services (QC)
Quality assurance control systems are the methods and procedures which are used to safeguard quality standards. Quality control systems measure parts, including the outputs of the system.
QC efforts may also be focused on parts used to create the final product, such as methods or functions. The QA system for quality management may dictate various activities to make sure inputs are consistently safe and effective, such as auditing external dependencies.
4. Validation (QA) vs. Verification (QC)
The result of QA activities is a roadmap for creating high-quality products (for example it involves defining standards for product as a whole).
QC involves verification of products post-development and before release.
5. Entire Team (QA) vs. Dedicated QA (QC)
Quality assurance activities involve the entire team. Every member of a team is responsible for QA activities.
QC is generally the responsibility of certain members within the team whose duties include following requirements for product testing.