about summary refs log tree commit diff
path: root/usth/ICT2.7/P1L1 Introduction and Overview Subtitles/6 - The Software Crisis - lang_en.srt
diff options
context:
space:
mode:
Diffstat (limited to 'usth/ICT2.7/P1L1 Introduction and Overview Subtitles/6 - The Software Crisis - lang_en.srt')
-rw-r--r--usth/ICT2.7/P1L1 Introduction and Overview Subtitles/6 - The Software Crisis - lang_en.srt208
1 files changed, 208 insertions, 0 deletions
diff --git a/usth/ICT2.7/P1L1 Introduction and Overview Subtitles/6 - The Software Crisis - lang_en.srt b/usth/ICT2.7/P1L1 Introduction and Overview Subtitles/6 - The Software Crisis - lang_en.srt
new file mode 100644
index 0000000..41061a5
--- /dev/null
+++ b/usth/ICT2.7/P1L1 Introduction and Overview Subtitles/6 - The Software Crisis - lang_en.srt
@@ -0,0 +1,208 @@
+1
+00:00:00,072 --> 00:00:02,190
+To do that we'll have to go back in time to
+
+2
+00:00:02,190 --> 00:00:05,280
+the late 60s. So what was happening in the 60s? Well for
+
+3
+00:00:05,280 --> 00:00:08,410
+example the first man landed on the moon. That was also
+
+4
+00:00:08,410 --> 00:00:11,720
+time when Woodstock took place and also the time when the first
+
+5
+00:00:11,720 --> 00:00:16,149
+60 second picture from Polaroid was created. Concurrently to these events,
+
+6
+00:00:16,149 --> 00:00:18,910
+which you probably didn't witness in first person, that was also the
+
+7
+00:00:18,910 --> 00:00:22,280
+time when people started to realize that they were not able
+
+8
+00:00:22,280 --> 00:00:25,610
+to build the software they needed. This happened for several reasons and
+
+9
+00:00:25,610 --> 00:00:29,220
+resulted in what we call the software crisis. So let's
+
+10
+00:00:29,220 --> 00:00:31,820
+look at some of the most important reasons behind this
+
+11
+00:00:31,820 --> 00:00:35,760
+crisis. The first cause was the rising demand for software.
+
+12
+00:00:35,760 --> 00:00:38,500
+Now you're used to see software everywhere: in your phone,
+
+13
+00:00:38,500 --> 00:00:41,530
+in your car, even your washing machine. Before the 60s,
+
+14
+00:00:41,530 --> 00:00:44,590
+however, the size and complexity of software was very limited
+
+15
+00:00:44,590 --> 00:00:47,580
+and hardware components were really dominating the scene. Then things
+
+16
+00:00:47,580 --> 00:00:51,490
+started to change and software started to be increasingly prevalent.
+
+17
+00:00:51,490 --> 00:00:53,940
+So we move from a situation where everything was mostly
+
+18
+00:00:53,940 --> 00:00:57,380
+hardware to a situation in which software became more and more
+
+19
+00:00:57,380 --> 00:01:00,660
+important. To give an example, I'm going to show you the growth
+
+20
+00:01:00,660 --> 00:01:04,080
+in the software demand at NASA along those years. And in
+
+21
+00:01:04,080 --> 00:01:07,610
+particular, from the 1950s to more or less 2000. And this
+
+22
+00:01:07,610 --> 00:01:10,350
+is just a qualitative plot but that's more or less the
+
+23
+00:01:10,350 --> 00:01:13,880
+ways things went. So the demand for software in NASA grow
+
+24
+00:01:13,880 --> 00:01:16,930
+exponentially. And the same happened in a lot of other companies.
+
+25
+00:01:16,930 --> 00:01:19,020
+For example, just to cite one, for Boeing. So the
+
+26
+00:01:19,020 --> 00:01:22,350
+amount of software on airplanes became larger and larger. The
+
+27
+00:01:22,350 --> 00:01:26,170
+second cause for the software crisis was the increasing amount
+
+28
+00:01:26,170 --> 00:01:30,210
+of development effort needed due to the increase of product complexity.
+
+29
+00:01:30,210 --> 00:01:34,260
+Unfortunately, software complexity does not increase linearly with size. It
+
+30
+00:01:34,260 --> 00:01:36,170
+is not the same thing to write software for a
+
+31
+00:01:36,170 --> 00:01:39,410
+class exercise or a small project, or a temp project,
+
+32
+00:01:39,410 --> 00:01:41,970
+than it is to build a software for a word processor,
+
+33
+00:01:41,970 --> 00:01:45,950
+an operating system, a distributed system, or even more complex and larger
+
+34
+00:01:45,950 --> 00:01:49,390
+system. And what I'm giving here is just an indicative size for
+
+35
+00:01:49,390 --> 00:01:52,643
+the software so the class exercise might be 100 lines of code,
+
+36
+00:01:52,643 --> 00:01:55,600
+the small project might be 1000 lines of code, in the other thousand
+
+37
+00:01:55,600 --> 00:01:58,328
+lines of code, and so on and so forth. For the former,
+
+38
+00:01:58,328 --> 00:02:01,510
+the heroic effort of an individual developer can get the job done.
+
+39
+00:02:01,510 --> 00:02:03,850
+So that's what we call a programming effort. If you're a good
+
+40
+00:02:03,850 --> 00:02:07,340
+programmer, you can go sit down and do it, right. For the latter,
+
+41
+00:02:07,340 --> 00:02:09,330
+this is not possible. This is what we called the
+
+42
+00:02:09,330 --> 00:02:13,810
+software engineering effort. In fact, no matter how much programming languages,
+
+43
+00:02:13,810 --> 00:02:17,280
+development environments, and software tools improve, developers could not keep
+
+44
+00:02:17,280 --> 00:02:20,220
+up with increasing software size and complexity. Which leads us to
+
+45
+00:02:20,220 --> 00:02:22,280
+the third problem that I want to mention and the
+
+46
+00:02:22,280 --> 00:02:25,020
+third reason for the software crisis. And this cause is the
+
+47
+00:02:25,020 --> 00:02:28,790
+slow developer's productivity growth. So let me show this again
+
+48
+00:02:28,790 --> 00:02:32,243
+with a qualitative diagram. And this is taken from the IEEE
+
+49
+00:02:32,243 --> 00:02:35,550
+Software Magazine. And what I'm showing here is the growth in
+
+50
+00:02:35,550 --> 00:02:39,930
+software size and complexity over time, and how the developers' productivity
+
+51
+00:02:39,930 --> 00:02:43,800
+really couldn't keep up with this additional software complexity, which resulted
+
+52
+00:02:43,800 --> 00:02:47,170
+in this gap between what was needed and what was actually available.
+