Software quality may seem like a concept far removed from everyday life for most people, but nothing could be further from the truth. When an error message or a blue screen appears on our computer, we are facing a software quality problem; When a failure in the airport management system causes delays, loss of luggage or disables information screens, we are facing a software quality problem; When the payment and order entry terminals are blocked in a restaurant, we are facing a software quality problem.
It is very likely that we have suffered the effects of these quality problems in the form of delays, loss of time or money, etc. as simple citizens. Unfortunately, these problems can be much more serious if they affect critical systems; that is to say, those whose failure can cause serious economic losses or environmental or social problems and, even, the loss of human lives. A well-documented example occurred with the 1996 launch of the European Space Agency’s first Arianne 5 rocket. This device that took 10 years and 7,000 million euros to develop, exploded due to a defect in the internal control software before a minute of flight had passed.
Software failures affect all industries and all countries, as can be seen in the collection of incidents documented by Peter Neumann since 1987. Despite these data, it is true that reliable and correct software like this best quality control software for manufacturing is currently being developed at a reasonable cost. True professionals and well-organized companies are prudent and know that they must apply different control and prevention techniques, as well as a good development process.
Software failures in the market
The quality of a product is not something that is added at the end as if its exterior were painted in a color, it is something that is taken care of throughout the construction project. In software this is especially true, since it is a basically intellectual result dependent on the work of specialized professionals. Data indicate that software project problems have been progressively reducing since the mid-1990s thanks to the introduction of more systematic and reliable working methods (eg CMMi, ISO15504, etc.).
In our country, the number of companies that have their work processes certified to meet these standards has grown considerably, producing a beneficial effect on the quality of the software. Unfortunately, these improvements have been confined, above all, to strong and powerful organizations, which have the resources to implement the demands of these methods. In fact, SMEs demand simpler models adapted to their structure.
The study also reports on another key aspect for promoting quality: the demand for it by customers. Again, large organizations are those that demand more certificates and guarantees from their suppliers, while SMEs, recognizing the value of these safeguards, do not finish demanding them.
Software testing: a key aspect in quality
That’s why the software testing is very important, especially for reputable companies like Harrington Group International. It is the technique present in all projects and consists of carrying out functional tests of applications in controlled environments, in order to detect possible defects present before the product is put into operation and can cause any kind of failure.
If the tests are not effective, they can allow faulty software to reach the customer causing serious problems. It is a very important element in projects, because it consumes 33% of all the effort dedicated to development. In some studies we have found that, out of a total of 20 key aspects for optimal tests, in a wide and varied sample of companies the average actually implemented is 7 – 8. Furthermore, only around 25% of professionals have specific training in this technique.