Modelos : Cascata , Iterativo e Incremental.
Breve apresentação sobre os modelos Cascata e Iterativo e Incremental:
Modelo Cascata
O
modelo cascata é utilizado principalmente quando os requisitos de um
determinado problema são bem compreendidos. O modelo cascata utilizado por exemplo, quando precisamos fazer adaptações ou
aperfeiçoamentos em um sistema que já existe,por motivos, de adaptação de novas normas governamentais, então é necessário a atualização.
Outro caso em que podemos utilizar o modelo cascata é quando o software necessita de uma
nova funcionalidade e os requisitos estão bem definidos e são
estáveis..O Modelo Cascata, é um modelo de desenvolvimento continuo do software no qual o processo é visto como algo que flui constantemente para frente (como uma cascata) através das suas etapas.
O modelo cascata também possui algumas variações como o “modelo v”. Este modelo pode ser visto na Figura 2.
Este modelo descreve relações entre ações da garantia da qualidade e as ações associadas à comunicação, modelagem e atividades de construção.
As diferentes etapas de desenvolvimento:

Análise
e definição dos requisitos
Nesta
etapa, estabelecem-se os requisitos do produto que se deseja
desenvolver, o que consiste usualmente nos serviços que se devem
fornecer, limitações e objetivos do software.
Projeto
do sistema
Engenharia
de Programação O projeto do sistema é um processo de vários
passos que se centraliza em quatro atributos diferentes do sistema:
estrutura de dados, arquitetura do software, detalhes procedais e
caracterização das interfaces.
Implementação:
Esta
é a etapa em que são criados os programas. Se o projeto possui um
nível de detalhe elevado, a etapa de codificação pode
implementar-se automaticamente.
Teste
do sistema
Esta
fase decide se foram solucionados erros de “comportamento” do
software e assegura que as entradas definidas produzam resultados
reais que coincidam com os requisitos especificados.
Manutenção
Essa
etapa consiste na correção de erros que não foram previamente
detectados, em melhorias funcionais e de preferência e outros tipos
de suporte.
Vantagens
do modelo cascata:
·Torna o processo de desenvolvimento estruturado. Tem uma ordem sequencial de fases. Cada fase cai em cascata na próxima e cada fase deve estar terminada antes do início da seguinte;
·Todas as atividades identificadas nas fases do modelo são fundamentais e estão na ordem certa;
·Esta abordagem é atualmente a norma e provavelmente permanecerá como tal nos próximos tempos.
·Torna o processo de desenvolvimento estruturado. Tem uma ordem sequencial de fases. Cada fase cai em cascata na próxima e cada fase deve estar terminada antes do início da seguinte;
·Todas as atividades identificadas nas fases do modelo são fundamentais e estão na ordem certa;
·Esta abordagem é atualmente a norma e provavelmente permanecerá como tal nos próximos tempos.
Desvantagens
do modelo cascata:
·Não fornece feedback entre as fases e não permite a atualização ou redefinição das fases anteriores;
·Não suporta modificações nos requisitos;
·Não prevê a manutenção;
·Não permite a reutilização;
·É excessivamente sincronizado;
·Se ocorrer um atraso todo o processo é afetado;
·Faz aparecer o software muito tarde.
·Não fornece feedback entre as fases e não permite a atualização ou redefinição das fases anteriores;
·Não suporta modificações nos requisitos;
·Não prevê a manutenção;
·Não permite a reutilização;
·É excessivamente sincronizado;
·Se ocorrer um atraso todo o processo é afetado;
·Faz aparecer o software muito tarde.
Modelo
iterativo
e
incremental
O
desenvolvimento
iterativo
e
incremental
foi
criado para solucionar os erros de um modelo cascata.

