Title :
Modeling the effects of combining diverse software fault detection techniques
Author :
Littlewood, Bev ; Popov, Peter T. ; Strigini, Lorenzo ; Shryane, Nick
Author_Institution :
Centre for Software Reliability, City Univ., London, UK
fDate :
12/1/2000 12:00:00 AM
Abstract :
Considers what happens when several different fault-finding techniques are used together. The effectiveness of such multi-technique approaches depends upon a quite subtle interplay between their individual efficacies. The modeling tool we use to study this problem is closely related to earlier work on software design diversity which showed that it would be unreasonable even to expect software versions that were developed truly independently to fail independently of one another. The key idea was a “difficulty function” over the input space. Later work extended these ideas to introduce a notion of “forced” diversity. In this paper, we show that many of these results for design diversity have counterparts in diverse fault detection in a single software version. We define measures of fault-finding effectiveness and diversity, and show how these might be used to give guidance for the optimal application of different fault-finding procedures to a particular program. The effects on reliability of repeated applications of a particular fault-finding procedure are not statistically independent; such an incorrect assumption of independence will always give results that are too optimistic. For diverse fault-finding procedures, it is possible for effectiveness to be even greater than it would be under an assumption of statistical independence. Diversity of fault-finding procedures is a good thing and should be applied as widely as possible. The model is illustrated using some data from an experimental investigation into diverse fault-finding on a railway signalling application
Keywords :
program diagnostics; railways; signalling; software reliability; system recovery; difficulty function; diverse fault-finding procedures; fault removal; fault-finding effectiveness; forced diversity; independently developed software versions; modeling tool; multi-technique approach; railway signalling application; repeated application reliability; software design diversity; software fault detection techniques; software reliability growth; software testing; statistical independence; system failure; Aerospace control; Application software; Battery powered vehicles; Diversity reception; Fault detection; Hardware; Particle measurements; Redundancy; Software design; Software engineering;
Journal_Title :
Software Engineering, IEEE Transactions on