Toggle Main Menu Toggle Search

Open Access padlockePrints

Class Diversity Support in Object-Oriented Languages

Lookup NU author(s): Professor Alexander RomanovskyORCiD



We start with a general approach to introducing software fault tolerance (SFT) into object-oriented (OO) systems [Xu et al. 1995] and proceed in two directions. The first one is the use of SFT schemes within standard OO languages. New questions which arise when we are dealing with these languages are addressed. Our intention is to thoroughly analyse all engineering steps which allow diversity to be introduced in systems programmed in these languages. Some new general problems are spotted and discussed as well. The second direction is dealing with version concurrency and distributedness in a general way. We investigate providing SFT by class diversity, which is the most general way of designing diverse software in OO systems. We concentrate on N-version programming and give an exhaustive discussion of this approach. One of the main reasons for this choice is that we have come to believe that the general approach which allows a unified discussion of all SFT schemes is rather restrictive because it does not properly address the differences between these schemes which represent their essences and the most difficult parts of their implementation and support. Our intention is to discuss the use of N-version programming in OO terms and to outline all novelties arising from this. The re-usability of SFT features is a key point in our approach. One of the conclusions we have arrived at is that, generally speaking, the entire states of version objects should be compared to detect and mask the faulty one. We propose unifying in one component features dealing with adjudication and faulty object recovery because these functionalities have a lot in common. Our approach is demonstrated using Ada 95.

Publication metadata

Author(s): Romanovsky A

Publication type: Report

Publication status: Published

Series Title: Department of Computing Science Technical Report Series

Year: 1999

Pages: 26

Report Number: 661

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

Place Published: Newcastle upon Tyne