Toggle Main Menu Toggle Search

Open Access padlockePrints

Faulty Version Recovery in Object-Oriented N-Version Programming

Lookup NU author(s): Professor Alexander RomanovskyORCiD



Being able to recover faulty versions in N-version programs would be vital for many long-funning applications. Developing a recovery feature, hower, is a very complex and error-prone task, which we believe has not received adequate attention. Although many researchers are aware of the importance of version recovery, there are very few schemes which include these feature. Even when they do, they rely on an ad hoc programming and are not suitable for object-oriented systems. We believe that developing systematic approaches here is crucial. In this paper we formulate a general approach to version recovery in class diversity schemes, which is based on the concept of the abstract version state. The approach extends our recently-developed class diversity scheme (Romanovsky, 1999) and relies on important ideas motivated by community error recovery (Tso and Avizienis, 1987). Our diversity scheme includes two-level error detection which allows error latency to be controlled. To use it, special application-specific methos dor each version object have to be designed, which would map the version state into the abstract state and, at the same time, form a basis for one-level version recovery. We discuss the approach in detail, compare it with the existing solution, show additonal benefits of using the abstract object state. Our intention is to outline a disciplined way for providing version recovery and thus make it more proactical. We discuss several promising approaches which can be used for developing new structuring techniques incorporation the abstract object state concept.

Publication metadata

Author(s): Romanovsky A

Publication type: Report

Publication status: Published

Series Title: Department of Computing Science Technical Report Series

Year: 1999

Pages: 25

Print publication date: 01/06/1999

Source Publication Date: June 1999

Report Number: 679

Institution: School of Computing Science, University of Newcastle upon Tyne

Place Published: Newcastle upon Tyne