Quality Control and Quality Assurance

Very few individuals can differentiate between quality control and quality assurance. Most quality assurance groups, in fact, practice quality control. This section differentiates between the two, and describes how to recognize a control practice from an assurance practice.

Quality means meeting requirements and meeting customer needs, which means a defect-free product from both the producer’s and the customer’s viewpoint. Both quality control and quality assurance are used to make quality happen. Of the two, quality assurance is the more important.
Quality is an attribute of a product. A product is something produced, such as a requirement document, test data, source code, load module or terminal screen. Another type of product is a service that is performed, such as meetings with customers, help desk activities and training sessions. Services are a form of products, and therefore, also contain attributes. For example, an agenda might be a quality attribute of a meeting.
A process is the set of activities that is performed to produce a product. Quality is achieved through processes. Processes have the advantage of being able to replicate a product time and time again. Even in data processing, the process is able to replicate similar products with the same quality characteristics.
Quality Assurance (QA) is associated with a process. Once processes are consistent, they can "assure" that the same level of quality will be incorporated into each product produced by that process.
Quality Control
Quality Control (QC) is defined as the processes and methods used to compare product quality to requirements and applicable standards, and the action taken when a nonconformance is detected.  QC uses reviews and testing to focus on the detection and correction of defects before shipment of products.
Quality Control should be the responsibility of the organizational unit producing the product and should be integrated into the work activities. Ideally the same group that builds the product performs the control function; however, some organizations establish a separate group or department to check the product.
Impediments to QC include the following:
  • Quality Control is often viewed as a police action
  • IT is often considered an art
  • Unclear or ineffective standards and processes
  • Lack of process training

Quality Assurance
Quality Assurance (QA) is the set of activities (including facilitation, training, measurement and analysis) needed to provide adequate confidence that processes are established and continuously improved in order to produce products or services that conform to requirements and are fit for use.
QA is a staff function that prevents problems by heading them off, and by advising restraint and redirection at the proper time. It is also a catalytic function that should promote quality concepts, and encourage quality attitudes and discipline on the part of management and workers. Successful QA managers know how to make people quality conscious and to make them recognize the personal and organizational benefits of quality.
The major impediments to QA come from management, which is typically results oriented, and sees little need for a function that emphasizes managing and controlling processes. Thus, many of the impediments to QA are associated with processes, and include the following:
  • Management does not insist on compliance to processes
  • Workers are not convinced of the value of processes
  • Processes become obsolete
  • Processes are difficult to use
  • Workers lack training in processes
  • Processes are not measurable
  • Measurement can threaten employees
  • Processes do not focus on critical aspects of products
Differentiating Between Quality Control and Quality Assurance
QC is an activity that verifies whether or not the product produced meets standards. QA is an activity that establishes and evaluates the processes that produce the products. If there is no process, there is no role for QA. Assurance would determine the need for, and acquire or help install system development methodologies, estimation processes, system maintenance processes, and so forth. Once installed, QA would measure them to find weaknesses in the process and then correct those weaknesses to continually improve the processes.
It is possible to have quality control without quality assurance. For example, there might be a standard that “ALTER GO TO” statements in COBOL should not be used. Regardless of whether a program is produced using a system development process or done by an individual without a process, it could still be checked to determine whether or not “ALTER GO TOs” are in the program.

The following statements help differentiate QC from QA:
  • QC relates to a specific product or service.
  • QC verifies whether particular attributes exist, or do not exist, in a specific product or service.
  • QC identifies defects for the primary purpose of correcting defects.
  • QC is the responsibility of the worker.
  • QA helps establish processes.
  • QA sets up measurement programs to evaluate processes.
  • QA identifies weaknesses in processes and improves them.
  • QA is a management responsibility, frequently performed by a staff function.
  • QA evaluates whether or not quality control is working for the primary purpose of determining whether or not there is a weakness in the process.
  • QA is concerned with all of the products that will ever be produced by a process.
  • QA is sometimes called quality control over quality control because it evaluates whether quality control is working.
  • QA personnel should not ever perform quality control unless doing it to validate quality control is working.