Alguém pode explicar o processo do modelo V? Por que é diferente do modelo Waterfall?

19

Parece que o modelo V é apenas o modelo em cascata, com a metade inferior da cachoeira dobrada para cima para formar um V. Não vejo como ele adiciona algo novo.

Pelos diagramas, também não entendo o fluxo. Há setas apontando em todas as direções e não consigo entender o que vem primeiro. Seguimos o V do canto superior esquerdo, até o centro inferior e depois voltamos para o canto superior direito? Ou progredimos no V fazendo tudo mais alto antes do item mais baixo?

A internet está sem uma explicação suficiente desse modelo. Seria incrível se alguém pudesse explicá-lo no verdadeiro formulário StackExchange :)

Modelo V

CodyBugstein
fonte

Respostas:

17

O modelo V é uma extensão do modelo Waterfall, portanto, não espere que seja extremamente diferente.

Basicamente, você segue o modelo V da esquerda para a direita , assim como no modelo Waterfall. No Waterfall, você faz requisitos, design, implementação, verificação e, finalmente, manutenção. Da mesma forma, no modelo V, você executa requisitos, design, implementação, verificação e manutenção: as mesmas etapas nos dois casos.

As principais diferenças com o Waterfall são o modo como é apresentado e a ênfase nos testes.

Representar o fluxo em forma de V ajuda a fazer a diferença entre tudo o que vem antes da codificação (requisitos, arquitetura e design) e tudo o que segue a codificação (essencialmente testes). Embora os testes sejam apenas uma das cinco etapas do Waterfall, parece praticamente metade do processo no modelo V.

O diagrama da sua pergunta é um pouco mais complicado. O que ele tenta mostrar é que, por exemplo, a etapa de design do sistema leva não apenas ao documento de design do sistema, como o modelo Waterfall sugeriria, mas também ao design de testes do sistema, que mais tarde ajudará a escrever testes do sistema. O diagrama apenas enfatiza ainda mais os testes . Por fim, executar o design de teste do sistema ajuda no design da arquitetura (seria complicado fazer o design da arquitetura, independentemente do design do teste do sistema).


Pesquisando em que outras explicações na internet, não posso deixar de citar o seguinte artigo de Bhakti Satalkar :

A principal diferença entre o modelo em cascata e o modelo V é que, no modelo em cascata, as atividades de teste são realizadas após o término das atividades de desenvolvimento. Por outro lado, no modelo V, as atividades de teste começam com o primeiro estágio. Em outras palavras, o modelo em cascata é um processo contínuo, enquanto o modelo V é um processo simultâneo. Em comparação com um software fabricado usando o modelo em cascata, o número de defeitos no software fabricado usando o modelo V é menor. Isso se deve ao fato de existirem atividades de teste que são realizadas simultaneamente no modelo V. Portanto, o modelo em cascata é usado quando os requisitos do usuário são corrigidos. Se os requisitos do usuário são incertos e continuam mudando, o modelo V é a melhor alternativa.

Essa explicação é enganosa . Isso só seria verdade se você substituir o “modelo V” na cotação por qualquer método Agile.

Ao contrário dos estados do artigo, no modelo V, o teste é realizado após a codificação; por exemplo, consulte Wikipedia :

Uma crítica prática comum do modelo V é que ele leva a que os testes sejam compactados em janelas apertadas no final do desenvolvimento, quando os estágios anteriores ultrapassam, mas a data de implementação permanece fixa.

Enquanto, no modelo V, o design de teste do sistema segue o design do sistema sem aguardar a conclusão da implementação do produto, isso não significa que os próprios testes sejam executados antes da codificação. O autor confunde o modelo V com abordagens ágeis, como Test Driven Development (TDD) em Extreme Programming (XP).

Arseni Mourzenko
fonte
1
Sim - são citações como a que você citou que me confundiram! Ele fez parecer que o processo estava progredindo para baixo e não seguindo aV
CodyBugstein
2
Além disso, em cascata, o modelo V mostra as camadas horizontais de responsabilidade como elas existem na realidade. Por exemplo, os níveis mais altos mostram os requisitos e o teste do sistema e não se preocupam com os detalhes da fonte. O nível de fonte é separada do produto acabado (necessário para sistemas muito grandes -., Onde você pode ter 20 CSCI do composto de um par de milhões de SLOC cada)
mattnz
Representing the flow as V-shape helps making the difference between everything which comes prior to coding (requirements, architecture and design) and everything which follows coding (essentially testing). While tests are just one of five steps in Waterfall, it looks like practically half of the process in V-model.= acertou em cheio! Graças
CodyBugstein