Software Quality Assurance
Essay by review • February 16, 2011 • Essay • 1,191 Words (5 Pages) • 1,648 Views
Software Quality Assurance
ABSTRACT
High complexity, invisibility of the product and opportunity to detect the defects provided the uniqueness which will meet the challenges for the development and operation of quality assurance for software. This paper provides a brief introduction to software quality assurance and discuses about the software quality metrics and their limitations.
Keywords: SQA (software Quality Assurance), software quality metrics, process metrics, product metrics
INTRODUCTION
Definition: Software Quality Assurance is a set of activities designed to evaluate the process by which the products are developed or manufactured. Contrast with quality control. [1]
Software Quality assurance is an important aspect of product development. Unlike the other engineering disciplines, such as manufacturing and hardware software quality assurance does not have control. [2]
The main objectives of SQA are it assures acceptable levels of confidence, conformance to functional technical requirements. It assures the acceptable levels of confidence to managerial scheduling and budgets requirements. It assures the software development and control processes described in the project's Management Plan are correctly carried out and that the project's procedures and standards are followed. SQA assures that clear and achievable standards exist and then evaluates the software product to the established standards.
[3]Kurt F. Fischer identified the following eight QA functions to assure sufficient planning, reporting, and control to affect the development of software products which meet their contractual requirements.
1. Initial quality planning
2. Development of software standards
and procedures
3. Development of quality assurance
tools
4. Conduct of audits and reviews
5. Inspection and surveillance of
formal tests
6. Configuration verifications
7. Management of the discrepancy
reporting system
8. Retention of QA records
The hierarchy of SQA unit starts with the SQA unit head at the top and his planning tasks are preparing annual activity program and budget for the SQA unit, planning of the organizations software quality management system.
The management tasks include monitoring implementation of the annual SQA activities of a program appointing SQA members.
[4]Fletcher J. Buckley identifies the three major roles of an SQA professional as
The first SQA role is Information Gatherer, who looks across many projects to provide management with the information it needs to make decisions among economic, marketing, legal, quality, and scheduling conflicts.
The second role projected for SQA is that of The Policeman. In this role, SQA stands between the producer and the consumer, detecting products that do not meet quality standards and preventing them from being delivered.
The third SQA role is that of the Helper. This is based on the belief that everyone wants to do a better job, and appreciates those who help them.
To get succeed in the above three major roles of SQA personnel Information-Gatherer, Policeman, and Helper, one should follow that:
• Each of the major SQA roles has distinct contributions to make.
• Each SQA person should understand the roles played should have the positive aspects of the position.
• Every person must be perceived as contributing to the improvement of the organization.
BACKGROUND
Two alternative definitions describe quality metrics as a category of SQA tools:
1. A quantitative measure of the degree to which an item possesses a given quality attributes
2. A function whose inputs are software data and whose output is a single numerical value that can be interpreted as the degree of which the software possesses a given quality attributes. [4]
The scope of software quality metrics is expanding considerably over the few decades. Metrics as a quality assurance tool has not been applied at an adequate level in the software industry. Only a small portion of software development organizations apply software quality metrics. Numerous research works has been dedicated to this subject.
Software metric may be defined as "an objective, which provides a quantitative measure of an attribute and a measure of the software product. The number of major defects found during a test and a comparison of that figure with a threshold of “goodness" or "badness" is objective. [5]
Objectives of Software Quality Metrics:
• It facilitates the management control and planning at the managerial level.
To achieve this objective is based on calculation of metrics regarding deviations of actual quality performance from planned performance and deviations from the timetable and budget.
• It indicates the situations that require maintenance, improvement planning in the form of corrective actions or suggesting preventives throughout the organizations.
To achieve this objective it is required to gather metrics information regarding the performance of teams and units etc.
Classification of software quality metrics in a two level system:
The first level distinguishes between two categories:[6]
• Process metrics related to the software development process
• Product metrics related to software maintenance.
...
...