eg: UK or Brides UK or Classical Art or Buy Music or Spirituality
 
eg: UK or Brides UK or Classical Art or Buy Music or Spirituality
 

Your Online Guide » IT Hardwares » Computer Hardware Guide

[S692]Software Quality Assurance Sqa
by Richard Fleming, Ric

"The function of software quality that assures that the standards, processes, and procedures are appropriate for the project and are correctly implemented." - From software definitions at NASA.

This definition comes directly from the Quality Movement that was first established in Japan in 1946 by the U.S. Occupation Force's. The only difference between QA of the Quality Movement and SQA is the term software is introduced to both the term and the definition.

It is understandable that many attempts have been made to metamorphous the manufacturing QA definition (and practice) into software QA, due to the overwhelming success of the quality movement as demonstrated in Japanese manufacturing. Some 60 years later, however, the only aspect of QA that has been successfully transformed to SQA is the goals, namely Fujitsu's slogan of “Quality built-in, with cost and performance as prime consideration”.

The main issue with basing SQA on QA is due to the intangible nature of the software product.
As stated by Frederick P. Brooks, Jr. in his No Silver Bullet: Essence and Accidents of Software Engineering:

“The essence of a software entity is a construct of interlocking concepts: data sets, relationships among data items, algorithms, and invocations of functions. This essence is abstract in that such a conceptual construct is the same under many different representations. It is nonetheless highly precise and richly detailed”.

It is the abstract nature of software that impedes the manufacturing QA definition being applied directly to software. To be more precise it is actually Quality Control (QC) that is problematic for software. In manufacturing there would be a separate group Quality Control (QC) that would measure the components, at various manufacturing stages. QC would make sure the components were within acceptable “tolerances”, i.e. they did not vary from agreed specifications. Within software production, however, the intangible nature of software makes it difficult to set up a Test and Measurement QC department that follows the manufacturing model.

In order to overcome the essential difficulties of implementing Software Quality Control SQC procedures two strategies have evolved. These strategies are typically used together in the Software Development Life Cycle (SDLC).

The first strategy involves a pragmatic characterization of software attributes that can be measured, thereby subjecting them to SQC. The idea here is to make visible the costs and benefits of software by using a set of attributes. These attributes include Functionality, Usability, Supportability, Adaptability, Reliability, Performance etc. Then Quality Control can be set up to ensure that procedures and guidelines are followed and these procedures and guidelines exist in order to achieve the desired software characteristic. The adage, "what can be measured can be controlled" applies here. This means that when these characteristics are measured the effectiveness of the procedures and guidelines can be determined. The software production process can then be subjected to SQA (audits to make sure procedures and guidelines are followed) as well as continuous process improvement.

SQA is only a part of continuous improvement (see CMMI); however continuous improvement cannot be achieved without the measurements of SQC and the audits of SQA.

A number of models, and references, for software characterization can be found on the internet. One such model is called the FURPS model which was developed by Robert Grady at Hewlett Packard. If a pure implementation of the FURPS model, or similar, was possible then QC and QA, from manufacturing, could be applied to software production.

The second strategy, to overcome the essential difficulties of software production, is prototyping.
With this approach a risk (or immeasurable characteristic) is identified, i.e. Usability, and a prototype that addresses that risk is built. In this way a given aspect of the software product can be measured. The prototype itself could evolve into the end product or it could be 'thrown away'. This approach takes an interactive path as it is quite possible the software requirements (which should include all the software characteristics) may need to be revisited.

Whilst SQA and SQC, definitions, can be traced to their manufacturing counter parts, the implementation of SQA and SQC continues to find their own unique paths. The goal of SQA and QA, however, still remain the same and that is Fujitsu's slogan "Quality built-in, with cost and performance as prime consideration". It is the actual measurement of the "cost and performance" of software that make SQA and SQC so problematic.

Richard Fleming has sinced written about articles on various topics from Computers and The Internet. . Richard Fleming's top article generates over 1000 views. Bookmark Richard Fleming to your Favourites.
EditorialToday IT Hardwares has 2 sub sections. Such as Computer Guide and Hardware. With over 20,000 authors and writers, we are a well known online resource and editorial services site in United Kingdom, Canada & America . Here, we cover all the major topics from self help guide to A Guide to Business, Guide to Finance, Ideas for Marketing, Legal Guide, Lettre De Motivation, Guide to Insurance, Guide to Health, Guide to Medical, Military Service, Guide to Women, Pet Guide, Politics and Policy , Guide to Technology, The Travel Guide, Information on Cars, Entertainment Guide, Family Guide to, Hobbies and Interests, Quality Home Improvement, Arts & Humanities and many more.
About Editorial Today | Contact Us | Terms of Use | Submit an Article | Our Authors