Do Software Designers Make Mistakes?

.
Software Testing / Chapter 01 01 / 07

Root
Cause ·
Human
Error.

Error → Defect → Failure
Where major system failures usually begin.
◉ ISTQB FOUNDATION · SECTION 1.3
The origin · human fallibility 02 / 07
Do system designers make mistakes?

Of course they do. People are fallible.

People make mistakes because they are fallible, but there are also many pressures that make mistakes more likely.

Pressures such as deadlines, complexity of systems and organisations, and changing technology all bear down on designers of systems and increase the likelihood of errors in specifications, in designs and in software code.

P/01
Deadlines
P/02
System complexity
P/03
Organisational complexity
P/04
Changing technology
Anatomy · error → defect → failure 03 / 07
The chain reaction

From invisible thought to visible collapse.

These errors are where major system failures usually begin. If a document with an error in it is used to specify a component, the component will be faulty and will probably exhibit incorrect behaviour. If this faulty component is built into a system, the system may fail.

STAGE / 01
Error
An incorrect thought, a wrong assumption, or a thing forgotten. Intangible — you cannot touch it. Where major system failures usually begin.
STAGE / 02
Defect
When the error is written down, it becomes a fault or defect in a document. If used to specify a component, the component may be built faulty and exhibit incorrect behaviour.
STAGE / 03
Failure
A faulty component built into a system causes the system to fail. Not always guaranteed — but errors in specifications tend to lead to faulty components, and faulty components cause system failure.
Beyond code · environmental factors 04 / 07
Other reasons systems fail

Not all failures begin with human error.

Environmental conditions can also affect the operation of hardware and firmware and lead to system failure.

These external forces act independently of software quality — even perfectly coded systems can fail when the physical environment betrays them.

RadiationENV
MagnetismENV
Electronic fieldsENV
PollutionENV
The strategy · avoidance & rectification 05 / 07
If we want to avoid failure

We must either avoid errors or find and rectify them.

Testing can contribute to both avoidance and rectification. If we wish to influence errors with testing, we need to begin testing as soon as we begin making errors — right at the beginning of the development process — and we need to continue testing until we are confident that there will be no serious system failures — right at the end.

Strategy A

Avoidance
from the start.

Begin testing as soon as you begin making errors — right at the beginning of the development process. Catch faults before they propagate.

Strategy B

Rectification
to the end.

Continue testing until confident that no serious failures remain — right through to the end of the development process. Find and fix what slipped through.

The stakes · what incorrect software can harm 06 / 07
Before we move on

Incorrect software can harm.

Software failures can sometimes cause all three of these at once.

HARM / 01

People

By causing an aircraft crash in which people die, or by causing a hospital life support system to fail.

HARM / 02

Companies

By causing incorrect billing, which results in the company losing money or destroying business reputation.

HARM / 03

The environment

By releasing chemicals or radiation into the atmosphere through control system failure.

Conclusion · what is at stake 07 / 07
Software failures, then, can lead to…

Loss of money.
Loss of life.

— LOSS / 01
Money
— LOSS / 02
Time
— LOSS / 03
Reputation
— LOSS / 04
Injury
— LOSS / 05
Death
A train carrying nuclear waste. A failure of the on-board systems or of the signalling system that controls the train's movements could lead to catastrophic results — loss of money, loss of reputation, injury, and death, all at once.
.

Comments

Popular posts from this blog

List of Mac OS X (Yosemite) Shortcut Keys

Download and Install Crystal Report 2013

PHP Form - Post and Get