Title :
An empirical study on testing and fault tolerance for software reliability engineering
Author :
Lyu, Michael R. ; Huang, Zubin ; Sze, Sam K S ; Cai, Xia
Author_Institution :
Dept. of Comput. Sci. & Eng., Chinese Univ. of Hong Kong, China
Abstract :
Software testing and software fault tolerance are two major techniques for developing reliable software systems, yet limited empirical data are available in the literature to evaluate their effectiveness. We conducted a major experiment to engage 34 programming teams to independently develop multiple software versions for an industry-scale critical flight application, and collected faults detected in these program versions. To evaluate the effectiveness of software testing and software fault tolerance, mutants were created by injecting real faults occurred in the development stage. The nature, manifestation, detection, and correlation of these faults were carefully investigated. The results show that coverage testing is generally an effective means to detecting software faults, but the effectiveness of testing coverage is not equivalent to that of mutation coverage, which is a more truthful indicator of testing quality. We also found that exact faults found among versions are very limited. This result supports software fault tolerance by design diversity as a creditable approach for software reliability engineering. Finally we conducted domain analysis approach for test case generation, and concluded that it is a promising technique for software testing purpose.
Keywords :
aerospace computing; fault diagnosis; program diagnostics; program testing; software fault tolerance; software reliability; coverage testing; domain analysis; fault correlation; fault detection; industry-scale critical flight application; software development; software fault tolerance; software reliability engineering; software testing; test case generation; Aerospace engineering; Application software; Computer industry; Fault detection; Fault tolerance; Fault tolerant systems; Reliability engineering; Software reliability; Software systems; Software testing;
Conference_Titel :
Software Reliability Engineering, 2003. ISSRE 2003. 14th International Symposium on
Print_ISBN :
0-7695-2007-3
DOI :
10.1109/ISSRE.2003.1251036