Quality assurance is a means to prevent mistakes and defects in the manufacturing process at every stage of the product life cycle, either software or hardware. The term encompasses several aspects of quality such as best practices and methodologies to ensure customer delight and regulatory compliance.
Quality assurance is defined by ISO 9000 as a “part of quality management focused on providing confidence that quality requirements will be fulfilled.” With QA, manufacturers can ensure that customers receive a defect-free product by preventing mistakes at the time of manufacturing. Businesses can improve compliance to standards by monitoring processes and use feedback to improve efficiency and effectiveness
The Quality Assurance Process includes identifying, evaluating, and monitoring risks and quality for the projects assuring that project team is provided with superior quality deliverables and work products. The review process consists of a structured review of projects’ methods, processes, deliverables, and efforts of multiple project teams associated with meeting the objectives of the project
Software quality assurance is a planned and systematic plan of all actions necessary to provide adequate confidence that an item or product conforms to establish technical requirements.
QA Encompasses
✔ A quality management approach
✔ Effective Software engineering technology (methods and tools)
✔ Formal technical reviews that are tested throughout the software process
✔ A multitier testing strategy
✔ Control of software documentation and the changes made to it.
✔ A procedure to ensure compliances with software development standards
✔ Measuring and reporting mechanisms.
QA Activities
Software quality assurance is composed of a variety of functions
1. Prepares an QA plan for a project: The program is developed during project planning and is reviewed by all stakeholders. The plan governs quality assurance activities performed by the software engineering team and the QA group. The plan identifies calculation to be performed, audits and reviews to be performed, standards that apply to the project, techniques for error reporting and tracking, documents to be produced by the QA team, and amount of feedback provided to the software project team.
2. Participates in development of project's software process description: The software team selects a process for the work to be performed. The QA group reviews the process description for compliance with organizational policy, internal software standards, externally imposed standards (ISO-9001), and other parts of the software project plan.
3. Reviews software engineering activities to verify compliance with defined software process: The QA group identifies, reports, and tracks deviations from the process and verifies that corrections have been made.
4. Audits designated software work products to verify compliance with those defined as a part of the software process: The QA group reviews selected work products, identifies, documents and tracks deviations, verify that corrections have been made, and periodically reports the results of its work to the project manager.
5. Ensures that deviations in software work and work products are documented and handled according to a documented procedure: Deviations may be encountered in the project method, process description, applicable standards, or technical work products.
6. Records any noncompliance and reports to management: Non-compliance items are tracked until they are resolved.