Predicting testability of program modules using a neural network

被引:28
作者
Khoshgoftaar, TM [1 ]
Allen, EB [1 ]
Xu, ZW [1 ]
机构
[1] Florida Atlantic Univ, Dept Comp Sci & Engn, Empir Software Engn Lab, Boca Raton, FL 33431 USA
来源
3RD IEEE SYMPOSIUM ON APPLICATION SPECIFIC SYSTEMS AND SOFTWARE ENGINEERING TECHNOLOGY, PROCEEDINGS | 2000年
关键词
testability; neural network; software metrics; principal components analysis;
D O I
10.1109/ASSET.2000.888032
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Voas defines testability as the probability that a test case will fail if the program has a fault. It is defined in the context of an oracle for the test, and a distribution of test cases, usually emulating operations. Because testability is a dynamic attribute of software, it is very computation-intensive to measure directly. This paper presents a case study of real-time avionics software to predict the testability of each module from static measurements of source code. The static software metrics take much less computation than direct measurement of testability. Thus,, a model based on inexpensive measurements could be an economical way to tale advantage of testability attributes during software development. We found that neural networks are a promising technique for building such predictive models, because they are able to model nonlinearities in relationships. Our goal is to predict a quantity between zero and one whose distribution is highly skewed toward zero. This is very difficult for standard statistical techniques. In other words, high-testability modules present a challenging prediction problem that is appropriate for neural networks.
引用
收藏
页码:57 / 62
页数:6
相关论文
共 14 条
[1]   On the use of testability measures for dependability assessment [J].
Bertolino, A ;
Strigini, L .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1996, 22 (02) :97-108
[2]   AN EXPERIMENTAL-STUDY OF SOFTWARE METRICS FOR REAL-TIME SOFTWARE [J].
JENSEN, HA ;
VAIRAVAN, K .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1985, 11 (02) :231-234
[3]  
Khoshgoftaar T. M., 1995, Annals of Software Engineering, V1, P141, DOI 10.1007/BF02249049
[4]   Application of neural networks to software quality modeling of a very large telecommunications system [J].
Khoshgoftaar, TM ;
Allen, EB ;
Hudepohl, JP ;
Aud, SJ .
IEEE TRANSACTIONS ON NEURAL NETWORKS, 1997, 8 (04) :902-909
[5]   Identifying modules which do not propagate errors [J].
Khoshgoftaar, TM ;
Allen, EB ;
Tang, WH ;
Michael, CC ;
Voas, JM .
ASSET'99: 1999 IEEE SYMPOSIUM ON APPLICATION-SPECIFIC SYSTEMS AND SOFTWARE ENGINEERING & TECHNOLOGY - PROCEEDINGS, 1999, :185-193
[6]  
Khoshgoftaar TM, 1995, INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, 1995 PROCEEDINGS, P242, DOI 10.1109/ICSM.1995.526546
[7]  
*MATH WORKS INC, 1995, NEUR NETW TOOLB US M
[8]  
McCabe T. J., 1976, IEEE Transactions on Software Engineering, VSE-2, P308, DOI 10.1109/TSE.1976.233837
[9]   MEASUREMENT OF DATA STRUCTURE COMPLEXITY [J].
MUNSON, JC ;
KOHSHGOFTAAR, TM .
JOURNAL OF SYSTEMS AND SOFTWARE, 1993, 20 (03) :217-225
[10]  
Seber G. A. F., 1984, MULTIVARIATE OBSERVA, DOI DOI 10.1002/9780470316641