Software Quality Assurance

    SOFTWARE QUALITY ASSURANCE (SQA) is a set of activities for ensuring quality in software engineering processes that ultimately results, or at least gives confidence, in the quality of software products.

    ISTQB Definition

    • quality assurance: Part of quality management focused on providing confidence that quality requirements will be fulfilled.

    SQA Activities

    SQA includes the following activities:

    • Process definition
    • Process training
    • Process implementation
    • Process audit

    SQA Processes

    SQA includes the following processes:

    • Project Management
    • Project Estimation
    • Configuration Management
    • Requirements Management
    • Software Design
    • Software Development [Refer to SDLC]
    • Software Testing [Refer to STLC]
    • Software Deployment
    • Software Maintenance
    • etc.

    Elaboration

    Software Quality Assurance encompasses the entire software development life cycle and the goal is to ensure that the development and maintenance processes are continuously improved to produce products that meet specifications. Note that the scope of Quality is NOT limited to just Software Testing. For example, how well the requirements are stated and managed matters a lot!

    Once the processes have been defined and implemented, Quality Assurance has the responsibility of identifying weaknesses in the processes and correcting those weaknesses to continually improve the processes.
    Capability Maturity Model Integration (CMMI) and ISO 9000 are some quality management systems that are widely used.

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

    Read Differences between Software Quality Assurance and Software Quality Control.

    SQA is generally shortened to just QA.

    Last Updated on September 6, 2020 by STF