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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
|
1
00:00:00,350 --> 00:00:03,610
These issues and difficulties can result in requirements
2
00:00:03,610 --> 00:00:06,780
that show various problems. Two particularly relevant and
3
00:00:06,780 --> 00:00:10,880
common problems are completeness and pertinence. Or better,
4
00:00:10,880 --> 00:00:14,750
the lack of completeness and pertinence. Completeness refers to
5
00:00:14,750 --> 00:00:17,560
the fact that it is often extremely difficult
6
00:00:17,560 --> 00:00:20,370
to identify all of the requirements. That is it
7
00:00:20,370 --> 00:00:22,890
is very difficult to have a complete picture
8
00:00:22,890 --> 00:00:25,780
of the purpose of the software. So what happens
9
00:00:25,780 --> 00:00:28,540
is that incomplete requirements are collected and the software
10
00:00:28,540 --> 00:00:32,500
is missing functionality that is important for the user. Pertinence
11
00:00:32,500 --> 00:00:34,720
conversely has to do with the relevance of the
12
00:00:34,720 --> 00:00:38,770
requirements. To avoid completeness problems developers often end up collecting
13
00:00:38,770 --> 00:00:42,640
a lot of irrelevant when not conflicting requirements. In
14
00:00:42,640 --> 00:00:45,060
these cases what can happen is that the software could
15
00:00:45,060 --> 00:00:47,120
either end up being bloated that is it might
16
00:00:47,120 --> 00:00:51,290
contain a needed functionality. The functionality represented by these extra
17
00:00:51,290 --> 00:00:54,120
requirements or it might even be impossible to build the
18
00:00:54,120 --> 00:00:57,480
software due to the conflicting additional requirements. And to make
19
00:00:57,480 --> 00:01:00,920
things even worse collecting all of these requirements sometimes doesn't
20
00:01:00,920 --> 00:01:03,390
even solve the completeness issue. So you might end up
21
00:01:03,390 --> 00:01:05,800
with a set of requirements that is not only incomplete
22
00:01:05,800 --> 00:01:08,740
but it also contains extra information that can be harmful
23
00:01:08,740 --> 00:01:11,450
to the system. So again the bottom line is that
24
00:01:11,450 --> 00:01:14,310
gathering an adequate, accurate, complete,
25
00:01:14,310 --> 00:01:16,500
and pertinent set of requirements that
26
00:01:16,500 --> 00:01:20,100
identify the purpose of a software system is an arduous task.
|