From b2d80610db6beda38573890ed169815e495bc663 Mon Sep 17 00:00:00 2001 From: Nguyễn Gia Phong Date: Sun, 24 May 2020 16:34:31 +0700 Subject: [usth/ICT2.7] Engineer software --- ...hat is Software Architecture? - lang_en_vs6.srt | 127 +++++++++++++++++++++ 1 file changed, 127 insertions(+) create mode 100644 usth/ICT2.7/P3L1 Software Architecture Subtitles/3 - What is Software Architecture? - lang_en_vs6.srt (limited to 'usth/ICT2.7/P3L1 Software Architecture Subtitles/3 - What is Software Architecture? - lang_en_vs6.srt') diff --git a/usth/ICT2.7/P3L1 Software Architecture Subtitles/3 - What is Software Architecture? - lang_en_vs6.srt b/usth/ICT2.7/P3L1 Software Architecture Subtitles/3 - What is Software Architecture? - lang_en_vs6.srt new file mode 100644 index 0000000..8689e43 --- /dev/null +++ b/usth/ICT2.7/P3L1 Software Architecture Subtitles/3 - What is Software Architecture? - lang_en_vs6.srt @@ -0,0 +1,127 @@ +1 +00:00:00,140 --> 00:00:02,460 +After this interesting conversation with Neno, let me start + +2 +00:00:02,460 --> 00:00:06,060 +the lesson by defining what a software architecture is. + +3 +00:00:06,060 --> 00:00:07,600 +And to do that, I'm going to use two + +4 +00:00:07,600 --> 00:00:11,030 +seminal definitions. The first one is from Dewayne Perry + +5 +00:00:11,030 --> 00:00:13,990 +and Alex Wolf. And they define a software architecture + +6 +00:00:13,990 --> 00:00:17,940 +as elements, form and rationale. In this definition, the + +7 +00:00:17,940 --> 00:00:21,300 +elements are the what, which means the processes, data, + +8 +00:00:21,300 --> 00:00:25,430 +and connectors that compose a software architecture. The form + +9 +00:00:25,430 --> 00:00:27,780 +is the how, the set of properties of + +10 +00:00:27,780 --> 00:00:32,030 +in relationships among these elements. And, finally, the rationale + +11 +00:00:32,030 --> 00:00:35,390 +is the why, the justification for the elements and + +12 +00:00:35,390 --> 00:00:38,440 +their relationships. The second definition I want to use + +13 +00:00:38,440 --> 00:00:40,710 +is from Mary Shaw and David Garland. And + +14 +00:00:40,710 --> 00:00:43,480 +they defined a software architecture as a level of + +15 +00:00:43,480 --> 00:00:47,300 +design that involves four main things, a description of + +16 +00:00:47,300 --> 00:00:50,860 +elements from which these systems are built, the interactions + +17 +00:00:50,860 --> 00:00:54,800 +among those elements, the patterns that guide their composition, and + +18 +00:00:54,800 --> 00:00:58,320 +finally, the constraints on these patterns. As you can see, these + +19 +00:00:58,320 --> 00:01:01,420 +definitions are fairly similar and there are many more alternative + +20 +00:01:01,420 --> 00:01:04,870 +definitions of software architecture. In fact, if we try to search + +21 +00:01:04,870 --> 00:01:08,540 +the term software architecture, we get over two million entries. + +22 +00:01:08,540 --> 00:01:10,670 +And if we look at the images in the results of + +23 +00:01:10,670 --> 00:01:13,110 +the search this is what we get. And I like this + +24 +00:01:13,110 --> 00:01:16,120 +sort of graphical depiction because it gives you a clear idea + +25 +00:01:16,120 --> 00:01:19,300 +the software architecture are prevalent concept, given the number of + +26 +00:01:19,300 --> 00:01:22,600 +results. But they also show you clearly, that software architecture are + +27 +00:01:22,600 --> 00:01:25,550 +complex entities, if you look at some of these pictures. + +28 +00:01:25,550 --> 00:01:28,930 +And ultimately, they show that software architecture are presented in all + +29 +00:01:28,930 --> 00:01:31,700 +kinds of ways including in 3D, if you look at this + +30 +00:01:31,700 --> 00:01:34,970 +picture. We cannot clearly cover all of these definitions in one + +31 +00:01:34,970 --> 00:01:37,340 +lesson. So what I will do instead, is to introduce + +32 +00:01:37,340 --> 00:01:40,750 +a very general definition that encompasses most of the existing ones. -- cgit 1.4.1