Software Fault Tolerance in Object- Oriented Systems: Approaches, Implementation and Evaluation
چکیده
Abstract: In this paper we introduce our experience with the use of C++ (an object-oriented language) and Open C++ (a reflective version of C++) to implement reusable, dependable control structures that can effectively support the provision of software fault tolerance in the application layer of an object-oriented system. Our implementation follows two different approaches — the objectlibrary approach, using inheritance and delegation, and the reflective approach, based on metaobject protocols. The target environment used for our experiment is a distributed system consisting of multiple SPARC workstations connected through TCP/IP. Testing based on software fault injection is performed and performance-related analysis is provided. Both experimental and analytic results in this paper show that the object-oriented approach with the design of metaobject protocols is particularly promising for the development of computing systems with high dependability requirements.