Typically the vast scope of quality can be divided into three major streams – Quality Control (QC), Quality Assurance (QA) and Compliance. All three streams are critical for any organization engaged in software development activities – be it as a vendor or for internal use. In any case – an internal development team of an organization also more or less is like a vendor which has to ensure smooth delivery and functioning of the products they develop and deploy within their organization.
Scope of Quality Control (QC) is limited to product’s handling, testing, reliability, stability, bug finding, maintaining testing reports and ensuring compliance of documents required for the purpose of audits. QC is responsible for inspection of the product in all aspects from user and business perspective. Code testing and testing of product for the purpose of finding bugs, reporting, maintaining data and its history, getting bugs fixed, retesting, and ensuring finally that the product goes for release with no bugs or leakages. Test cases, test specifications and testing are very important. Retesting of product post fixing of bugs by development team is as critical and needs to be as exhaustive as first time testing of the product.
Scope of Quality Assurance (QA) is to ensure keep evolving best practices, ensure its compliance and adherence with continuous effort to uplift quality standards of the organization and teams by means of training, documentation, audits and change control mechanism. QA is required to be focused more towards compliance and adherence of processes in place. A re-assessment of processes in place is required to be done from time to time. External certification of global standard and regular audits by them always helps in this respect.