Pages

Sunday, September 18, 2011

Software Quality Assurance

cached from: http://www.comp.glam.ac.uk/pages/staff/tdhutchings/chapter7.html

Quality Assurance

Quality Terminology

  • Quality = Conformance to Requirements; The definition of quality in every-day terms involves some measure of excellence (‘degree of excellence’ - Concise Oxford). In the development of information systems quality has come to mean conformance to requirement, not just in terms of functionality but also with regard to ease of use, performance and value for money. slide 2
  • Quality Control; Quality Control is the formal assessment of deliverables to ensure that they conform to requirements. A typical example of a quality control activty is a structured walkthrough slide 4
  • Quality Assurance; Quality assurance is concerned with the development of guiding frameworks within which individual quality control mechanisms take place. slide 5
  • Quality Management; Quality management is concerned with co-ordinating the efforts of individuals, the tools and methods used and the quality assurance frameworks and quality control mechanisms, towards the common goal of improving quality. It is also concerned with the development of a culture in which each individual takes responsibility for the quality of their own work has access to the appropriate tools and techniques for the job and has the management support necessary to enable them to do so. slide 6

Contents Page

Home Page

Quality Assurance Frameworks

A quality assurance framework involves the following processes or activities:-

  • Identification of Requirements; This process involves identifying and documenting the requirements of the end-users. This has to be the first phase in the development of quality products (if the requirements are unknown or woolly how do we know when we have conformed to them?).
  • Produce Deliverables; This is where the work gets done, e.g. producing a Logical Data Structure, Data Flow Diagram or working program/module.
  • Quality Control; In this process deliverables are checked to ensure that they conform to identified requirements, any errors or areas of non-conformance are recorded. This list of errors feeds back into the produce deliverables process where the errors are corrected.
  • Improve Standards; During this process the errors identified in quality control are analysed and steps taken to prevent these errors from recurring, e.g. by improving standards or by providing training.slide 7

A corporate data architecture as described in chapter 5 would form part of the quality assurance framework for analysis and design since there is a requirement for the LDS to conform to the Corporate Data Architecture.

Contents Page

Home Page

The Costs of Quality

The cost of quality has been defined by Philip B. Crosby in his book ‘Quality is Free’ as the cost of not getting things right first time.

  • Prevention Costs; These are costs incurred in preventing mistakes from happening such as, the implementation of standards, staff training and the costs involved in setting up quality management programs.
  • Appraisal Costs; These are the costs incurred in looking for mistakes before a product is released including, program/system/acceptance testing, walkthroughs, inspections and project reviews.
  • Failure Costs; These are the costs incurred because a product doesn’t conform to requirements such as, re-work, overtime, loss of business and maintenance.

The systems development lifecycle has occasionally been broken down into the break-down phase consisting of identification of requirements, systems analysis and specification, logical design and physical design, and a build-up phase consisting of program testing system testing acceptance testing and operation. slide 10

It is generally accepted that the cost of error correction increases sharply during the build-up phase and again when errors are detected in live operational running (B. Boehm ‘Software Engineering - IEEE Transactions on Computing). Recently a large organisation as part of their quality management program analysed how the IT budget was being spent in terms of prevention, appraisal, failure and productive costs the following results were found:-

CostPercentage of IT Budget
Prevention2%
Appraisal40%
Failure35%
Productive Work23%

The organisation also set itself some targets for improvement.

CostPercentage of IT Budget
Prevention10%
Appraisal40%
Failure10%
Productive Work40%

The organisation expected that a small increase in prevention costs (up to 10%) would result in a dramatic drop in the costs of failure (down from 35% to 10%) thus resulting in a substantial rise in productive work (up to 40%).

The aim of the organisations quality management program was to significantly reduce the costs of failure by;

  • using improved appraisal mechanisms to identify and correct errors as early as possible (i.e. when it is cheapest to do so) and
  • by taking action to prevent the recurrence of errors.

Error detection, correction and recurrence prevention is the essence of quality assurance and the resulting increase in productive work is the thinking behind Philip Crosby’s belief that quality is free

Contents Page

Home Page

Walkthroughs, Inspections and Reviews

These can be informal, e.g. asking a colleagues opinion, semi-formal, e.g. a brainstorming session, or Formal, e.g. a formal inspection of a LDS.

The purpose of a formal inspection is the identification of errors and/or areas of non-conformity. The purpose is not to correct the errors this, in a quality culture, has to be the responsibility of the original producer of the deliverables being inspected.

The following roles are found in most formal inspections:-

  • Moderator; Responsible for arranging the inspection, distributing the materials and acting as chairperson during the inspection.
  • Producer; Responsible for producing the deliverables and delivering them in good time to the moderator.
  • Standards Bearer; Responsible for ensuring that any relevant standards, e.g. SSADM Version 4 are adhered to.
  • Scribe; Responsible for documenting any areas of non-conformance.
  • Reviewer; Everyone has a responsibility for the identification of errors/non-conformity but a reviewer has no other specific responsibilities.

It is important that consensus is reached regarding the outcome of the inspection. There are only three possible outcomes; Pass (as is), Pass (minor modifications required) or Fail (further inspection required). The other important thing for everyone involved but particularly for the producer to remember is that what is being criticised is the work not the person who produced the work. An example of a typical quality control form follows:

Structured Walkthroughs are described in great depth in Ed Yourdon’s book ‘Structured Walkthroughs’.

Contents Page

Home Page

No comments:

Stats