about summary refs log tree commit diff
path: root/usth/ICT2.7/P3L1 Software Architecture Subtitles/13 - Final Example - lang_en_vs4.srt
diff options
context:
space:
mode:
Diffstat (limited to 'usth/ICT2.7/P3L1 Software Architecture Subtitles/13 - Final Example - lang_en_vs4.srt')
-rw-r--r--usth/ICT2.7/P3L1 Software Architecture Subtitles/13 - Final Example - lang_en_vs4.srt127
1 files changed, 0 insertions, 127 deletions
diff --git a/usth/ICT2.7/P3L1 Software Architecture Subtitles/13 - Final Example - lang_en_vs4.srt b/usth/ICT2.7/P3L1 Software Architecture Subtitles/13 - Final Example - lang_en_vs4.srt
deleted file mode 100644
index 4fab0c6..0000000
--- a/usth/ICT2.7/P3L1 Software Architecture Subtitles/13 - Final Example - lang_en_vs4.srt
+++ /dev/null
@@ -1,127 +0,0 @@
-1

-00:00:00,220 --> 00:00:02,130

-I'm going to conclude this set of examples with

-

-2

-00:00:02,130 --> 00:00:04,750

-a system that you might also know, Bash. And in

-

-3

-00:00:04,750 --> 00:00:08,000

-case you don't, Bash is a Unix shell written as

-

-4

-00:00:08,000 --> 00:00:11,000

-a free software replacement for the traditional Bourne shell, also

-

-5

-00:00:11,000 --> 00:00:13,690

-called sh. So what I'm showing here is the

-

-6

-00:00:13,690 --> 00:00:17,950

-descriptive architecture of the command component of Bash. So, is

-

-7

-00:00:17,950 --> 00:00:22,170

-the architecture, as implemented, of the command component of Bash.

-

-8

-00:00:22,170 --> 00:00:25,390

-And the component is the one here sort of highlighted

-

-9

-00:00:25,390 --> 00:00:28,120

-in gray. And what you can see here, these names are

-

-10

-00:00:28,120 --> 00:00:31,640

-the sub components of the command component. And if we look at

-

-11

-00:00:31,640 --> 00:00:35,000

-this architecture, two design problems of the component can kind of jump

-

-12

-00:00:35,000 --> 00:00:37,870

-at us. The first one is the lack of cohesion within the

-

-13

-00:00:37,870 --> 00:00:40,830

-component. So, if you look here, you can see that only

-

-14

-00:00:40,830 --> 00:00:44,820

-a few connections exist between the sub-components. And having a low cohesion

-

-15

-00:00:44,820 --> 00:00:47,430

-is normally not a good thing for a design. The second thing

-

-16

-00:00:47,430 --> 00:00:50,860

-that we can note is the high coupling. The component has tons

-

-17

-00:00:50,860 --> 00:00:54,200

-of connections with other components. They're, these edges that are

-

-18

-00:00:54,200 --> 00:00:57,890

-leaving the components and going towards other parts of the system.

-

-19

-00:00:57,890 --> 00:01:01,190

-So basically, this component has low cohesion and high coupling, which

-

-20

-00:01:01,190 --> 00:01:04,730

-is exactly the opposite of how a good design should be.

-

-21

-00:01:04,730 --> 00:01:07,410

-Given the structure, it is clear that anytime you change

-

-22

-00:01:07,410 --> 00:01:09,970

-this component you might need to change a bunch of other

-

-23

-00:01:09,970 --> 00:01:13,440

-components in the system. And of course, when changing other components

-

-24

-00:01:13,440 --> 00:01:15,910

-in the system, you might also need to chance the command

-

-25

-00:01:15,910 --> 00:01:19,060

-component as well. And along similar lines, to understand this

-

-26

-00:01:19,060 --> 00:01:21,890

-component you probably need to look at many other parts of

-

-27

-00:01:21,890 --> 00:01:24,690

-the system, which is also less than ideal. And one

-

-28

-00:01:24,690 --> 00:01:27,580

-important point here is that with all these examples, I'm not

-

-29

-00:01:27,580 --> 00:01:30,500

-really trying to criticize any specific system, what I'm trying

-

-30

-00:01:30,500 --> 00:01:34,380

-to show instead, is how complex software architectures can be, and

-

-31

-00:01:34,380 --> 00:01:37,040

-how much they can degrade over time. And this is true

-

-32

-00:01:37,040 --> 00:01:39,660

-for most systems, not just the ones that I showed you.