Components of Dependable Distributed Systems

Abstract

As depandable distributed computing systems become increasingly popular, researchers developed several abstractions for fault tolerance in hardware and software to make the design of such systems more structured and easier to understand. This lecture collects and explains the principal software abstractions. A general model of the organization of dependable system software is given. Four widely used programming paradigms (Object/Action, Conversational, State Maschine, and Primary/Backup) are introduced, then the underlining abstractions are examined. The lecture presents the conditions of use, and the algorithms for implementation of the abstractions. Finally, the dependence among the paradigms and abstractions is described.