You are on page 1of 2

Software Reliability

KernSoft Systems I EM P LO YEE HANDBOOK

Defensive Programming
At KernSoft, we are proud of our safe, reliable software.
Malfunctioning software can be frustrating and even
dangerous for our customers. That’s why we use a few
software reliability models to ensure excellent
reliability.
Robust programming begins in the development stage.
In addition to the standard domain, we do our best to
predict the exception domain. We include as many
errors in the expected exception domains as we can.
Our threshold for tolerating them is very low.
In case of expected exception domains, we make all of
our software fault-tolerant. Depending on the type of
software, this could mean using a few types of systems.
All of our applications come with built-in recovery
blocks. We sometimes use N-version programming to
create strong systems, where appropriate. Depending on
the software, either BM (basic execution time model) or
LPM (logarithmic Poisson execution time model) is
recommended to programmers.
Our techniques increase the redundancy of our software.
This decreases the probability of negative effects from
system errors. We require our engineers to craft the
strongest software they are capable of. We understand
that increasing reliability often means decreasing software
productivity somewhat. Although we are committed to
creating productive software, we never sacrifice reliability.

Vocabulary
Q M atch the words (1-9) with the definitions
(A-l).

1 __BM 5 __ recovery block


2 _exception domain 6 __ reliability
Get ready!
3 _LPM 7 __ standard domain
O Before you read the passage, talk about 4 __ N-version 8 __ threshold
these questions.
programming 9 _ probability
1 What is the purpose of defensive programming?
A a record that can be accessed in case of error
2 What are some software reliability models?
B a limit that must be exceeded for certain reactions
to take place
Reading C user input that is incorrect
D a system in which the decrease in failure intensity
© Read the handbook. Then, mark the
is constant
following statements as true (T) or false (F).
E the quality of being consistent
1 _The company uses multiple software reliability F a system in which multiple programs are
models. generated from one specification
2 _The company attempts to decrease the G a system in which the decrease in failure intensity
redundancy of its software. is exponential
3 _All applications come with built-in N-version H user input that is correct
programming. I the likelihood of software errors
O C hoose the sentence th at uses the Q Listen again and complete the
underlined part correctly. conversation.

1 A Anticipated errors are in the expected Engineer 2: I haven’t even finished doing the standard
exception domain. and 1 _____________________.
B The expected exception domain refers to user Engineer 1: Yeah, but you still need to think about
input. 2 .
2 A A common problem in software reliability is Engineer 2: I guess so. What would you recommend I
redundancy. do?
B Fault-tolerant software minimizes malfunctions. Engineer 1: When I 3 I like to use
BM and LPM.
3 A A software reliability model is used to
demonstrate the speed of a system. Engineer 2: Why do you prefer those?
B Defensive programming reduces errors and Engineer 1: I find that they give more 4.
limits the damage. _than other methods.

4 A Redundancy helps to prevent the loss of Engineer 2: I didn’t know that. I’ll keep it in mind when
important information. I get 5 _____________________ .

B Probability indicates the number of errors that Engineer 1: You definitely should. Accurate error
have occurred in an application. checks will save you a lot of trouble

5 A Defensive programming protects a new


system.
B Robust programming helps ensure general
correctness.
Speaking
6 A A software reliability model intends to limit
O W ith a partner, act out the roles below
malfunctions.
based on Task 7. Then, sw itch roles.
B Robust programming is in the final stage.
USE LANGUAGE SUCH AS:
0 Q Listen and read the handbook again. You still need to think a b o u t... ▼
W hat happens w hen a program is not fau lt-
Why do you p re fe r... /1 fin d ...
tolerant?

1 1
Listening Student A: You are an engineer. Talk to Student B
about:
Q & Listen to a conversation b etw een tw o
• an application that he or she is designing
softw are engineers. C hoose the co rrect
answ ers. • how to check the reliability of a program
• what software reliability models you prefer
1 Why does the man prefer BM and LPM?
A They have higher exception domain thresholds.
Student B: You are an engineer. Talk to Student A
B They are easier to use.
about software reliability models for a new
C They give more accurate error probabilities. application.
D They take less time to run.
2 What problem did the woman have with a
previous application?
Writing
A It was not fault-tolerant enough. 0 Use the handbook and conversation from
B It did not give the right error probabilities. Task 8 to w rite an em ail to a softw are
engineer abo ut the reliability of a new
C It had a very limited expected exception domain.
program . Include: a recom m endation for a
D It had an inaccurate standard domain. particular softw are reliability m odel, how
the m odel w orks, and the m o d el’s benefits.

13

You might also like