Recovery oriented programming (extended abstract)

Olga Brukman, Shlomi Dolev

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

2 Scopus citations


Writing a perfectly correct code is a challenging and a nearly impossible task, In this work we suggest the recovery oriented programming paradigm in order to cope with eventual Byzantine programs. The program specification composer enforces the program specifications (both the safety and the liveness properties) in run time using predicates over input and output variables. The component programmer will use these variables in the program implementation. We suggest using the "sand-box" approach in which every instruction of the program that changes a specification variable, is executed first with temporary variables and that is in order to avoid execution of an instruction that violates the specifications. In addition, external monitoring is used for coping with transient faults and for ensuring convergence to a legal state. The implementation of these ideas includes the definition of new instructions in the programming language with the purpose of allowing addition of predicates and recovery actions. We suggest a design for a tool that extends the Java programming language. In addition to that, we provide a correctness proof scheme for proving that the code combined with the predicates and the recovery actions is self-stabilizing and, under the restartability assumption, eventually fulfills its specifications.

Original languageEnglish
Title of host publicationStabilization, Safety, and Security of Distributed Systems - 8th International Symposium, SSS 2006. Proceedings
PublisherSpringer Verlag
Number of pages17
ISBN (Print)3540490183, 9783540490180
StatePublished - 1 Jan 2006
Event8th International Symposium on Self-Stabilizing Systems, SSS 2006 - Dallas, TX, United States
Duration: 17 Nov 200619 Nov 2006

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume4280 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349


Conference8th International Symposium on Self-Stabilizing Systems, SSS 2006
Country/TerritoryUnited States
CityDallas, TX


  • Autonomie computing
  • Self-stabilization


Dive into the research topics of 'Recovery oriented programming (extended abstract)'. Together they form a unique fingerprint.

Cite this