No modelo XP, os desenvolvedores e usuários trabalham juntos para priorizar histórias de usuário e criar um protótipo incremental que se tornará a próxima versão do software. Já o modelo espiral permite incorporar características de outros modelos de forma flexível e adaptável às necessidades do projeto, prevendo prototipação, desenvolvimento evolutivo e cíclico.
No modelo XP, os desenvolvedores e usuários trabalham juntos para priorizar histórias de usuário e criar um protótipo incremental que se tornará a próxima versão do software. Já o modelo espiral permite incorporar características de outros modelos de forma flexível e adaptável às necessidades do projeto, prevendo prototipação, desenvolvimento evolutivo e cíclico.
No modelo XP, os desenvolvedores e usuários trabalham juntos para priorizar histórias de usuário e criar um protótipo incremental que se tornará a próxima versão do software. Já o modelo espiral permite incorporar características de outros modelos de forma flexível e adaptável às necessidades do projeto, prevendo prototipação, desenvolvimento evolutivo e cíclico.
4.1 Qual é a diferença entre o modelo de Extreme Programming (XP) e o
modelo espiral no tratamento dos protótipos incrementais?
Na Extreme Programming (XP), os envolvidos e os desenvolvedores
trabalham juntos para agrupar as histórias de usuário mais importantes em um protótipo que se tornará a próxima versão do software e determinam a sua data de conclusão. O foco está na agilidade de equipes e qualidade de projetos, apoiada em valores como simplicidade, comunicação, feedback e coragem que nos submetem ao reconhecimento de que XP é uma metodologia baseada em comportamentos e atitudes. Dessa forma, ela propicia que o projeto seja executado dentro do prazo e do orçamento, fazendo então com que o cliente fique satisfeito e a equipe de desenvolvimento não fique maluca por causa do projeto. Já o Modelo Espiral prove um “metamodelo” que pode acomodar diversos processos específicos. Isto significa que podemos encaixar nele as principais características dos modelos vistos anteriormente, adaptando-os a necessidades específicas de desenvolvedores ou às particularidades do software a ser desenvolvido. Este modelo prevê prototipação, desenvolvimento evolutivo e cíclico, e as principais atividades do modelo cascata.
4.2 Escreva os critérios de aceitação para a história de usuário que
descrevem o uso do recurso “sites favoritos” ou “favoritos” na maioria dos navegadores Web que você elaborou no Problema 3.7 do Capítulo 3.
Ao clicar no ícone de estrela, ele muda de cor, passando de preto e
branco para colorido; Ao clicar no ícone de estrela, uma nova janela abre com a mensagem “Deseja salvar este site?”, juntamente com duas opções clicáveis, sendo estas “Salvar”, na esquerda com a cor de botão verde com as letras brancas contornadas por preto, e “Cancelar”, a direita com a cor de botão cinza, com as letras brancas contornadas por preto. Quando o usuário clicar em “Salvar”, o site será salvo em uma pasta denominada por “Favoritos” que ficará salvo dentro do navegador, tal como uma extensão. Quando o usuário clicar em “Cancelar”, nada será salvo e o processo retornará a página que o usuário estava navegando.
4.3 Como você criaria um projeto de arquitetura preliminar para o
primeiro protótipo para um aplicativo móvel que permite que o usuário crie e salve uma lista de compras no seu dispositivo?
4.4 Onde você obteria os dados históricos necessários para estimar o
tempo de desenvolvimento para as histórias de usuário em um protótipo antes da sua elaboração?
4.5 Crie uma série de desenhos representando as telas mais importantes
de um protótipo de papel para o aplicativo de lista de compras criado no Problema 4.3.
4.6 Como você testaria a viabilidade do protótipo de papel criado para o
Problema 4.5?
4.7 Quais dados são necessários para tomar a decisão go/no-go durante
a avaliação de um protótipo evolucionário?
4.8 Qual a diferença entre a manutenção reativa e a proativa?