A recent survey of IT leaders at large enterprises revealed that accelerating development schedules are leading to a proliferation of defects in software releases. According to the study by Coleman Parkes, 36 percent of the 200 North American organizations surveyed reported that defects in new releases had made it into production, while just 4 percent said they had not experienced a bug in a production release.
Underscoring these findings is the fact that development schedules are become tighter, the study showed. Fifty-seven percent of IT teams reported that they will be expected to deliver more functionality in the future, and 95 percent claimed that the frequency of software releases would stay the same or increase. Additionally, 63 percent of respondents expect the introduction of mobile applications to cause development delays.
These limitations may have extensive business consequences, according to Shridhar Mittal, general manager of service virtualization at CA Technologies, which underwrote the study. Ninety-six percent of survey respondents said they believed development delays and product failures would lead to a loss of reputation in the market, and 93 percent said the result of this reputation damage would be customers switching to competitors.
“For today’s enterprise, IT is no longer just an enabler,” Mittal wrote in a blog post. “Applications have become core to the revenue stream, driven by customers with an insatiable appetite for new functionality. How can businesses innovate fast enough to meet changing customer demands – without causing the kinds of public software failures that make headlines?”
Strengthening development with static analysis
While development constraints may be contributing to product defects, many organizations remain unequipped to catch problems in the development process. The study found that just 9 percent of companies surveyed reported having comprehensive insight into how their complex apps might break in production.
One of the most effective tools for identifying product defect points is static analysis. In a study by researchers at North Carolina State University and Microsoft, static analysis tools were able to separate high and low quality components in pre-release programs with a correct classification rate of nearly 83 percent. Additionally, the study found that there is a strong correlation between the predicted pre-release defect density and the actual pre-release defect density, suggesting that source code analysis tools are a useful part of the development process.
“In industry, estimates of system reliability (or pre-release defect density) are often available too late to affordably guide corrective actions to the quality of the software,” the researchers noted.
By using static analysis, developers can improve their ability to cope with tight development constraints and avoid the type of product flaws that might damage their business.
Software news brought to you by Klocwork Inc., dedicated to helping software developers create better code with every keystroke.