Title :
Improving the robustness and reliability of object-oriented programs through exception analysis and testing
Author :
Mao, Cheng-Ying ; Lu, Yan-sheng
Author_Institution :
Coll. of Comput. Sci. & Technol., Huazhong Univ. of Sci. & Technol., China
Abstract :
Exception handling is a powerful mechanism that separates the error handling code from normal code. It makes software do its utmost to run on the normal state. However, incorrect usage of exception will bring about more potential faults in the code. Based on the study of exception model of C++, a typical object-oriented language, we present a method of constructing control flows for both explicit exception and implicit exception. Subsequently, provide a model that can improve the robustness of programs via static exception analysis. This paper also discusses methods of dynamic exception structural testing and proposes several testing strategies. Finally, a rough prototype tool for exception analysis and testing has been implemented, and some preliminary experiments have been performed under it. The experiment results show that our methods of static exception inspection and dynamic exception testing are fairly effective to expose the potential exception errors. Furthermore, statistical structural exception testing is also considerably useful to find out some normal faults.
Keywords :
C++ language; data flow graphs; error handling; object-oriented programming; program diagnostics; program testing; safety-critical software; C++ language; control flow graph; dynamic exception structural testing; error handling; exception testing; explicit exception; implicit exception; object-oriented language; object-oriented programs; program code faults; program reliability; program robustness; program testing; safety critical system; static exception analysis; Computer crashes; Computer errors; Computer languages; Inspection; Object oriented modeling; Robustness; Runtime; Safety; Software quality; System testing; control flow graph (CFG); exception handling mechanism; exception testing; robustness improvement model; safety critical system;
Conference_Titel :
Engineering of Complex Computer Systems, 2005. ICECCS 2005. Proceedings. 10th IEEE International Conference on
Print_ISBN :
0-7695-2284-X
DOI :
10.1109/ICECCS.2005.54