When you create most of the software on their quality just is not getting enough attention. In the business world is not a basic condition for high quality software, as soon as possible, it is released to the market. It is a constant race that pushes quality issues into the background
Those responsible for errors in the software to look for a long time is not necessary. Guilty of first manufacturers producing for the market, "raw" products that have not undergone full testing. The same sin and internal corporate development team. Imperfect legal framework also enables software vendors to deal with virtual impunity users damage the root cause of which are errors in the programs themselves. Finally, many criticized the system of higher education, in which the preparation of young IT professionals a much greater emphasis on software development rather than testing them.
The latter, however, not entirely true, if a closer look at some special cases. For example, a researcher at the Massachusetts Institute of Technology Sharfraza Khurshid, develops procedures for automated software testing, can not be attributed to the number of guilty.
Software testing involves the generation of "input" – special instructions to be performed by the program. For each possible error to be created a test that can detect it.
Khurshid has already created a number of algorithms "generation of input streams," and firmly believes that the quality of these algorithms in the next few years, significantly increase. But experts say that in itself improve the technology of automatic test has no direct impact on improving the quality of the software.
"When you create most of the software on their quality just is not getting enough attention – said the director of the Institute for Software Quality at the University of Texas Herb Krasner. – In the business world, the basic condition is not high quality software as quickly as possible to market it. It is a constant race that pushes quality issues by the wayside. "
A study conducted last year by the National Institute of Standards and Technology under the Ministry of Commerce show that not enough rigorous testing of software has been increasing costs of manufacturers and customers to the $ 60 billion viruses that penetrate through the existing gaps lead to additional losses are also estimated in the billions of dollars.
In today’s world there are no standards for checking the quality of software that would allow to estimate the parameters of its functionality, stability, usability, portability, efficiency and technical support. However, work in this direction, aimed at long-term, ongoing, and it is hoped that over time we can compare the quality of software products based on industry standards. In the meantime, it is not possible.
New impetus to standardization bodies to some degree was given to the discovery of the famous "error of all time", which in 1999 led to the crash of the spacecraft Mars Polar Lander, launched to carry out research on the Red Planet. For NASA it was a turning point after which the space agency management has become more widely to attract universities to meet the challenges of quality improvement. The agency acted as NASA as one of the founders at Carnegie Mellon University Consortium Sustainable Computing Consortium (SCC), which includes representatives of companies FedEx, Pfizer, Microsoft and Oracle.
Engineers know how to evaluate the quality of many complex products: airplanes, medicines, bridges, etc. But the standards for assessing the quality of the software and compare it with other software of similar purpose does not exist yet. Therefore, it is unclear how should be considered, for example, statements about Microsoft products it will produce "credible" or the desire to give to the Oracle "ultra-reliable" packet status of the standard.
"How do you compare what ‘credibility’, that proclaimed ‘ultra-reliable’?" – Asks the director SCC William Guttman. The Consortium seeks to support the creation of standards and specifications that will evaluate the various system parameters, in particular, their functional reliability and security. If these figures applied to software products will be quantifiable, users will be able to make purchases based on the quality of products.
This is the view Guttman, comparing the complexity of the task set by his group, with the development of rules and regulations of the municipal building virtually from scratch.
In many ways, further improving the quality of the software also depends on the legislative and regulatory framework.
Professor of Informatics Institute of Technology, Melbourne (Fla.), Sam Kaner, who considered the issues of legal protection for users of the software in his book, Bad Software (John Wiley & Sons, 1998), compares the current obligations with the obligations of the creators of the programs automakers to pass laws about the deception of consumers. (Currently, such laws are practically in all states. For example, in California, one of the laws states that if the new car in the first year after the acquisition had to be repaired more than 30 days or if the same defect three times unsuccessfully tried to eliminate, the automaker must pick up the car and completely compensate the client. In addition, the selling has already repaired the car (of course, as a second-hand), the manufacturer must inform the buyer that he offered it returned the first owner of the car.. – Ed.)
Now the responsibility of the software vendor, usually limited to the cost of the product. Losses incurred as a result of user downtime and lost profits is not compensated.
Because of the enormous damage caused by viruses that enter the system through loopholes in the software reliability issues in recent years are particularly important. As these attacks become more sophisticated, there is a danger of their impact on financial information to clients, using them to undermine the foundations of business and other destructive actions.
Creating software with a minimal number of errors – a real passion for Dale Campbell. Chief Information Officer Warner Music Group sees a great opportunity to reduce the actual costs of companies by improving the design process.
In the Warner Music Group are using different tools detect bugs in software that is developed internally by the company (in particular, the package Monrovia, offered by Parasoft). According to Campbell, the process of development is improving as the quality of the acquired tools.
"The shortcomings of the software make it necessary to redo the work, and extra work leads to loss of money – said Campbell. – I do not think that buyers ever agreed to acquire the ‘natural’ products with the same number of defects. "