Quality assurance (QA) is a way of preventing mistakes and defects in manufactured products and avoiding problems when delivering solutions or services to customers; which ISO 9000 defines as “part of quality management focused on providing confidence that quality requirements will be fulfilled”.
It is a corrective process. It is a preventive process. It is a subset of the Software Test Life Cycle (STLC). QC can be considered as the subset of Quality Assurance. Testing is the subset of Quality Control. Software Testing is the process of identifying the correctness and quality of a software program. The purpose is to check whether the software satisfies the specific requirements, needs, and expectations of the customer.