Subscribe
About

Building quality software systems

Find out why software testing is not enough?

There has been an increased demand for software testing services in South Africa, which has not necessarily increased the quality of software.

IT decision-makers, in a bid to increase software development productivity and reduce development costs, often focus on technology and automated tools as solutions. Experts predict software spending in 2010 will exceed the levels of those in 2009 (including technology and tools spending).

Silver bullets

Automated software tools that automate source code, version control, performance and regression testing are popular. Additionally, test management and defect tracking tools for testing are widely used.

All of these are good tools, but they are simply bandages. According to Gartner and over 45 other experts, project failures are the result of incomplete requirements, lack of human and organisational aspects of IT. Tools and technology are not the primary influencers of project success.

The problem

The underlying problem is critical defects; often requiring repeated testing, maintenance efforts and support staff. Have you noticed the more testers you add on a project the more defects are uncovered?

But finding more defects in bad software does not address the main issue - design flaws.

Automated tools are not the silver bullet

Tools, whether for development or testing, are never the silver bullet or indeed the starting point for software quality. If one is not too careful, testing tools can lead to spiralling software costs without addressing the fundamental problem - design flaws.

Tools have their place, but one should consider these later, based on organisational maturity in software quality management.

Technology

Technology may be good for business, but it is not always the solution for software quality. Several organisations are being sold the latest tool or gadget to save time or reduce development costs. However, the processes supporting this technology may not always utilise the features sold. Sometimes there is an oversell to the client and less focus on quality.

Cost of software quality

Where are you spending your money?

All organisations pay for quality. Whether it is dedicated quality expenditure or lack thereof, costs are realised in one of the following ways.

Prevention costs:
Includes the money spent on preventing defects and eliminating redundancies. Prevention activities include quality management, conducting quality assurance, performing reviews of requirements, design and code. In fact, anything that prevents failure by identifying defects early in the development cycle.

Detection costs:
Includes the money spent on appraising software and finding defects (quality control and testing).

Correction costs:

Includes the money spent on fixing defects.

* Internal failure costs include the money spent on dealing with failures before they reach the customer (maintenance and defect resolution).
* External failure costs include the money spent on dealing with failures at the customer side (support and call centres).

(c) 2010 QA Consultants (Pty) Ltd is an accredited software quality assurance provider.

Share