0% found this document useful (0 votes)
58 views4 pages

SFT Assignment 3

This document compares three software fault tolerance techniques: Consensus Recovery Block, Recovery Block Technique, and N-Version Programming. It finds that Consensus Recovery Block is most suitable for real-time systems because it incorporates aspects of both Recovery Blocks and N-Version Programming, and can fallback to an alternative technique if the primary approach fails. The document provides details on the performance and suitability of each technique for different situations. It concludes that Consensus Recovery Block with majority voting is generally the most stable and reliable approach.

Uploaded by

Osama Mirza
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
58 views4 pages

SFT Assignment 3

This document compares three software fault tolerance techniques: Consensus Recovery Block, Recovery Block Technique, and N-Version Programming. It finds that Consensus Recovery Block is most suitable for real-time systems because it incorporates aspects of both Recovery Blocks and N-Version Programming, and can fallback to an alternative technique if the primary approach fails. The document provides details on the performance and suitability of each technique for different situations. It concludes that Consensus Recovery Block with majority voting is generally the most stable and reliable approach.

Uploaded by

Osama Mirza
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

Shaheed Zulfikar Ali Bhutto Institute of Science & Technology

COMPUTER SCIENCE DEPARTMENT

Total Marks: 7.5

Obtained Marks:

Software Fault Tolerance # 03


Last date of Submission: 17th April, 2020

Submitted To: Dr. Isma Masood


_______________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Student Name:
_______________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Reg Number:
_______________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Software Fault Tolerance BSSE 4 SZABIST-ISB


Shaheed Zulfikar Ali Bhutto Institute of Science & Technology

COMPUTER SCIENCE DEPARTMENT

Report

Compare Consensus Recovery Block, Recovery Block Technique, and N-


Version Programming
Abstract:
Nowadays in this modern digitalized world, efficient systems capable of handling
safety critical situations are more important and they should be fault tolerant, such as;
hospital management system, learning systems, military operations monitoring systems etc.
In making of all these such systems, different software fault tolerance techniques are used
widely, in order to ensure that these systems perform as specific, even under extreme
conditions. So, it is important to have a fault tolerant or fault free computing system for both
hardware and software. Current methods for software fault tolerance include;
 N-version Programming
 Consensus Recovery Block
 Recovery Block Technique

Introduction:
A real-time system is one that must produce a correct result within a specific
time deadline. Failures in real time systems can arise from both functional-errors as well as
timing bugs. Hence, it is necessary to provide temporal correctness of programs used in real
time applications. Reliability has always been an important quality attribute of software
systems especially for mission and safety critical software systems because in such systems
severity of consequences resulting from failures is very high. In order to achieve failure free
operation of software, one develops some mechanism to handle those faults which remain
in the system even after its development. Software fault tolerance is such a mechanism
which can be used to deal with the remaining faults after development of system. Since real-
time systems need to be highly reliable and as it is not always possible to ensure the
development of highly reliable system therefore, they are prime candidates for the inclusion
of fault tolerance techniques.

Software Fault Tolerance BSSE 4 SZABIST-ISB


Shaheed Zulfikar Ali Bhutto Institute of Science & Technology

COMPUTER SCIENCE DEPARTMENT

Comparison:

Techniques Suitability for real Reason


time systems
1.Not suitable when distinct multiple solutions exist.
Majority
N-version Poor it is not
voting for N-Version Programming may result in incorrect
Programming suitable for real
decision when majority of outputs are incorrect.
time systems
2. Design diversity may not be very effective if
similar kind of
faults get detected in various versions
3. The decision mechanism may not be adequate
enough to handle
timing bugs for providing temporal correctness.

Recovery Blocks Poor It may not be suitable for real time systems due to its
serial
nature of execution.
No mechanisms to handle timing bugs for providing
temporal
correctness.

Consensus Good, suitable for It is suitable for real-time systems because it works on
Recovery Block real systems both RcB and NVP. If DM fails then it will go for AT.

The CRB technique has been found to be surprisingly robust in the presence of high
introversion correlation. However, it is important to note that the models used did not
include correlation effects. Although these statements appear contradictory in nature, the
example results below should clarify the particular situations in which the CRB technique
performs well. In general, when the AT is not of very high quality, Consensus Recovery Blocks
tends to outperform N-Version Programming and to perform competitively with the
Recovery Block technique. The following results of CRB performance are from the
experiments and studies reported in, unless otherwise referenced.

• When there is failure independence between variants and a zero probability of identical
and wrong (IAW) answers, CRB is always superior to NVP (given the same variant reliability
and the same voting strategy) and to RCB (given the same variant and AT reliability).
• When there is a very high failure correlation between variants, CRB is expected to
outperform NVP (given the same voting strategy) only when the variants that do fail
coincidentally return different results. (The CRB-AT would then be invoked.)

Software Fault Tolerance BSSE 4 SZABIST-ISB


Shaheed Zulfikar Ali Bhutto Institute of Science & Technology

COMPUTER SCIENCE DEPARTMENT

• When the probability of IAW results is very high, CRB is not superior to NVP. (The CRB-AT
would be invoked infrequently because the majority voter would select one of the identically
incorrect results as the correct answer.) The NVP does not perform well either in this
situation.
• For n = 3, CRB with majority voting has reliability equal to or better than the reliability of
NVP with majority voting (using the same variants).
• For n = 5, with a lower n-tuple reliability, NVP with consensus voting performs almost as
well as CRB.
• Most of the time, CRB with consensus voting is more reliable than
NVP with consensus voting.
• NVP with consensus voting may be marginally more reliable than
CRB with consensus voting when the AT reliability is low, or when
AT and program failures produce IAW results. This situation was
observed with low frequency.

Conclusion:

• CRB with majority voting is more stable and is at least as reliable as


NVP with majority voting.
• The advantage of using CRB may be marginal in high failure correlation situations or where
the AT is of poor quality.
• CRB performs poorly in all situations where the voter is likely to
select a set of IAW responses as the correct answer.
• It is noted that, given a sufficiently reliable AT or binary output space or very high
introversion failure correlation, all schemes that vote may have difficulty competing with
RCB technique.

Reference:
https://youtu.be/eti0A8cPTCs

Software Fault Tolerance BSSE 4 SZABIST-ISB

You might also like