Mathematical approaches to managing defects

Radical new approaches toward software testing needed?

Summary

It would appear that computer science is ready to move software development to a new level, so that the idea of software development becomes more of an engineering practice than a black art – although we could equally well have said that at any time in the last 20 years or so.

However, there are still numerous practical problems to overcome. Formal methods require a level of expertise that is missing from many development shops. The range of problems that the techniques have been applied to is also limited – embedded systems, by their nature, represent a limited universe compared to a highly distributed environment with a feature rich user interface. Similarly, the Bayesian approach to testing and defect prediction shows great promise; but to date the work has not been generally applied.

However, without more rigorous, one could say more scientific, approaches, the problems of defective software are unlikely to disappear. And, adoption of these new approaches will need management buy-in to technology risk management.

Research undertaken for HP Services with 10 per cent of the top 250 FTSE companies some years ago has shown that IT risk management is starting to became a board-level concern, perhaps following on from the Y2K debacle; although the IT director still has specific responsibility for this.

The definition of IT risk amongst those sampled is quite discriminating: "We wouldn't really regard it as IT risk...we'd regard it as information security risk or systems development risk," according to one manager.

Nevertheless, although management does now often take responsibility for technology risk management overall, it appears, anecdotally, that the board may not always be fully aware of the risks associated with the lack of adequate testing. This may sometimes limit management support for the radical new approaches that could help address these risks. ®

Sponsored: How to determine if cloud backup is right for your servers