Friday, August 3, 2007

SOFTWARE QUALITY ASSURANCE


1. Definition:


SQA is the planned and systematic set of activities that ensure that software process and products conform to requirements, standards, and procedures.


"Processes" include all activities involved in designing, coding, testing and maintaining; "products" include software, associated data, documentation, and all supporting and reporting paperwork.


The role of SQA is to give management the assurance that the officially established process is actually being implemented. It ensures that:
An appropriate development methodology is in place.
The projects use standards and procedures in their work.
Reviews and audits are conducted.
Documentation is produced to support maintenance and enhancement.
Software Configuration Management is set up to control change.
Testing is performed and passed.
Any deficiencies and deviations are identified and brought to management's attention.


2. Goals of SQA:
he software development is a complex process full risks. There are technical risks such as software will not perform as intended or be too hard to operate, modify, and/or maintain; there are programmatic risks such as the project will overrun cost or schedule.


The goals of SQA is to reduce these risks by:


Appropriately monitoring the software and the development process.
Ensuring full compliance with standards and procedures for software and process.
Ensuring that inadequacies in product, process, or standards are brought to management's attention so that they can be fixed.
SQA is not responsible for producing quality products or for making quality plans. They are responsible for auditing the quality actions and for alerting management to any deviations.
3 Responsibilities of SQA:


To achieve its goals, SQA is responsible for:
Review all development and quality plans for completeness.
Participate as inspection moderators in design and code inspections.
Review all test plans for adherence to standards.
Review samples of all test results to determine adherence to plans.
Periodically audit SCM performance to determine adherence to standards.
Participate in all project phase reviews and write down any nonconformance.