What do you mean by Quality for a software? Enlist and explain SQA activities in brief.
Quality for a software
- Software quality is the degree of conformance to explicit or implicit requirements and expectations.
- Software Quality Assurance (SQA) is a set of activities for ensuring quality in software engineering processes. It ensures that developed software meets and complies with the defined or standardized quality specifications.
- SQA is an ongoing process within the Software Development Life Cycle (SDLC) that routinely checks the developed software to ensure it meets the desired quality measures.
SQA activities
- Prepare an SQA plan for a project
- The plan is developed as part of project planning and is reviewed by all stakeholders.
- Quality assurance actions 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 conducted, standards that are applicable to the project, procedures for error reporting and tracking, work products that are produced by the SQA group, and feedback that will be provided to the software team.
- Participate in the development of the project’s software process description
- The software team selects a process for the work to be performed.
- The SQA group reviews the process description for compliance with organizational policy, internal software standards, externally imposed standards, and other parts of the software project plan.
- Review software engineering activities to verify compliance with the defined software process.
- The SQA group identifies, documents, and tracks deviations from the process and verifies that corrections have been made.
- Audit designated software work products to verify compliance 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.
- Ensure that deviations in software work and work products are documented and handled according to a documented procedure.
- Deviations may be encountered in the project plan, process description, applicable standards, or software engineering work products.
- Records any noncompliance and reports to senior management
- Noncompliance items are tracked until they are resolved.