about summary refs log tree commit diff
path: root/usth/ICT2.7/P4L1 General Concepts Subtitles/3 - Failure, Fault, and Error - lang_en_vs4.srt
blob: e6459c013f6d10915c5074bd7c3b6c5c5171ae57 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
1
00:00:00,390 --> 00:00:03,460
The first term I want to define, is failure.

2
00:00:03,460 --> 00:00:09,080
A failure is an observable incorrect behavior of the software.

3
00:00:09,080 --> 00:00:10,910
It is conceptually related to the behavior of the

4
00:00:10,910 --> 00:00:13,910
program, rather than its code. The second term I want

5
00:00:13,910 --> 00:00:17,600
to introduce is fault, which is also called bug.

6
00:00:17,600 --> 00:00:20,540
And the fault or bug, is an incorrect piece of

7
00:00:20,540 --> 00:00:22,780
code. In other words, a fault is related to

8
00:00:22,780 --> 00:00:25,900
the code. And is a necessary, but not sufficient condition

9
00:00:25,900 --> 00:00:28,160
for the occurrence of a failure. The final

10
00:00:28,160 --> 00:00:30,880
term I want to introduce is, error. Where an

11
00:00:30,880 --> 00:00:33,630
error is the cause of a fault. It is

12
00:00:33,630 --> 00:00:36,990
usually a human error, which can be conceptual. A

13
00:00:36,990 --> 00:00:39,620
typo or something along those lines. And know that

14
00:00:39,620 --> 00:00:43,422
this terminology, failure, fault and error, is the official

15
00:00:43,422 --> 00:00:46,945
[UNKNOWN] terminology. So you cannot go wrong if you

16
00:00:46,945 --> 00:00:51,282
use it. Now, let me illustrate the difference between

17
00:00:51,282 --> 00:00:57,153
failure, fault and error. Using a small example. What I'm showing here is

18
00:00:57,153 --> 00:01:00,876
a small function that, as you can see from its name, takes an

19
00:01:00,876 --> 00:01:04,920
integer parameter i. And is supposed to double the value of i, and

20
00:01:04,920 --> 00:01:08,420
return it. As we can clearly see, this is not what the function does.