about summary refs log tree commit diff
path: root/usth/ICT2.7/P1L2 Life Cycle Models Subtitles/16 - Choosing a Model - lang_en_vs4.srt
blob: d898337b0a61db347bb341c1712cb6e7f96c8cfd (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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
1
00:00:00,100 --> 00:00:02,860
We just saw several software process models, and there

2
00:00:02,860 --> 00:00:06,330
are many, many more. And because these process models define

3
00:00:06,330 --> 00:00:09,330
the master plan for our project, the specific process

4
00:00:09,330 --> 00:00:12,220
model that we choose has as much influence over a

5
00:00:12,220 --> 00:00:15,700
project's success as any other major planning decision that

6
00:00:15,700 --> 00:00:18,610
we make. Therefore, it is very important that we pick

7
00:00:18,610 --> 00:00:22,100
the appropriate model for our development process. Picking an appropriate

8
00:00:22,100 --> 00:00:25,100
model can ensure the success of a project. On the

9
00:00:25,100 --> 00:00:27,830
contrary, if we choose the wrong model, that can be a

10
00:00:27,830 --> 00:00:31,010
constant source of problems and ultimately, it can make the project

11
00:00:31,010 --> 00:00:33,830
fail. So how can we choose the right model for a

12
00:00:33,830 --> 00:00:36,310
project? To be able to do so, we have to take into

13
00:00:36,310 --> 00:00:40,490
consideration many factors. In particular, we need to be aware of

14
00:00:40,490 --> 00:00:44,390
what level of understanding we have of the requirements. Do we understand

15
00:00:44,390 --> 00:00:46,720
all the requirements? Are we going to be able to collect all

16
00:00:46,720 --> 00:00:50,430
the requirements in advance, or collecting requirements is going to be hard and

17
00:00:50,430 --> 00:00:53,460
therefore, we might want to follow a process that is more flexible

18
00:00:53,460 --> 00:00:57,470
with that respect. Another important point is the expected lifetime of the

19
00:00:57,470 --> 00:01:00,300
project. Is this a quick project that we are putting together for

20
00:01:00,300 --> 00:01:03,100
a specific purpose or something that's going to last for for a number

21
00:01:03,100 --> 00:01:05,910
of years and that we're going to maintain over all those years?

22
00:01:05,910 --> 00:01:08,380
That's going to make a difference in the way we decide to develop

23
00:01:08,380 --> 00:01:12,190
that project. Also, what is the level of risk involved? Do we

24
00:01:12,190 --> 00:01:15,530
know the domain very well? Do we know exactly the technologies involved?

25
00:01:15,530 --> 00:01:19,100
Well, if so, we might go with a more traditional process. Otherwise,

26
00:01:19,100 --> 00:01:21,902
we might want to be more agile, more flexible. It is also

27
00:01:21,902 --> 00:01:24,900
very important to know the schedule constraints. How much time, how many

28
00:01:24,900 --> 00:01:28,640
resources do we have for this project? What is the expected interaction

29
00:01:28,640 --> 00:01:31,870
with the management and the customer? In particular for this ladder, there

30
00:01:31,870 --> 00:01:34,840
are many processes that rely on the fact that there can be

31
00:01:34,840 --> 00:01:38,310
a continuous interaction with the customer. If that interaction is not there,

32
00:01:38,310 --> 00:01:41,230
there's no way we are going to be able to use these processes.

33
00:01:41,230 --> 00:01:44,580
Conversely, there are processes that don't require the presence of the customer

34
00:01:44,580 --> 00:01:47,868
at all, except for the initial phase and maybe some checking points and

35
00:01:47,868 --> 00:01:51,020
so if the customer is very inaccessible, we might want to follow

36
00:01:51,020 --> 00:01:53,740
one of those processes, instead of one of the more demanding ones in

37
00:01:53,740 --> 00:01:57,340
terms of customer's time. Finally, it is important to take into account

38
00:01:57,340 --> 00:02:00,450
the level of the expertise of the people involved. Do we have people

39
00:02:00,450 --> 00:02:02,730
that know the technologies that we're using? Do we know people that

40
00:02:02,730 --> 00:02:04,590
know a specific kind of process?

41
00:02:04,590 --> 00:02:06,930
Some processes require some specific expertise and

42
00:02:06,930 --> 00:02:09,320
we're not going to be able to follow that process if we don't

43
00:02:09,320 --> 00:02:12,410
have the right expertise. So we need to take into account all of

44
00:02:12,410 --> 00:02:15,570
these aspects, and sometimes more, in order to be able to make

45
00:02:15,570 --> 00:02:19,560
the right decision and pick the right software process model for our project.