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 --- .../27 - Modeling Requirements - lang_en_vs4.srt | 223 +++++++++++++++++++++ 1 file changed, 223 insertions(+) create mode 100644 usth/ICT2.7/P2L1 Requirements Engineering Subtitles/27 - Modeling Requirements - lang_en_vs4.srt (limited to 'usth/ICT2.7/P2L1 Requirements Engineering Subtitles/27 - Modeling Requirements - lang_en_vs4.srt') diff --git a/usth/ICT2.7/P2L1 Requirements Engineering Subtitles/27 - Modeling Requirements - lang_en_vs4.srt b/usth/ICT2.7/P2L1 Requirements Engineering Subtitles/27 - Modeling Requirements - lang_en_vs4.srt new file mode 100644 index 0000000..d4ade17 --- /dev/null +++ b/usth/ICT2.7/P2L1 Requirements Engineering Subtitles/27 - Modeling Requirements - lang_en_vs4.srt @@ -0,0 +1,223 @@ +1 +00:00:00,220 --> 00:00:03,550 +Once we collected the required knowledge on the requirements for + +2 +00:00:03,550 --> 00:00:06,120 +the system that we're developing, we need to model it in + +3 +00:00:06,120 --> 00:00:08,430 +a structured and clear way, so that it can be + +4 +00:00:08,430 --> 00:00:12,100 +analyzed and refined. And there are really tons of ways to + +5 +00:00:12,100 --> 00:00:15,840 +do that, depending on your focus and objectives. More specifically, + +6 +00:00:15,840 --> 00:00:18,940 +when modeling requirements you need to decide what you want to + +7 +00:00:18,940 --> 00:00:21,710 +model and how you want to model it. So let's look + +8 +00:00:21,710 --> 00:00:25,390 +at these two aspects independently. What you decide to model depends + +9 +00:00:25,390 --> 00:00:28,270 +on where your emphasis is. That is on which + +10 +00:00:28,270 --> 00:00:31,390 +aspects of the requirements you want to focus. For + +11 +00:00:31,390 --> 00:00:34,880 +example if your emphasis is on the characteristics of + +12 +00:00:34,880 --> 00:00:37,970 +the enterprise of the company that you are analyzing you + +13 +00:00:37,970 --> 00:00:40,240 +may want to model goals and objectives of the + +14 +00:00:40,240 --> 00:00:44,380 +company, or its organizational structure, its task and dependencies + +15 +00:00:44,380 --> 00:00:47,040 +and so on. Conversely, if your focus is on + +16 +00:00:47,040 --> 00:00:50,500 +information and behaviors, you might want to concentrate on aspects + +17 +00:00:50,500 --> 00:00:53,800 +such as the structure of information, various behavioral views + +18 +00:00:53,800 --> 00:00:55,480 +some of which we will see in the next + +19 +00:00:55,480 --> 00:00:59,650 +lesson, or maybe time or sequencing requirements. Finally, if + +20 +00:00:59,650 --> 00:01:02,750 +you're mostly interested in the quality aspects of your + +21 +00:01:02,750 --> 00:01:06,790 +system, you will focus on the various non-functional properties + +22 +00:01:06,790 --> 00:01:09,070 +of the software that are relevant in the context + +23 +00:01:09,070 --> 00:01:13,570 +considered. For example reliability, robustness, security, and so on. + +24 +00:01:13,570 --> 00:01:15,550 +You will just pick the ones that are relevant for + +25 +00:01:15,550 --> 00:01:18,540 +your context. And as we said, there's a second dimension. + +26 +00:01:18,540 --> 00:01:21,050 +After you have decided what to model in your system, + +27 +00:01:21,050 --> 00:01:23,480 +you have to decide how you want to model it. + +28 +00:01:23,480 --> 00:01:25,860 +So I want to show here some options for modeling + +29 +00:01:25,860 --> 00:01:30,380 +enterprises, information, and quality aspects. And as you can see + +30 +00:01:30,380 --> 00:01:34,100 +here for each type of information there are many possible + +31 +00:01:34,100 --> 00:01:36,840 +models that we can use to represent it. And all + +32 +00:01:36,840 --> 00:01:38,750 +these models have advantages and + +33 +00:01:38,750 --> 00:01:41,400 +disadvantages, different levels of formality and + +34 +00:01:41,400 --> 00:01:44,000 +different focus. Something else that I want to point out + +35 +00:01:44,000 --> 00:01:47,145 +about these models is the fact that these models are often + +36 +00:01:47,145 --> 00:01:50,980 +orthogonal to one another, especially if we consider models in different + +37 +00:01:50,980 --> 00:01:54,620 +categories. So what that means is that they're complimentary rather than + +38 +00:01:54,620 --> 00:01:58,310 +mutually exclusive. Different models can be used to provide views + +39 +00:01:58,310 --> 00:02:01,290 +of the requirements from different perspectives, and we will not see + +40 +00:02:01,290 --> 00:02:03,700 +most of these models in this course, but I wanted to + +41 +00:02:03,700 --> 00:02:06,550 +list them anyways to give you an idea of how many + +42 +00:02:06,550 --> 00:02:09,490 +there are and how vast is this area. As far + +43 +00:02:09,490 --> 00:02:11,540 +as we are concerned in the course and for the + +44 +00:02:11,540 --> 00:02:14,660 +projects we will express requirements using one of two main + +45 +00:02:14,660 --> 00:02:19,010 +ways. Using natural language, that is informal specifications and using + +46 +00:02:19,010 --> 00:02:22,600 +UML diagrams, which is graphical models. And we will introduce + +47 +00:02:22,600 --> 00:02:25,840 +UML and the most important diagrams in the next lesson. + +48 +00:02:25,840 --> 00:02:27,330 +And the only other type of models that I want + +49 +00:02:27,330 --> 00:02:31,610 +to mentions explicitly are goal models because they're extremely popular. + +50 +00:02:31,610 --> 00:02:34,930 +So the main idea with goal models is it start with the main goal of + +51 +00:02:34,930 --> 00:02:36,990 +the system and then keep refining it + +52 +00:02:36,990 --> 00:02:39,654 +by decomposing it in sub-goals. So it's kind + +53 +00:02:39,654 --> 00:02:41,610 +of a very natural way of progressing. + +54 +00:02:41,610 --> 00:02:44,210 +And you continue this refinement until you get + +55 +00:02:44,210 --> 00:02:47,150 +to goals that can be operationalized, and represent + +56 +00:02:47,150 --> 00:02:49,380 +the basic units of functionality of the system. -- cgit 1.4.1