Software Quality Assurance (SQA) consists of set of activities that monitors the software engineering processes and methods used to ensure quality.
Software Quality Assurance (SQA) encompasses:
- A quality management approach.
- Effective software engineering technology (methods and tools).
- Some formal technical reviews that are applied throughout the software process.
- A multitiered testing strategy.
- Controlling software documentation and the changes made to it.
- Procedure to ensure compliance with software development standards (when applicable).
- Measurement and reporting mechanisms.
Software Quality: Software quality is defined in different ways but here it means the conformance to explicitly stated functional and performance requirements, explicitly documented development standards, and implicit characteristics that are expected of all professionally developed software.
Following are the quality management system models under which the software system is created is normally based:
CMMI Six Sigma ISO 9000
Note: There may be many other models for quality management but the ones mentioned above are the most popular.
Software Quality Assurance (SQA) activities:
Software Quality Assurance is composed of a variety of tasks associated with two different fields:
- (i) The software engineers who do technical work.
- (ii) SQA group that has responsibility for quality assurance planning, oversight, record keeping, analysis and reporting.
Basically software engineers address quality (and perform quality assurance and quality control activities) by applying solid technical methods and measures, conducting formal technical reviews, and performing well-planned software testing.
- Prepares an SQA plan for a project.
This type of plan is developed during project planning and is reviewed by all interested parties. The quality assurance activities performed by the software engineering team and the SQA group are governed by the plan. The plan identifies:
- evaluations to be performed
- audits and reviews to be performed
- standards that are applicable to the project
- procedures for error reporting and tracking
- all the documents to be produced by the SQA group
- total amount of feedback provided to the software project team
- Every participate in the development of the project’s software process description.
Software team has to select a process for the work to be performed. Process description is reviewed by SQA group for conformance with organizational policy, internal software standards, externally imposed standards and other parts of the software project plan.
- Software engineering activities are reviewed to verify compliance with the defined software process.
The work of SQA group is to identify documents and to track deviations from the process and to verify that corrections have been made.
- Financial inspection designated software work products to verify conformance with those defined as part of the software process.
The SQA group reviews selected work products; identifies, documents, and tracks deviations; verifies that corrections have been made; and periodically reports the results of its work to the project manager.
- Ensures that deviations in products are documented and handled according to a documented procedure.
Deviations in software work and work products may be faced in the project plan, process description, applicable standards or technical work products.
- Records reports to senior management and noncompliance.
Noncompliance items are tracked until they are resolved.
- Software Engineering | Project size estimation techniques
- Types of Software Testing
- Software Testing | Basics
- Software Engineering | Architectural Design
- Software Engineering | Halstead’s Software Metrics
- Beta Testing | Software Testing
- Software Engineering | Debugging Approaches
- Pairwise Software Testing
- Software Engineering | COCOMO Model
- Software Engineering | Classification of Software Requirements
- Software Engineering | Classical Waterfall Model
- Software Engineering | Iterative Waterfall Model
- Software Engineering | Spiral Model
- Software Engineering | Requirements Engineering Process
- Software Engineering | Requirements Elicitation
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.