On the use of testability measures for dependability assessment

被引:41
作者
Bertolino, A [1 ]
Strigini, L [1 ]
机构
[1] CITY UNIV LONDON,CTR SOFTWARE RELIABIL,LONDON EC1V 0HB,ENGLAND
关键词
Bayesian inference; error; fault; failure; reliability assessment; software testing; testability; test oracle; ultra-high reliability;
D O I
10.1109/32.485220
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Program ''testability'' is, informally, the probability that a program will fail under test if it contains at least one fault. When a dependability assessment has to be derived from the observation of a series of failure-free test executions (a common need for software subject to ''ultra-high reliability'' requirements), measures of testability can-in theory-be used to draw inferences on program correctness (and hence on its probability of failure in operation). In this paper, we rigorously investigate the concept of testability and its use in dependability assessment, criticizing, and improving on, previously published results. We first give a general descriptive model of program execution and testing, on which the different measures of interest can be defined. We propose a more precise definition of program testability than that given by other authors, and discuss how to increase testing effectiveness without impairing program reliability in operation. We then study the mathematics of using testability to estimate, from test results: 1)the probability of program correctness and 2) the probability of failures. To derive the probability of program correctness, we use a Bayesian inference procedure and argue that this is more useful than deriving a classical ''confidence level.'' We also show that a high testability is not an unconditionally desirable property for a program. In particular, for programs complex enough that they are unlikely to be completely fault-free, increasing testability may produce a program which will be less trustworthy, even after successful testing.
引用
收藏
页码:97 / 108
页数:12
相关论文
共 32 条
[1]   OPTIMIZING PREVENTIVE SERVICE OF SOFTWARE PRODUCTS [J].
ADAMS, EN .
IBM JOURNAL OF RESEARCH AND DEVELOPMENT, 1984, 28 (01) :2-14
[2]   THE EFFECT OF IMPERFECT ERROR-DETECTION ON RELIABILITY ASSESSMENT VIA LIFE TESTING [J].
AMMANN, PE ;
BRILLIANT, SS ;
KNIGHT, JC .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1994, 20 (02) :142-148
[3]  
[Anonymous], 1992, DEPENDABILITY BASIC
[4]   THE N-VERSION APPROACH TO FAULT-TOLERANT SOFTWARE [J].
AVIZIENIS, A .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1985, 11 (12) :1491-1501
[5]   MEASURES OF TESTABILITY AS A BASIS FOR QUALITY ASSURANCE [J].
BACHE, R ;
MULLERBURG, M .
SOFTWARE ENGINEERING JOURNAL, 1990, 5 (02) :86-92
[6]  
BISHOP PG, 1989, 1ST P IFIP WORK C DE, P53
[7]  
BONDAVALLI A, 1995, PREDICTABLY DEPENDAB, P459
[8]   TESTABILITY OF SOFTWARE COMPONENTS [J].
FREEDMAN, RS .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1991, 17 (06) :553-564
[9]   PARTITION TESTING DOES NOT INSPIRE CONFIDENCE [J].
HAMLET, D ;
TAYLOR, R .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1990, 16 (12) :1402-1411
[10]  
HAMLET D, 1992, IEEE SOFTWARE JUL, P21