1 / 25

Modelos de Processos de Software

Modelos de Processos de Software. Compreender os paradigmas de Software e suas etapas do processo de desenvolvimento de software. Agenda. Introdução Modelo Sequencial Linear Modelo de Prototipagem Bibliografia. Introdução.

novia
Download Presentation

Modelos de Processos de Software

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Modelos de Processos de Software Compreender os paradigmas de Software e suas etapas do processo de desenvolvimento de software

  2. Agenda • Introdução • Modelo Sequencial Linear • Modelo de Prototipagem • Bibliografia.

  3. Introdução • Todo o desenvolvimento do software pode ser caracterizado como um ciclo de solução do problema, no qual são encontrados 4 estágios distintos: • Situação atual: • A definição do Problema: • Desenvolvimento técnico • Integração da Solução

  4. Introdução • Situação atual: “Representa o estado atual das coisas” • A definição do Problema: Identifica o problema específico a ser resolvido; • Desenvolvimento técnico: Resolve o problema por intermédio da aplicação de alguma tecnologia • Integração da Solução: entrega os resultados, por exemplo: (Documentos, Programas, dados, nova função dos negócios, novo produto)

  5. Modelo Sequencial Linear • Também chamado de Modelo Queda D´Agua, Modelo cascata. • Fases: • Modelagem de Engenharia de Sistemas/Informação • Análise de Requisitos de Software • Projeto • Geração de Código • Teste • Manutenção

  6. Modelo Clássico • Cascata: Requer uma abordagem sistemática, sequencial: Engenharia de Sistemas Análise Projeto Codificação Teste Manutenção

  7. Modelo Clássico • Características do Modelo. Fornece uma seqüência no qual os métodos de análise, projeto, codificação, teste e manutenção podem ser situados; É um modelo amplamente usado para a Engenharia de Software; É significativamente melhor do que ter um processo aleatório.

  8. Modelo Clássico • Problemas: • Projetos reais raramente seguem um fluxo sequencial que o modelo propõe. • Em geral é dificil para o cliente estabelecer todos os requisitos explicitamente. O modelo sequencial exige isso e tem dificuldade de acomodar a incerteza natural que existe no começo de vários projetos • O cliente precisa ter paciência. Uma versão executável do programa não vai ficar disponível até o projeto terminar.

  9. Modelo Clássico • 1-Análise e Engenharia de Sistemas: • Estabelecimento de requisitos para todos os elementos do sistema; • Coleta dos requisitos em nível do sistema, com uma pequena quantidade de projeto e análise de alto nível.

  10. Modelo Clássico • 2-Análise de Requisitos de Software: • Intensificação da coleta dos requisitos, focando o software; • Compreensão do domínio da informação, função, desempenho e interface exigidos; • Requisitos são validados com os clientes.

  11. Modelo Clássico • 3-Projeto: • Concentra quatro atributos: • Estrutura de dados; • Arquitetura de Software; • Detalhes procedimentais; • Caracterização de interface; • Representação do software que pode ser avaliada quanto à qualidade antes da codificação.

  12. Modelo Clássico • 4-Codificação: • Tradução do projeto numa forma entendível por máquina. • 5-Testes: • Concentram-se nos aspectos lógicos internos do software e nos aspectos funcionais externos para descobrir erros e garantir que a entrada definida produza resultados esperados. • 6- Manutenção: • Reaplica cada uma das etapas precedentes do ciclo de vida de a um programa existente.

  13. Modelo de Prototipagem • Utilizado quando o cliente não definiu detalhadamente os requisitos de entrada, processamento e saída; • Capacita o desenvolvedor criar um modelo do software que será implementado: • 1. um protótipo em papel ou um modelo baseado em PC que retrata a interação homem-máquina; • 2. um protótipo de trabalho que implementa algum subconjunto da função exigida do software desejado; • 3. um programa existente que executa parte ou toda a função desejada, mas tem características que serão melhoradas;

  14. Modelo de Prototipagem Início Coleta e refinamento dos requisitos Orientação: jogar o protótipo fora. Fim Projeto rápido Engenharia do produto Construção do protótipo Refinamento do protótipo Avaliação do protótipo pelo cliente

  15. Modelo de Prototipagem • O paradigma de software começa com a definição de requisitos. • O desenvolvedor e o cliente encontram-se e definem os objetivos gerais do software, identificam necessidades conhecidas e delineiam áreas que necessitam de mais definições. • Um projeto rápido é desenvolvido • O protótipo é avaliado pelo cliente/usuário e usado para refinar os requisitos do software que será desenvolvido. • Interações ocorrem a medida que o prototipo é ajustado para satisfazer as necessidades do cliente, enquanto que ao mesmo tempo, permitem ao desenvolvedor entender melhor o que precisa ser feito.

  16. Modelo de Prototipagem • Protótipo pode servir como “o primeiro sistema”. • É usado quando: • O cliente, define um conjunto de objetivos gerais para o software e não identifica detalhadamente requisitos de entrada, processamento ou saida; • O desenvolvedor pode estar inseguro da eficiencia de um algoritmo, da adptabilidade de um sistema operacional ou da forma de interação HomemXMáquina deve assumir.

  17. Modelo de Prototipagem • Problemas: • O Cliente vê o que parece ser uma versão executável do software, ignorando que o protótipo apenas consegue funcionar precariamente, sem saber de que na pressa de fazê-lo rodar ninguém considerou a qualidade global ou manutenabilidade a longo prazo.

  18. Modelo de Prototipagem • Problemas: O desenvolvedor frequentemente faz concessões na implementação a fim de conseguir rapidamente um protótipo executável. Um sistema operacional ou uma linguagem de programação inapropriada pode ser usado simplesmente por estar disponível e ser conhecidos; Um algoritmo ineficiente pode ser implementado simplesmente para demonstrar uma possibilidade.

  19. Modelo Espiral • Desenvolvido para abranger as melhores características tanto do ciclo de vida Clássico como da Prototipação; • Abordagem evolutiva/evolucionária; • Define 4 importantes atividades: • Planejamento: determinação dos objetivos, alternativas e restrições; • Análise dos Riscos: análise de alternativas e identificação/resolução de riscos; • Engenharia: desenvolvimento do produto no “nível seguinte” • Avaliação do Cliente: avaliação dos resultados da engenharia.

  20. Modelo Espiral Planejamento Análise dos Riscos Baseada nos Requisitos iniciais Coleta inicial dos requisitos e planejamento do projeto Baseada na reação dos clientes Planejamento Baseado nos comentários do cliente Protótipo de Software inicial Sistema Construído Avaliação do Cliente Engenharia

  21. Modelo Espiral • Considerado o mais realista para o desenvolvimento de sistemas e de softwares em grande escala;

  22. Questões 1. Indique a alternativa que retrata melhor os possíveis modelos de Ciclo de Vida: a) Pirâmide ou Triangular, Maquete e Circular. b) Clássico ou Cascata, Prototipação e Espiral. c) Estrela, Maquete e Espiral. d) Circular, Prototipação e Estrela. 2. O modelo de processo de software caracterizado por intercalar as atividades de especificação, desenvolvimento e validação, denomina-se: a) Modelo de workflow. b) Modelo de fluxo de dados c) Desenvolvimento evolucionário d) Transformação formal e) Modelo em cascata X X

  23. 3. Que modelo do ciclo de vida do paradigma da Engenharia de Software é caracterizado por ser uma abordagem que envolve a produção de versões iniciais de um sistema futuro com o qual se pode realizar verificações e experimentações para se avaliar algumas de suas qualidades antes que o sistema venha realmente a ser construído. (Copel,2009) a) Espiral b) Clássico c) Prototipação d) Circular e) Cascata 4. A respeito da Engenharia de Software: (ANTAQ, 2009) O modelo em espiral, que descreve o processo de desenvolvimento de um software, apresenta uma espiral em que cada loop representa uma fase distinta desse processo. A ausência de risco neste modelo o diferencia dos demais modelos de software. X F

  24. V 5. A prototipação se constitui em uma abordagem comumente usada para elicitação e validação de requisitos. (SERPRO, 2005)

  25. Referências • PRESSMAN, Roger S. Engenharia de Software. Editora Makron Books, 1995.

More Related