diff options
author | Nguyễn Gia Phong <mcsinyx@disroot.org> | 2020-05-24 16:34:31 +0700 |
---|---|---|
committer | Nguyễn Gia Phong <mcsinyx@disroot.org> | 2020-05-24 16:34:31 +0700 |
commit | b2d80610db6beda38573890ed169815e495bc663 (patch) | |
tree | 176e1bca6fe644c619d53cf1c24682c244b79cf6 /usth/ICT2.7/P3L1 Software Architecture Subtitles/15 - Architectural Design Quiz Solution - lang_en_vs4.srt | |
parent | 49376ab97c7427f1c1eca64072d1a934c2e52f50 (diff) | |
download | cp-b2d80610db6beda38573890ed169815e495bc663.tar.gz |
[usth/ICT2.7] Engineer software
Diffstat (limited to 'usth/ICT2.7/P3L1 Software Architecture Subtitles/15 - Architectural Design Quiz Solution - lang_en_vs4.srt')
-rw-r--r-- | usth/ICT2.7/P3L1 Software Architecture Subtitles/15 - Architectural Design Quiz Solution - lang_en_vs4.srt | 107 |
1 files changed, 107 insertions, 0 deletions
diff --git a/usth/ICT2.7/P3L1 Software Architecture Subtitles/15 - Architectural Design Quiz Solution - lang_en_vs4.srt b/usth/ICT2.7/P3L1 Software Architecture Subtitles/15 - Architectural Design Quiz Solution - lang_en_vs4.srt new file mode 100644 index 0000000..465687c --- /dev/null +++ b/usth/ICT2.7/P3L1 Software Architecture Subtitles/15 - Architectural Design Quiz Solution - lang_en_vs4.srt @@ -0,0 +1,107 @@ +1 +00:00:00,110 --> 00:00:02,540 +So, let's look at these three characteristics one by + +2 +00:00:02,540 --> 00:00:06,660 +one. Scalability for software architecture is its ability to handle + +3 +00:00:06,660 --> 00:00:09,320 +the growth of the software system. For example, for a + +4 +00:00:09,320 --> 00:00:12,610 +web based system, scalability could be the ability to handle + +5 +00:00:12,610 --> 00:00:15,620 +a larger workload by adding new servers to the system. + +6 +00:00:15,620 --> 00:00:19,508 +Scalability is therefore an important characteristic of a software architecture, + +7 +00:00:19,508 --> 00:00:21,938 +especially for the kinds of systems that can grow over + +8 +00:00:21,938 --> 00:00:24,990 +time. So, we're going to mark it as an ideal characteristic. + +9 +00:00:24,990 --> 00:00:27,901 +Cohesion is a measure of how strongly related are + +10 +00:00:27,901 --> 00:00:30,920 +the elements of a module. Clearly, we should shoot + +11 +00:00:30,920 --> 00:00:33,760 +for high and not low cohesion when developing a + +12 +00:00:33,760 --> 00:00:37,100 +system. We want to develop modules whose elements cooperate to + +13 +00:00:37,100 --> 00:00:40,480 +provide the specific piece of functionality rather than modules + +14 +00:00:40,480 --> 00:00:43,410 +consisting of a bunch of elements that provide different + +15 +00:00:43,410 --> 00:00:47,040 +unrelated pieces of functionality. Therefor, low cohesion is definitely + +16 +00:00:47,040 --> 00:00:49,980 +not something that we want. We want high cohesion instead. + +17 +00:00:49,980 --> 00:00:53,040 +As for coupling, coupling is a concept related to cohesion + +18 +00:00:53,040 --> 00:00:55,070 +and is also a measure. In this case though, it + +19 +00:00:55,070 --> 00:00:58,130 +is a measure of how strongly related are the different + +20 +00:00:58,130 --> 00:01:01,830 +modules in a system. Low coupling, which is often correlated with + +21 +00:01:01,830 --> 00:01:05,570 +high cohesion, is an important and ideal characteristic of a + +22 +00:01:05,570 --> 00:01:08,660 +software architecture as it indicates that the different modules in + +23 +00:01:08,660 --> 00:01:12,220 +the system are independent from one another. Each module provides + +24 +00:01:12,220 --> 00:01:15,300 +a specific piece of functionality and it can provide it without + +25 +00:01:15,300 --> 00:01:17,530 +relying too much on other modules. + +26 +00:01:17,530 --> 00:01:19,960 +Basically, systems characterized by low coupling + +27 +00:01:19,960 --> 00:01:23,330 +and high cohesion, are systems that are easier to understand, and to maintain. |