Software Quality Assurance

Software Quality Control
Definition of Test

Software Quality Assurance (SQA) is a set of activities for ensuring quality in software engineering processes (that ultimately result in quality in software products).

It includes the following activities:

  • Process definition and implementation
  • Auditing
  • Training

Processes could be:

  • Software Development Methodology
  • Project Management
  • Configuration Management
  • Requirements Development/Management
  • Estimation
  • Software Design
  • Testing
  • etc
Once the processes have been defined and implemented, Quality Assurance has the following responsibilities:
  • identify weaknesses in the processes
  • correct those weaknesses to continually improve the process

The quality management system under which the software system is created is normally based on one or more of the following models/standards:

  • CMMI
  • Six Sigma
  • ISO 9000

Note: There are many other models/standards for quality management but the ones mentioned above are the most popular.

Software Quality Assurance encompasses the entire software development life cycle and the goal is to ensure that the development and/or maintenance processes are continuously improved to produce products that meet specifications/requirements.

The process of Software Quality Control (SQC) is also governed by Software Quality Assurance (SQA).

SQA is generally shortened to just QA.


Software Quality Control
Definition of Test