Goals and Measures of Software Quality Assurance
Software Quality simply means to measure how well software is designed i.e. the quality of design, and how well software conforms to that design i.e. quality of conformance. Software quality describes degree at which component of software meets specified requirement and user or customers’ needs and expectations.
Software Quality Assurance (SQA) is a planned and systematic pattern of activities that are necessary to provide a high degree of confidence regarding quality of a product. It actually provides or gives a quality assessment of quality control activities and helps in determining validity of data or procedures for determining quality. It generally monitors software processes and methods that are used in a project to ensure or assure and maintain quality of software.
Goals of Software Quality Assurance :
- Quality assurance consists of a set of reporting and auditing functions.
- These functions are useful for assessing and controlling effectiveness and completeness of quality control activities.
- It ensures management of data which is important for product quality.
- It also ensures that software which is developed, does it meet and compiles with standard quality assurance.
- It ensures that end result or product meets and satisfies user and business requirements.
- It simply finds or identify defects or bugs, and reduces effect of these defects.
Measures of Software Quality Assurance :
There are various measures of software quality. These are given below:
- Reliability –
It includes aspects such as availability, accuracy, and recoverability of system to continue functioning under specific use over a given period of time. For example, recoverability of system from shut-down failure is a reliability measure.
- Performance –
It means to measure throughput of system using system response time, recovery time, and start up time. It is a type of testing done to measure performance of system under a heavy workload in terms of responsiveness and stability.
- Functionality –
It represents that system is satisfying main functional requirements. It simply refers to required and specified capabilities of a system.
- Supportability –
There are a number of other requirements or attributes that software system must satisfy. These include- testability, adaptability, maintainability, scalability, and so on. These requirements generally enhance capability to support software.
- Usability –
It is capability or degree to which a software system is easy to understand and used by its specified users or customers to achieve specified goals with effectiveness, efficiency, and satisfaction. It includes aesthetics, consistency, documentation, and responsiveness.