ACHIEVING SOFTWARE QUALITY WITH TESTING COVERAGE MEASURES

被引:63
作者
HORGAN, TR
LONDON, S
LYU, MR
机构
关键词
D O I
10.1109/2.312032
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Coverage analysis of programs during testing gives a clear measure of testing quality and reveals important aspects of program structure. Thus, it can be a significant component in the assessment of overall software quality. This article describes the uses of a dataflow coverage-testing tool for C programs - called ATAC for Automatic Test Analysis for C - in measuring, controlling, and understanding the testing process. It presents case studies of two real-world software projects using ATAC. The first study, a joint project of the University of Iowa and Rockwell, involved fault-tolerant software for a critical automatic flight-control system. The 12 program versions developed by study participants obtained very high testing coverage scores, indicating the achievement of high-quality software. These results were confirmed in field testing (only one fault was found). The second study, a retrospective evaluation of 33 Bellcore program modules, compared test coverage with number of system faults. The Iowa/Rockwell study suggests guidelines of 90 percent block coverage, 80 percent decision coverage, 90 percent computation-uses coverage, and 70 percent predicate-uses coverage. However, the Bellcore data shows that practical testing falls far short of these standards. Indeed, 70 percent coverage is usually considered a safe, practical minimum for large projects. The basic rule of thumb is that all code should be covered or otherwise validated.
引用
收藏
页码:60 / 69
页数:10
相关论文
共 12 条
  • [1] CHEN M, 1992, SERCTR117P PURD U TE
  • [2] DEMILLO RA, 1987, SOFTWARE TESTING EVA
  • [3] AN APPLICABLE FAMILY OF DATA FLOW TESTING CRITERIA
    FRANKL, PG
    WEYUKER, EJ
    [J]. IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1988, 14 (10) : 1483 - 1498
  • [4] Horgan J. R., 1992, Proceedings of the Second Symposium on Assessment of Quality Software Development Tools (Cat. No.92TH0415-0), P2, DOI 10.1109/AQSDT.1992.205829
  • [5] Howden W. E., 1987, FUNCTIONAL PROGRAM T
  • [6] Lyu M. R., 1992, Dependable Computing for Critical Applications 2, P197
  • [7] APPLYING RELIABILITY MODELS MORE EFFECTIVELY
    LYU, MR
    NIKORA, A
    [J]. IEEE SOFTWARE, 1992, 9 (04) : 43 - 52
  • [8] IMPROVING THE N-VERSION PROGRAMMING PROCESS THROUGH THE EVOLUTION OF A DESIGN PARADIGM
    LYU, MR
    HE, YT
    [J]. IEEE TRANSACTIONS ON RELIABILITY, 1993, 42 (02) : 179 - 189
  • [9] LYU MR, 1993, 4TH P INT S SOFTW RE, P25
  • [10] PIWOWARSKI P, 1993, 15 INT C SOFTW ENG, P287