Diferença entre SDLC e modelo de cascata

Modelo SDLC vs Waterfall
Um modelo de ciclo de vida de desenvolvimento de software, ou SDLC, é uma abordagem estruturada para o desenvolvimento de software. Existem várias atividades realizadas em uma ordem seqüencial para alcançar o produto final. Cada fase está associada a uma entrega que atua como uma entrada para a fase subsequente do SDLC. Vamos dar uma olhada nas diferentes fases do modelo SDLC:

1. Requisito - Essa fase é a mais importante para as partes interessadas e gerentes. Esses requisitos determinam os usuários do sistema, suas principais funcionalidades, as entradas e saídas do sistema. A saída de todo esse processo é um documento de especificação funcional que explica o sistema como um todo.
2. Projeto - A entrada para esta fase é o documento de especificação funcional da fase de requisitos. Esta fase detalha a aparência do sistema. A principal saída dessa etapa é o design de software e a decisão dos requisitos de hardware e software.
3. Implementação - É a fase mais longa do SDLC que implementa o design na forma de código. Os desenvolvedores são as principais pessoas que trabalham nesta fase. Em certos modelos SDLC, a fase de teste e design se sobrepõe à fase de implementação.
4. Teste - Isso inclui tanto a unidade quanto o teste do sistema. O teste de unidade ajuda a identificar erros em cada módulo, enquanto o teste do sistema verifica a funcionalidade do sistema como um todo. O objetivo do teste é verificar se o código foi capaz de alcançar a funcionalidade necessária, conforme definido na fase de requisitos ou não.

Alguns dos modelos SDLC mais populares são:
* Modelo em cascata
* Modelo em forma de V
* Modelo de ciclo de vida incremental
* Modelo em espiral

O modelo Waterfall é um dos modelos SDLC mais populares. É uma abordagem clássica ao desenvolvimento de software que segue um método linear e seqüencial para fornecer produtos de software. Este modelo possui diferentes entregas de cada fase. Este modelo oferece os seguintes benefícios:
1. É simples e fácil de implementar.
2. Como o modelo segue uma abordagem linear, fica mais fácil gerenciar.
3. Cada fase é executada uma de cada vez.
4. É melhor utilizado para projetos de pequeno porte.

Com vantagens vêm certas desvantagens. Alguns deles são discutidos abaixo:
1. Existe um fator de alto risco envolvido.
2. Não é benéfico para grandes projetos.
3. Não pode ser usado para projetos em que os requisitos podem mudar.
4. Não é adequado para projetos complexos ou que empregam conceitos OOPS.

Resumo:
1. SDLC, ou Ciclo de Vida de Desenvolvimento de Software, é usado para planejar as atividades do projeto em um
maneira cronológica.
2. A saída de uma fase do SDLC atua como entrada para a próxima fase. Os requisitos são
convertido em design. Design determina o código que precisa ser gravado para
Implementá-lo. O teste verifica se o código atende ao design e aos requisitos.
3. As principais fases do SDLC são: requisito, design, codificação, teste e manutenção.
4. Em um modelo em cascata, um dos modelos SDLC mais populares, cada etapa segue em um
maneira seqüencial sem etapas sobrepostas ou iterativas.