Where the scale of software production is significant, the greatest commercial risk is of a software failure infecting the wider brand and corporate reputation. The consequences of this often far exceed the development cost of any individual application.
Where companies do not employ best industry practices, such as thorough static analysis and unit testing, they cannot use the “state of the art” legal defence against fitness for purpose litigation.
Static analysis identifies coding issues extremely early in the development cycle, passing better code into the latter stages of the development process. As well as providing a highly effective means to analyse your code against any coding standards that you have chosen to use.
Static analysis, followed by unit and integration testing, are the earliest tests performed during the software development cycle. Defects in objects can be identified and fixed nearly immediately, so there is less re-work and re-test dependency on other code. Testing as soon as code is written can be done with isolation unit testing, not waiting for a full system build. Static and dynamic testing during these early stages of the software development life-cycle is therefore the most cost effective time to fix defects. Retaining the ability to automatically re-run these tests as development proceeds through later stages to final release, also provides the most efficient means of pin pointing regression errors which may have been introduced.
(Capers Jones, McGraw-Hill)
QA Systems testing tools
QA Systems enables organisations to accelerate software reliability with automated static analysis and software testing tools: