Software Quality Assurance
1161 words (3.3 double-spaced pages)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Software Quality Assurance
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
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. 
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. 
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.
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
3. Development of quality assurance
4. Conduct of audits and reviews
5. Inspection and surveillance of
6. Configuration verifications
7. Management of the discrepancy
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.
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.
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. 
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. 
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:
• Process metrics related to the software development process
• Product metrics related to software maintenance.
Each first level category is broken down into one of three sub categories
• Software process quality metrics
• Software process timetable metrics
• Software process timetable metrics
• Software process productivity metrics
The software product metrics are classified into four HD and corrective maintenance sub categories
• HD quality metrics
• HD productivity and effectiveness metrics
• Software corrective maintenance quality metrics
• Software corrective maintenance productivity and effectiveness metrics.
Requirements for successful software quality metrics:
• Relevant- measures an attribute of considerable importance.
• Valid- measures the required attribute
• Comprehensive- applicable to large variety of situations.
• Mutually exclusive- does not measure attributes already measured by other metrics.
• Reliable- produces similar results when applied in similar conditions
• . Does not require independent data collection –metrics data collection is based on currently employed data collection systems
• Easy and simple
Limitations of software metrics:
The following are the limitations of software metrics
• Budget constraints in allocating the necessary resources like manpower funds for development of a quality metrics system.
• Human factors especially opposition of employees to evaluation of their activities.
• Uncertainty regarding the data’s validity in reporting
As a result of these limitations most commonly used metrics suffer from low validity and getting limited results. Examples of metrics that exhibit severe weaknesses are
• Software development metrics that are based on measures such as KLOC,NDE and NCE
• Product metrics that are based on measures such as KLMC, NHYC and NYF.
Substantial research efforts are needed in order to develop metrics suitable to the software industry.
The following steps should be taken in future for the development of metrics to be successfully used in software quality assurance
1. Develop data bases to store metric data over several projects.
2. Analyze the data for commonalities.
3. Use the data to make decisions about the software development process. 
 IEEE definition
 Lars Pareto, Urban Boquist
Proceedings of the 3rd international workshop on Software quality assurance SOQUA '06November 2006
 Software quality assurance tools: recent experience and future requirements kurt.F.Fisher Computer Sciences CorporationFalls Church, Virginia 22046
 Raghavendra Rao Loka
Newark, CA 94560.
 J. E. Gaffney,
Proceedings of the ACM '81 conference ACM 81, January 1981
 Stefan Wagner, Michael Meisinger
Proceedings of the 3rd international workshop on Software quality assurance SOQUA '06
 A Checklist for Developing
Software Quality Metrics
Reesa E. Abrams, Consultant
Lower Main Street
Freeport, Maine 04032
 Design and analysis of hierarchical software metrics Ronald E. Prather
ACM Computing Surveys (CSUR), Volume 27 Issue 4 December 1995
 Software quality assurance: Daniel glain,pearson education limited.
How to Cite this Page
"Software Quality Assurance." 123HelpMe.com. 29 Nov 2015
If you'd like to save a copy of the
paper on your computer, you can COPY and PASTE it into your word
processor. Please, follow these steps to do that in Windows:
1. Select the text of the paper with the mouse and press Ctrl+C.
2. Open your word processor and press Ctrl+V.
123HelpMe.com (the "Web Site") is produced by the "Company". The contents of this Web Site, such as text, graphics, images, audio, video and all other material ("Material"), are protected by copyright under both United States and foreign laws.
The Company makes no representations about the accuracy, reliability, completeness, or timeliness of the Material or about the results to be obtained from using the Material. You expressly agree that any use of the Material is entirely at your own risk. Most of the Material on the Web Site is provided and maintained by third parties. This third party Material may not be screened by the Company prior to its inclusion on the Web Site. You expressly agree that the Company is not liable or responsible for any defamatory, offensive, or illegal conduct of other subscribers or third parties.
The Materials are provided on an as-is basis without warranty express or implied. The Company and its suppliers and affiliates disclaim all warranties, including the warranty of non-infringement of proprietary or third party rights, and the warranty of fitness for a particular purpose. The Company and its suppliers make no warranties as to the accuracy, reliability, completeness, or timeliness of the material, services, text, graphics and links.
For a complete statement of the Terms of Service, please see our website. By obtaining these materials you agree to abide by the terms herein, by our Terms of Service
as posted on the website and any and all alterations, revisions and amendments thereto.