Modelo De Desenvolvimento De Software
Exames: Modelo De Desenvolvimento De Software. Pesquise 862.000+ trabalhos acadêmicosPor: Hiagora • 1/9/2014 • 1.230 Palavras (5 Páginas) • 593 Visualizações
Seqüencial Linear (cascata)
O modelo em cascata é um modelo de desenvolvimento de software seqüencial no qual o desenvolvimento é visto como um fluir constante para frente (como uma cascata) através das fases de análise de requisitos, projeto, codificação, testes (integração) e manutenção de software.
Etapas do modelo cascata :
Análise de requisitos de software : Intensificação da análise de requisitos no que o software precisa ter, conhecimento do domínio da informação do software, função, comportamento, desempenho e interface.
Projeto : Enfoca a estrutura de dados, arquitetura de software, representações da interface e detalhes procedimentais. Traduz os requisitos de forma que a representação do software possa ser avaliada antes da condição.
Codificação (teste de unidade) : Tradução do projeto para linguagem de máquina.
Teste (Integração) : Condução de teste para descobrir erros e garantir que entradas definidas produzirão resultados reais, que concordam com os resultados exigidos.
Manutenção (operação) : Se torna necessária quando se tem uma modificação. Reaplica cada uma das fases precedentes a um programa existente.
Vantagem:
Maior capacidade de organização do projeto, visto que uma etapa só inicia após a anterior.
Desvantagem:
Modificações poderão causar confusões.
Dificilmente o cliente expõe todos os requisitos de uma só vez.
Só teremos uma versão executável após o término do projeto.
Prototipagem.
Prototipação é uma abordagem baseada em uma visão evolutiva do desenvolvimento de software, afetando o processo como um todo. Envolve a produção de versões iniciais -protótipos (análogo a maquetes para a arquitetura) - de um sistema futuro com o qual é possível realizar verificações e experimentos, com o intuito de avaliar algumas de suas características antes que o sistema venha realmente a ser construído, de forma definitiva.
Etapas do modelo prototipagem : Coleta e refinamento dos requisitos, projeto rápido, construção do protótipo, avaliação do protótipo pelo cliente, refinamento do produto, engenharia do produto.
Problemas
O cliente imagina que seja a sua versão final sem considerar que na sua geração requisitos de qualidade ou manutenabilidade não foram tratados. O cliente exige que seja utilizado o protótipo com alguns “remendos” e a gerencia aceita.
A utilização de linguagens e tecnologia quaisquer pode ser uma prática pelo desenvolvedor que acaba se adaptando ao seu uso e esquece da real necessidade que teve ao escolhe-las.
Solução
Definir as regras do jogo no começo.
RAD
Rapid Application Development (RAD) ou Desenvolvimento Rápido de Aplicação (em português), é um modelo de processo de desenvolvimento de software iterativo e incremental que enfatiza um ciclo de desenvolvimento extremamente curto (entre 60 e 90 dias).
Etapas do modelo RAD :
Modelagem do negócio: modelagem do fluxo de informação entre as funções de negócio.
Modelagem de dados: fluxo de informação refinado num conjunto de objetos de dados, que darão suporte ao negócio.
Modelagem do processo: os objetos de dados obtidos são transformados para conseguir o fluxo de informação necessários para implementar uma função do negócio.
Geração da aplicação: trabalha com o reuso de componentes de programas existentes ou cria componentes reusáveis.
Teste e entrega: como muitos dos seus componentes já devem ter sido testados, esta fase acaba por ser reduzida.
Vantagens :
Enfatiza um ciclo de desenvolvimento extremamente curto (entre 60 e 90 dias);
Cada função principal pode ser direcionada para a uma equipe RAD separada e então integrada a formar um todo;
Criação e reutilização de componentes;
Desvantagens :
Para projetos grandes (mas escaláveis) o RAD exige recursos humanos suficientes para criar o número correto de equipes, isso implica um alto custo com a equipe;
O envolvimento com o usuário tem que ser ativo;
O RAD não é aconselhável quando os riscos técnicos são altos e quando se está testando novas tecnologias ou quando o novo software exige alto grau de interoperabilidade com programas de computador existentes. Falta de prazo pode implicar qualidade reduzida, e há necessidade de habilidade maior dos desenvolvedores, e suporte maior da gerência e dos clientes.
Modelos Evolucionários
Modelos de processo que foram projetados para acomodar um produto que evolui com o tempo. São divididos em dois : Incremental e Espiral.
Modelo Incremental:
Combina o modelo seqüencial linear com a filosofia interativa da prototipagem. Seu primeiro incremento é chamado de núcleo do produto.
Desenvolve-se um plano para cada incremento de forma que o núcleo do produto seja modificado para melhor satisfazer às necessidades do cliente e a elaboração de características e funcionalidades adicionais.
Modelo Espiral :
O Modelo em espiral é um processo de desenvolvimento de software que combina elementos de projeto prototipação-em-etapas, em um esforço para combinar as vantagens dos conceitos de top-down e bottom-up, acrescentando um novo elemento, a análise de riscos que falta a esses paradigmas.
O modelo espiral é usado com mais freqüência em grandes projetos. Para pequenos projetos, os conceitos de desenvolvimento de software ágil
...