Quality Assurance: The function of Software Quality that assures the Standards, Processes, and Procedures are appropriate for the project and are correctly implemented. QA is the process of managing for quality and evaluated against Correctness, Flexibility, Efficiency, Portability, Reusability and Maintainability
Quality Assurance evaluates the processes to produce the products. Identifies weaknesses in processes and improves them.
Quality Assurance improves the process that is applied to multiple products that will ever be produced by a process.
Quality Assurance personnel should not perform quality control unless doing it to validate quality control is working.
Quality Assurance deals with how to prevent bugs from occurring in a product being developed
Quality Assurance main responsibility is to create and implement methods and standards to improve development process.
Quality Assurance is associated with activities like measuring the quality of process used to develop a Product, Process Improvement and Defect Prevention. It consists of Auditing and Reporting procedures related to development and testing.
Example of Quality Assurance (QA): QA review would focus on the process element of a project e.g. all requirements from customer are defined at proper level and with detail.
Quality Control: QC is a set of activities for ensuring quality in products. The goal of QC is to find defects after a product is developed and before it’s released. QC is used to verify the quality of the output.
Quality Control activity, which verifies if the product meets pre-defined standards or customer requirements.
Quality Control implements the process established by QA.
Quality Control is the responsibility of the Software testing team
Quality Control is evaluating the software product, find the defects & suggest improvements
Quality Control improves the development of a specific product or application
Quality Control personnel may perform quality assurance tasks if and when required
Example of Quality Control: QC activities focus on finding defects in specific deliverables. e.g., Are the defined requirements the right requirements? Software Testing is one example of a QC activity.
Quality Assurance and Quality Control activities are generally required for successful software development.