Modelo Incremental em SDLC: Uso, Vantagem e Desvantagem
O que é modelo incremental?
Modelo Incremental é um processo de desenvolvimento de software onde os requisitos são divididos em vários módulos independentes do ciclo de desenvolvimento de software. O desenvolvimento incremental é feito em etapas desde o design da análise, implementação, teste/verificação e manutenção.
Cada iteração passa pelo fases de requisitos, design, codificação e teste. E cada versão subsequente do sistema adiciona funções à versão anterior até que todas as funcionalidades projetadas tenham sido implementadas.
O sistema é colocado em produção quando o primeiro incremento é entregue. O primeiro incremento costuma ser um produto principal onde os requisitos básicos são atendidos e recursos suplementares são adicionados nos incrementos seguintes. Uma vez analisado o produto principal pelo cliente, há o desenvolvimento do plano para o próximo incremento.
As características de um módulo incremental incluem
- O desenvolvimento do sistema é dividido em muitos miniprojetos de desenvolvimento
- Sistemas parciais são construídos sucessivamente para produzir um sistema total final
- O requisito de maior prioridade é abordado primeiro
- Uma vez desenvolvido o requisito, os requisitos para esse incremento são congelados
Fases Incrementais | Atividades realizadas em fases incrementais |
---|---|
Análise de Requisitos |
|
Design |
|
Code |
|
Teste |
|
Quando usar modelos incrementais?
- Os requisitos do sistema são claramente compreendidos
- Quando surge a demanda por um lançamento antecipado de um produto
- Quando Engenharia de software a equipe não é muito qualificada ou treinada
- Quando recursos e metas de alto risco estão envolvidos
- Essa metodologia é mais usada para aplicações web e empresas baseadas em produtos
Vantagens e desvantagens do modelo incremental
Diferenciais | Desvantagens |
---|---|
O software será gerado rapidamente durante o ciclo de vida do software | Requer um bom planejamento |
É flexível e menos dispendioso alterar requisitos e escopo | Os problemas podem ser causados devido à arquitetura do sistema, nem todos os requisitos coletados antecipadamente para todo o ciclo de vida do software |
Ao longo dos estágios de desenvolvimento, mudanças podem ser feitas | Cada fase de iteração é rígida e não se sobrepõe |
Este modelo é menos dispendioso em comparação com outros | Retificar um problema em uma unidade requer correção em todas as unidades e consome muito tempo |
Um cliente pode responder a cada edifício | |
Erros são fáceis de serem identificados |