Quality assurance, or QA, 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 paper work.
Quality assurance goes a long way to guarantee the customer that hey are getting their moneys worth. Companies in order that they know at all times that their company has the highest standards for products and employees. Quality assurance includes formal review of care, problem identification, and corrective actions to remedy any
Quality planning is an integral part of the planning activity. It manifests itself in theproduct descriptions and in the scheduling of quality related activities in the PERTcharts. The results of the quality planning activities are reflected in the resource andtechnical plans, at each level of the project.
Quality control is concerned with ensuring that the required qualities are built into all of the products throughout their development life cycles. Quality control utilizes measurable quality criteria and is exercised via quality reviews, project reviews and by the testing of products.
Quality assurance requires agreement on the level of quality controls to be adopted,both specifically relating to the project and to the overall organizational policy. It is important that all three interests represented by the project owner are taken into account when deciding the mechanisms to be adopted.
What is Quality?
Quality is essentially about learning what you are doing well and doing it better. It also means finding out what you may need to change to make sure you meet the needs of your service users.
Quality is about:
- knowing what you want to do and how you want to do it
learning from what you do - Using what you learn to develop your organization and its services
- Seeking to achieve continuous improvement
- Satisfying your stakeholders - those different people and groups with an interest in your organization.
There are as many definitions of quality as there are quality consultants, but commonly accepted variations include:
‘conformance to requirements’ - Crosby
‘fitness for use’ - Juran
‘the totality of characteristics of an entity that bear on its ability to satisfy stated and implied need’ - ISO 8402:1994
Quality models for business, including the Deming Prize, the EFQM excellence model and the Baldrige award
The History of Quality:
In the early 20th century, manufacturers began to include quality processes in quality practices. After the United States entered World War II, quality became a critical component of the war effort. The birth of total quality in the United States came as a direct response to the quality revolution in Japan following World War II. The Japanese welcomed the input of Americans Joseph M. Juran and W. Edwards Deming and rather than concentrating on inspection, focused on improving all organizational processes through the people who used them.
By the 1970s, U.S. industrial sectors such as automobiles and electronics had been broadsided by Japan’s high-quality competition. The U.S. response, emphasizing not only statistics but approaches that embraced the entire organization, became known as total quality management (TQM).
By the last decade of the 20th century, TQM was considered a fad by many business leaders. But while the use of the term TQM has faded somewhat, particularly in the United States, its practices continue.
In the few years since the turn of the century, the quality movement seems to have matured beyond Total Quality. New quality systems have evolved from the foundations of Deming, Juran and the early Japanese practitioners of quality, and quality has moved beyond manufacturing into service, healthcare, education and government sectors.
Some software quality factors are:
Understandability
The purpose of the software product is clear. This goes further than just a statement of purpose - all of the design and user documentation must be clearly written so that it is easily understandable. Obviously, the user context must be taken into account, e.g. if the software product is to be used by software engineers it is not required to be understandable to lay users.
Completeness
All parts of the software product are present and each of its parts are fully developed. For example, if the code calls a sub-routine from an external library, the software package must provide reference to that library and all required parameters must be passed. All required input data must be available.
Conciseness
No excessive information is present. This is important where memory capacity is limited, and it is important to reduce lines of code to a minimum. It can be improved by replacing repeated functionality by one sub-routine or function which achieves that functionality. This quality factor also applies to documentation.
Portability
The software product can be easily operated or made to operate on multiple computer configurations. This can be between multiple hardware configurations (such as server hardware and personal computers), multiple operating systems (e.g. Microsoft Windows and Linux-based operating systems), or both.
Consistency
The software contains uniform notation, symbology and terminology within itself.
Maintainability
The product facilitates updating to satisfy new requirements. The software product that is maintainable is simple, well-documented, and should have spare capacity for processor memory usage.
Testability
The software product facilitates the establishment of acceptance criteria and supports evaluation of its performance. Such a characteristic must be built-in during the design phase if the product is to be easily testable, since a complex design leads to poor testability.
Usability
The product is convenient and practicable to use. The component of the software which has most impact on this is the user interface (UI), which for best usability is usually graphical.
Reliability
The software can be expected to perform its intended functions satisfactorily over a period of time. Reliability also encompasses environmental considerations in that the product is required to perform correctly in whatever conditions it is operated in; this is sometimes termed robustness.
Structure
The software possesses a definite pattern of organization in its constituent parts.
Efficiency
The software product fulfills its purpose without wasting resources, e.g. memory or CPU cycles.
Security
The product is able to protect data against unauthorized access and to withstand malicious interference with its operations. Besides the presence of appropriate security mechanisms such as authentication, access control and encryption, security also implies reliability in the face of malicious, intelligent and adaptive attackers.
Some of the commonly uses Quality Terminologies:
1. Quality Inspection
Whenever work is done or a product or part is made—whether it is a piece of hardware manufactured on the assembly line, a memo typed by a secretary, or code developed by software programmers—it should be inspected to see that it fulfills the requirements and specifications. This is certainly a wise business practice. Some companies accept a certain failure rate, while others try to correct the problems they see from their inspection. Inspecting and then correcting will save a company money.

| < Prev | Next > |
|---|