1 00:00:00,080 --> 00:00:02,430 O próximo modelo que eu quero discutir é prototipagem 2 00:00:02,430 --> 00:00:05,786 evolutiva, que funciona em quatro fases principais. Nós começamos 3 00:00:05,786 --> 00:00:08,393 por um conceito inicial, então nós desenhamos e criamos 4 00:00:08,393 --> 00:00:11,509 um protótipo baseado neste conceito inicial, refinamos o protótipo 5 00:00:11,509 --> 00:00:14,002 até que ele se torne aceitável e finalmente nós completamos e 6 00:00:14,002 --> 00:00:17,550 liberamos o protótipo. Desta maneira, quando desenvolvemos um sistema usando 7 00:00:17,550 --> 00:00:22,330 prototipagem evolutiva, o sistema é constantemente refinado e refeito. 8 00:00:22,330 --> 00:00:25,340 Então este é o processo ideal quando nem todos os requisitos 9 00:00:25,340 --> 00:00:28,330 estão bem compreendidos. O que é uma situação bastante usual. Então, olhando 10 00:00:28,330 --> 00:00:30,370 para isso um pouco mais detalhadamente, o que ocorre é que 11 00:00:30,370 --> 00:00:33,760 os desenvolvedores começam no desenvolvimento das partes do sistema que eles 12 00:00:33,760 --> 00:00:37,690 compreendem, ao invés de trabalhar no desenvolvimento do sistema com um tido, incluindo as 13 00:00:37,690 --> 00:00:40,520 parte que não estão ainda muito claras. O sistema 14 00:00:40,520 --> 00:00:43,900 parcial é então mostrado ao cliente e a opinião do cliente 15 00:00:43,900 --> 00:00:47,480 é usada para guiar a próxima iteração, na qual tanto modificações 16 00:00:47,480 --> 00:00:50,340 são feitas nas atuais feições, como novas feições são adicionadas. 17 00:00:50,340 --> 00:00:53,060 Assim, ou o protótipo atual é melhorado ou o 18 00:00:53,060 --> 00:00:56,270 protótipo é aumentado. E finalmente, quando o cliente concorda de 19 00:00:56,270 --> 00:00:58,980 que o protótipo está suficientemente bom, os desenvolvedores irão completar todo 20 00:00:58,980 --> 00:01:01,410 o trabalho faltante no sistema e liberar o protótipo 21 00:01:01,410 --> 00:01:03,930 como o produto final. Então vamos discutir como fizemos 22 00:01:03,930 --> 00:01:06,780 para os modelos de processos anteriores, quais são as principais vantagens 23 00:01:06,780 --> 00:01:10,580 e desvantagens de prototipagem evolutiva. Neste caso, a principal 24 00:01:10,580 --> 00:01:15,440 vantagem é apreciação imediada. Os desenvolvedores recebem a opinião imediatamente, 25 00:01:15,440 --> 00:01:17,560 tão logo eles produziram o protótipo e o mostraram para o 26 00:01:17,560 --> 00:01:21,050 cliente e desta maneira, o risco de implementar erradamente o sistema é 27 00:01:21,050 --> 00:01:25,150 minimizado. O principal ponto negativo é que isso é difícil de planejar. 28 00:01:25,150 --> 00:01:29,070 Quando é usada a prototipagem evolutiva é difícil de antecipar por 29 00:01:29,070 --> 00:01:31,240 quanto tempo o desenvolvimento irá levar, porquê nós não sabemos quantas 30 00:01:31,240 --> 00:01:34,550 iterações serão necessárias. E outro inconveniente é que isso pode facilmente 31 00:01:34,550 --> 00:01:37,120 se tornar uma desculpa para começar a fazer aquele tipo de abordagem de 32 00:01:37,120 --> 00:01:40,530 "corte-e-correção" na qual nós começamos a enjambrar as coisas, corrigir os 33 00:01:40,530 --> 00:01:43,640 principais defeitos quando o cliente nos dá sua opinião e então continuamos desta 34 00:01:43,640 --> 00:01:46,780 maneira, até que o produto final se torne tipo algo que 35 00:01:46,780 --> 00:01:49,830 funciona, mas que não é de fato um produto de alta qualidade. Outra coisa 36 00:01:49,830 --> 00:01:51,910 que eu quero apontar antes de irmos ao próximo 37 00:01:51,910 --> 00:01:54,490 modelo de criação de software é que existem diversas maneiras de 38 00:01:54,490 --> 00:01:56,700 prototipagem, então a prototipagem evolutiva é apenas 39 00:01:56,700 --> 00:01:58,010 uma delas. Por exemplo, prototipagem 40 00:01:58,010 --> 00:02:02,100 descartável é outra maneira de prototipagem na qual o protótipo é 41 00:02:02,100 --> 00:02:05,580 usado apenas para coletar requisitos, mas é descartado ao final 42 00:02:05,580 --> 00:02:08,710 da coleta de requisitos, ao invés de ser evoluído, como ocorre aqui.