Software Quality Assurance and Quality Control

Software Quality Assurance 

Software quality assurance (SQA) is a process that ensures that developed software meets and complies with defined or standardized quality specifications.

  • SQA helps ensure the development of high-quality software.
  • SQA practices are implemented in most types of software development, regardless of the underlying software development model being used.
  • In a broader sense, SQA incorporates and implements software testing methodologies to test software. Rather than checking for quality after completion, SQA processes test for quality in each phase of development until the software is complete.
  • With SQA, the software development process moves into the next phase only once the current/previous phase complies with the required quality standards.

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

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

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

Software Quality Control (SQC) is a set of activities for ensuring quality in software products.

  • Software Quality Control is limited to the Review/Testing phases of the Software Development Life Cycle and the goal is to ensure that the products meet specifications/requirements.
  • The process of Software Quality Control (SQC) is governed by Software Quality Assurance (SQA).
  • While SQA is oriented towards prevention, SQC is oriented towards detection.


It includes the following activities:

  • Reviews

    • Requirement Review
    • Design Review
    • Code Review
    • Deployment Plan Review
    • Test Plan Review
    • Test Cases Review
  • Testing

I recommend you to check Software Quality Assurance VS Software Quality Control

Hope this helps 🙂

354 total views, 2 views today

A Soon-to-be Computer Engineer by profession, he has profound devotion to add Data Scientist as a prefix to his name. He’s been to the nooks of the web (at least of the surface web) and planning to add some real figures in his pocket!


  • beingbishwa October 31, 2017 Reply

    Nice one… Will surely help everyone who go through it. Good job.. Keep Going 😀 😀

    • Ashwin October 31, 2017 Reply

      Hey Bishwa there !
      Nice to see you here 🙂 Your comments are appreciated.
      Thanks !
      Hope to see you soon

Leave a Reply