Por exemplo, se uma determinada versão de um software utilitário fornecido por terceiros que será integrado ao nosso projeto estiver disponível apenas numa data mais posterior, poderíamos deixar para desenvolver um determinado complemento do software que use essa versão mais atual numa data posterior quando esse utilitário já estiver disponível para uso.
Desenvolvimento iterativo
Esse processo iterativo é aquele que faz melhorias através de tentativas contínuas de refinamento. Por exemplo,uma equipe que está desenvolvendo um software,realiza sua primeira tentativa,porém existem pontos falhos, com informações incompletas em algumas partes. A equipe de forma iterativa aprimora essas partes até que o produto atinja o ponto de forma satisfatória. Com cada iteração, o software é melhorado ,a partir de novos testes,novas aplicações.
É
uma estratégia
de planejamento de retrabalho em que o tempo de revisão e melhorias
de partes do sistema é pré-definido. Isto não pressupõe
desenvolvimento incremental, mas funciona muito bem com ele.
A
ideia
básica por trás da abordagem iterativa é desenvolver um sistema de
software incremental.O aprendizado ocorre simultaneamente tanto
para o desenvolvedor, quanto para o usuário do sistema.
Vantagens do Modelo Iterativo
Vantagens do Modelo Iterativo
-
Ambas as partes ( desenvolvedores e usuários) tem uma grande participação e comunicação entre si.
-
Grande envolvimento do utilizador e do cliente.
-
Os resultados mostrados permitirão que os usuários tenham confiança em um bom resultado, já que se trata de uma evolução;
-
A cada ciclo do sistema os usuários e cliente poderão utilizar o sistema diretamente, pois também eles são os “testadores” do sistema, durante o processo;
-
Os riscos podem ser melhores administradas em pequenos pedaços do sistema desenvolvidos em pequenos espaços de tempo;
-
Sistemas complexos ficam mais claros e menos complexos pois a implementação é aos poucos, (não é feita do zero);
-
Ao fim de cada iteração pode-se ter feedback para ter noção de como está o projeto, mesmo havendo desacordo há tempo para mudanças (o contrário do modelo Cascata).
-
Alterações nos requisitos podem ser rapidamente incorporada ao desenvolvimento.
Desvantagens
do Modelo Iterativo
-
Como durante o processo de desenvolvimento o sistema é adaptado e refinado, o final pode ser totalmente diferente do inicial;
-
Aumento de escopo; com aparição de requisitos novos, o sistema pode nunca terminar.
-
Gerentes acostumados com modelo cascata pode ter problemas ao migrar para esse modelo mais flexível;
-
É necessário certo conhecimento para começar a usar esse modelo; inexperiência com a forma de trabalhar no modelo Iterativo pode levar a problemas posteriores;
Desenvolvimento incremental
O processo incremental é aquele em que o software é construído e entregue por partes. Cada parte ou incremento representa um agrupamento de funcionalidades completas. O incremento pode ser pequeno ou grande, ou seja, ele pode variar apenas de uma tela de relatórios simples, para um conjunto altamente flexível de telas de gerenciamento de dados. Cada incremento é codificado e testado, e a expectativa geral é que o trabalho tenha a conclusão mais completa possível.
É uma estratégia de planejamento estagiado em que várias partes do sistema são desenvolvidas em paralelo, e integradas quando completas.A alternativa ao desenvolvimento incremental é desenvolver todo o sistema com uma integração única.
Vantagens
do Modelo Incremental
-
As versões são fornecidos após cada iteração do modelo incremental;
-
O Modelo Incremental inclui o uso do software pelo usuário para que as mudanças sejam feitas de acordo com o mesmo;
-
Não afeta o lado financeiro, porque ele provê o “core”/essência do software que o cliente precisa, o que vai ajudar o cliente a manter o negócio da mesma forma, sem alterações no lado financeiro;
-
É flexível, facilita gerenciar processos;
-
Faz um software melhor com uma melhor estrutura;
-
Melhor gerenciamento de riscos; você pode (a) confirmar o resultado com o cliente depois de cada versão do sistema e (b) sempre verificar se estão fazendo o que está de acordo com o plano ou não, e corrigi-los na próxima versão do software;
-
Os testes são simples;
Desvantagens
do Modelo Incremental
-
Cada fase de uma iteração é rígida e não se sobrepõem uns aos outros;
-
Podem surgir problemas relativos à arquitetura do sistema, porque nem todos os requisitos estão reunidos na frente de todo o ciclo de vida do software.
-
O modelo Incremental precisa ser relativamente pequeno.
Parte do texto foi copiada.
ResponderExcluir