Abstract

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.

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.