Blog to understand automation concepts in QTP, Selenium Webdriver and Manual Testing concepts

Understanding Quality Assurance and Quality Control

Whenever a product is delivered to the client, client expects the quality of the end product to be high. To assure high quality of end products, there must be stress on quality. Quality has different meaning for different users. For developer of a product, it means quality of product meets the requirements mentioned in the specifications whereas for end user, it means the product is fit for use and works as expected. A quality Software should possess desired features,should be fit for use and usable at the desired cost
To ensure quality, there are quality Assurance and quality control groups in the organization. In this article, we will discuss the role and difference between quality assurance and quality control.

Quality Assurance

Quality assurance is a planned and systematic set of activities necessary to provide adequate confidence that products and services will conform to specified requirements and meet user needs. The purpose of quality Assurance is to ensure quality policies are defined. The project Quality Assurance must ensure process are implemented for:

  •      System development methodologies
  •      Estimation processes
  •      System maintenance processes
  •      Requirements definition processes
  •      Testing processes and standards

Quality assurance is a continuous improvement activity in processes uncovering weakness in the process and strengthening the process followed. Normally the quality assurance activities are defined at organization level and are uniformly followed across the project. There are regular audits by an independent QA audit team within organization which audits across different project to ensure Quality assurance activities are followed across the organization.

Quality Control

Quality control is the process in which developed product is compared with requirement at different phases and discrepancy is logged as defects. The process of quality control begins with the development phase. This includes Static testing, and dynamic testing.


Static testing includes reviews and analysis of the code using tools. Reviews include manual examination of the code as well as documentation. Reviews are important to identify gaps early in the development process. Defects detected during reviews early in the life cycle are often much cheaper to remove than those detected while running tests Reviews can vary from informal reviews to formal reviews. Informal reviews, Walkthrough, Technical review, and inspection are all examples of review with varying degree of documentation and formal approach. Static analysis also includes verifying the code effectiveness through code analysis tools.

Once the development of the requirement is completed, the product is passed on to testing team for complete testing. The purpose of testing is to uncover as many defects in the system as possible. The focus of testing is look at the product from different views. A system tester or functional tester will verify the system/functionality is working as per functional requirement. Performance tester will need to verify the performance of system under stress and load conditions and so on. How much testing and what testing is required is normally defined in the scope of testing. There are various test management tools like Quality center that helps to manage and map various test artifacts and defects with test cases.

Quality Assurance and Quality Control activities are required to ensure quality deliverables to client and should be followed religiously to ensure high quality to the customer


No comments:

Post a Comment