By Topic

Faulty version recovery in object-oriented N-version programming

Sign In

Cookies must be enabled to login.After enabling cookies , please use refresh or reload or ctrl+f5 on the browser for the login options.

Formats Non-Member Member
$31 $31
Learn how you can qualify for the best price for this item!
Become an IEEE Member or Subscribe to
IEEE Xplore for exclusive pricing!
close button

puzzle piece

IEEE membership options for an individual and IEEE Xplore subscriptions for an organization offer the most affordable access to essential journal articles, conference papers, standards, eBooks, and eLearning courses.

Learn more about:

IEEE membership

IEEE Xplore subscriptions

1 Author(s)
Romanovsky, A. ; Dept. of Comput. Sci., Newcastle upon Tyne Univ., UK

Many long-running applications would greatly benefit from being able to recover faulty versions in N-version programs since their exclusion from further use undermines the availability of the system. Developing a recovery feature, however, is a very complex and error-prone task, which the author believes has not received adequate attention. Although many researchers are aware of the importance of version recovery, there are very few schemes which include these features. Even when they do, they rely on ad hoc programming and are not suitable for object-oriented systems. The author believes that developing systematic approaches here is crucial, and formulates a general approach to version recovery in class diversity schemes, which is based on the concept of the abstract version state. The approach extends the recently-developed class diversity scheme and relies on important ideas motivated by community error recovery. The diversity scheme includes two-level error detection which allows error latency to be controlled. To use it, special application-specific methods for each version object have to be designed, which would map the internal state into the abstract state and at the same time, form a basis for one-level version recovery. The approach is discussed in detail, compared with the existing solutions, and additional benefits of using the abstract version state are shown. The intention is to outline a disciplined way for providing version recovery and thus make it more practical. Two promising approaches which can be used for developing new structuring techniques incorporating the abstract version state concept are discussed

Published in:

Software, IEE Proceedings -  (Volume:147 ,  Issue: 3 )