Toggle Main Menu Toggle Search

Open Access padlockePrints

Abstract Object State and Version Recovery in N-Version Programming

Lookup NU author(s): Professor Alexander RomanovskyORCiD



This paper deals with the use of software diversity, specifically, N-version programming (NVP) in object-oriented (OO) systems. We formulate the problem of faulty version recovery and show how our NVP scheme, developed recently, can be extended to solve it. Our approach relies on using the abstract version state, which represents a common general description of the states of all correct version objects. The recovery consists in mapping the state of a correct version onto the state of the faulty version via the abstract state. We introduce a formal description of our model and show that many ideas related to object state abstraction can be found in the existing research on OO programming. We discuss extensions of LAYOM and PSL as promising practical approaches for developing recovery features in OO programming. As an alternative solution, we propose a meta-object architecture and a related protocol which can facilitate the solution of the object version recovery problem. The paper finishes with a brief discussion of engineering steps which have to be done for developing recoverable version objects and of some approaches which can improve the re-usability of the scheme proposed.

Publication metadata

Author(s): Romanovsky A

Publication type: Report

Publication status: Published

Series Title: Department of Computing Science Technical Report Series

Year: 2000

Pages: 13

Report Number: 669

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

Place Published: Newcastle upon Tyne