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 --- ...lutionary Prototyping Process - lang_en_vs4.srt | 167 +++++++++++++++++++++ 1 file changed, 167 insertions(+) create mode 100644 usth/ICT2.7/P1L2 Life Cycle Models Subtitles/13 - Evolutionary Prototyping Process - lang_en_vs4.srt (limited to 'usth/ICT2.7/P1L2 Life Cycle Models Subtitles/13 - Evolutionary Prototyping Process - lang_en_vs4.srt') diff --git a/usth/ICT2.7/P1L2 Life Cycle Models Subtitles/13 - Evolutionary Prototyping Process - lang_en_vs4.srt b/usth/ICT2.7/P1L2 Life Cycle Models Subtitles/13 - Evolutionary Prototyping Process - lang_en_vs4.srt new file mode 100644 index 0000000..cf068c0 --- /dev/null +++ b/usth/ICT2.7/P1L2 Life Cycle Models Subtitles/13 - Evolutionary Prototyping Process - lang_en_vs4.srt @@ -0,0 +1,167 @@ +1 +00:00:00,080 --> 00:00:02,430 +The next process model I want to discuss is evolutionary + +2 +00:00:02,430 --> 00:00:05,786 +prototyping, which works in four main phases. We start + +3 +00:00:05,786 --> 00:00:08,393 +from an initial concept, then we design and implement + +4 +00:00:08,393 --> 00:00:11,509 +a prototype based on this initial concept, refine the prototype + +5 +00:00:11,509 --> 00:00:14,002 +until it is acceptable, and finally we complete and + +6 +00:00:14,002 --> 00:00:17,550 +release the prototype. Therefore, when developing a system using + +7 +00:00:17,550 --> 00:00:22,330 +evolutionary prototyping, the system is continually refined and rebuilt. + +8 +00:00:22,330 --> 00:00:25,340 +So it is an ideal process when not all requirements + +9 +00:00:25,340 --> 00:00:28,330 +are well understood. Which is a very common situation. So, looking + +10 +00:00:28,330 --> 00:00:30,370 +at this in a little more details, what happens is that + +11 +00:00:30,370 --> 00:00:33,760 +developers start by developing the parts of the system that they + +12 +00:00:33,760 --> 00:00:37,690 +understand, instead of working on developing a whole system, including parts + +13 +00:00:37,690 --> 00:00:40,520 +that might not be very clear at that stage. The partial + +14 +00:00:40,520 --> 00:00:43,900 +system is then shown to the customer and the customer feedback + +15 +00:00:43,900 --> 00:00:47,480 +is used to drive the next iteration, in which either changes + +16 +00:00:47,480 --> 00:00:50,340 +are made to the current features or new features are added. + +17 +00:00:50,340 --> 00:00:53,060 +So, either the current prototype is improved or the + +18 +00:00:53,060 --> 00:00:56,270 +prototype is extended. And finally, when the customer agrees that + +19 +00:00:56,270 --> 00:00:58,980 +the prototype is good enough, the developers will complete all + +20 +00:00:58,980 --> 00:01:01,410 +the remaining work on the system and release the prototype + +21 +00:01:01,410 --> 00:01:03,930 +as the final product. So let's discuss as we did + +22 +00:01:03,930 --> 00:01:06,780 +for the previous process models, what are the main advantages + +23 +00:01:06,780 --> 00:01:10,580 +and disadvantages of evolutionary prototyping. In this case, the main + +24 +00:01:10,580 --> 00:01:15,440 +advantage is the immediate feedback. Developers get feedback immediately as + +25 +00:01:15,440 --> 00:01:17,560 +soon as they produce a prototype and they show it to + +26 +00:01:17,560 --> 00:01:21,050 +the customer and therefore, the risk of implementing the wrong system is + +27 +00:01:21,050 --> 00:01:25,150 +minimized. The main negative is the fact that it's difficult to plan. + +28 +00:01:25,150 --> 00:01:29,070 +When using evolutionary prototype it is difficult to plan in advance how + +29 +00:01:29,070 --> 00:01:31,240 +long the development is going to take, because we don't know how + +30 +00:01:31,240 --> 00:01:34,550 +many iterations will be needed. And another drawback is that it can + +31 +00:01:34,550 --> 00:01:37,120 +easily become an excuse to do kind of do cut and fix + +32 +00:01:37,120 --> 00:01:40,530 +kind of approaches in which we hack something together, fix the main + +33 +00:01:40,530 --> 00:01:43,640 +issues when the customer gives us feedback, and then continue this + +34 +00:01:43,640 --> 00:01:46,780 +way, until the final product is something that is kind of + +35 +00:01:46,780 --> 00:01:49,830 +working, but it's not really a product of high quality. Something + +36 +00:01:49,830 --> 00:01:51,910 +else I want to point out before we move to the next + +37 +00:01:51,910 --> 00:01:54,490 +software process model is that there are many different kinds of + +38 +00:01:54,490 --> 00:01:56,700 +prototyping, so evolutionary prototyping is just + +39 +00:01:56,700 --> 00:01:58,010 +one of them. For example, throwaway + +40 +00:01:58,010 --> 00:02:02,100 +prototyping is another kind of prototyping in which the prototype is + +41 +00:02:02,100 --> 00:02:05,580 +just used to gather requirements, but is thrown away at the end + +42 +00:02:05,580 --> 00:02:08,710 +of the requirements gathering, instead of being evolved as it happens here. -- cgit 1.4.1