engenharia de software slide 05 – modelos de processos instituto metodista isabela hendrix curso...
TRANSCRIPT
![Page 1: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/1.jpg)
Engenharia de Software
Slide 05 – Modelos de Processos
Instituto Metodista Isabela HendrixCurso de Análise e Desenvolvimento de Sistemas
Juliano Amorim de [email protected]
![Page 2: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/2.jpg)
Retomando a aula passada…
Características do software Evolução do sofware Crise do software Mitos do software
![Page 3: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/3.jpg)
Por que surgiu a Engenharia de Software?
![Page 4: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/4.jpg)
Resposta à Crise de Software
A aplicação de uma abordagem sistemática, disciplinada e possível de ser medida para o desenvolvimento, operação e manutenção do software (IEEE)
![Page 5: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/5.jpg)
Engenharia de Software Outra definição:
É a criação e a utilização de sólidos princípios de engenharia a fim de obter softwares econômicos que sejam confiáveis e que trabalhem eficientemente em máquinas reais
Importante: Disciplina Adaptabilidade Agilidade
![Page 6: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/6.jpg)
Uma Tecnologia em CamadasUma Tecnologia em Camadas
ferramentasferramentasmétodosmétodosprocessoprocesso
foco na qualidadefoco na qualidade
Engenharia de Software
![Page 7: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/7.jpg)
Uma Tecnologia em CamadasUma Tecnologia em Camadas
ferramentasferramentasmétodosmétodosprocessoprocesso
foco na qualidadefoco na qualidade
É o “solo”É o “solo”A Engenharia de Software deve se apoiar num compromisso A Engenharia de Software deve se apoiar num compromisso organizacional com a qualidade. organizacional com a qualidade.
Engenharia de Software
![Page 8: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/8.jpg)
ferramentasferramentasmétodosmétodosprocessoprocesso
foco na qualidadefoco na qualidade
É o “alicerce”É o “alicerce”É a cola que gruda as camadas de tecnologias e permite um É a cola que gruda as camadas de tecnologias e permite um desenvolvimento de software racional e em tempo; desenvolvimento de software racional e em tempo;
Uma Tecnologia em CamadasUma Tecnologia em Camadas
Engenharia de Software
![Page 9: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/9.jpg)
ferramentasferramentasmétodosmétodosprocessoprocesso
foco na qualidadefoco na qualidade
É o “como fazer”É o “como fazer”Englobam um conjunto de tarefas que inclui análise de Englobam um conjunto de tarefas que inclui análise de requisitos, projeto, construção de programas, teste e requisitos, projeto, construção de programas, teste e manutençãomanutenção
Uma Tecnologia em CamadasUma Tecnologia em Camadas
Engenharia de Software
![Page 10: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/10.jpg)
ferramentasferramentasmétodosmétodosprocessoprocesso
foco na qualidadefoco na qualidade
É o “instrumento apropriado”É o “instrumento apropriado”Dão suporte automatizado ou semi-automatizado ao processo Dão suporte automatizado ou semi-automatizado ao processo e aos métodos; quando as ferramenta se integram tem-se um e aos métodos; quando as ferramenta se integram tem-se um sistema denominado CASE (Computer Aided Software sistema denominado CASE (Computer Aided Software Engineering)Engineering)
Uma Tecnologia em CamadasUma Tecnologia em Camadas
Engenharia de Software
![Page 11: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/11.jpg)
Vamos falar um pouco dos processos de software!
(ou modelos de processo de software)
![Page 12: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/12.jpg)
Fases Genéricas dos Modelos de Processo de Software
DEFINIÇÃODEFINIÇÃO
CONSTRUÇÃOCONSTRUÇÃO
MANUTENÇÃOMANUTENÇÃO
SOFTWARE PRODUTOSOFTWARE PRODUTO
![Page 13: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/13.jpg)
DEFINIÇÃODEFINIÇÃO
CONSTRUÇÃOCONSTRUÇÃO
MANUTENÇÃOMANUTENÇÃO
SOFTWARE PRODUTOSOFTWARE PRODUTO
““o que”o que” • informações a serem
processadas• funções e desempenho
desejados• interfaces que devem ser
estabelecidas• restrições do projeto • critérios de validação
requeridos
Fases Genéricas dos Modelos de Processo de Software
![Page 14: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/14.jpg)
DEFINIÇÃODEFINIÇÃO
CONSTRUÇÃOCONSTRUÇÃO
MANUTENÇÃOMANUTENÇÃO
SOFTWARE PRODUTOSOFTWARE PRODUTO
Análise de SistemaPlanejamento do Projeto
Análise de Requisitos
Fases Genéricas dos Modelos de Processo de Software
![Page 15: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/15.jpg)
DEFINIÇÃODEFINIÇÃO
CONSTRUÇÃOCONSTRUÇÃO
MANUTENÇÃOMANUTENÇÃO
SOFTWARE PRODUTOSOFTWARE PRODUTO
““como”como” • como devem ser projetadas a
estrutura de dados e a arquitetura do software
• como os procedimentos devem ser implementados
• como o projeto deve ser traduzido para uma linguagem de programação
• como o teste deve ser executado.
Fases Genéricas dos Modelos de Processo de Software
![Page 16: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/16.jpg)
DEFINIÇÃODEFINIÇÃO
CONSTRUÇÃOCONSTRUÇÃO
MANUTENÇÃOMANUTENÇÃO
SOFTWARE PRODUTOSOFTWARE PRODUTO
Projeto Codificação
Teste
Análise de SistemaPlanejamento do Projeto
Análise de Requisitos
Fases Genéricas dos Modelos de Processo de Software
![Page 17: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/17.jpg)
DEFINIÇÃODEFINIÇÃO
CONSTRUÇÃOCONSTRUÇÃO
MANUTENÇÃOMANUTENÇÃO
SOFTWARE PRODUTOSOFTWARE PRODUTO
““mudanças”mudanças” • correções decorrentes de
erros – manutenção corretiva• adaptações requeridas
decorrentes de alterações no meio ambiente – manutenção adaptativa
• melhoramentos relacionados a novas funções desejadas pelo usuário – manutenção perfectiva.
Fases Genéricas dos Modelos de Processo de Software
![Page 18: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/18.jpg)
DEFINIÇÃODEFINIÇÃO
CONSTRUÇÃOCONSTRUÇÃO
MANUTENÇÃOMANUTENÇÃO
SOFTWARE PRODUTOSOFTWARE PRODUTO
Entendimento Modificação
Revalidação
Projeto Codificação
Teste
Análise de SistemaPlanejamento do Projeto
Análise de Requisitos
Fases Genéricas dos Modelos de Processo de Software
![Page 19: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/19.jpg)
DEFINIÇÃODEFINIÇÃO
CONSTRUÇÃOCONSTRUÇÃO
MANUTENÇÃOMANUTENÇÃO
SOFTWARE PRODUTOSOFTWARE PRODUTO
Entendimento Modificação
Revalidação
Projeto Codificação
Teste
Análise de SistemaPlanejamento do Projeto
Análise de Requisitos
DESENVOLVIMENTO
Fases Genéricas dos Modelos de Processo de Software
![Page 20: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/20.jpg)
DEFINIÇÃODEFINIÇÃO
CONSTRUÇÃOCONSTRUÇÃO
MANUTENÇÃOMANUTENÇÃO
SOFTWARE PRODUTOSOFTWARE PRODUTO
Entendimento Modificação
Revalidação
Projeto Codificação
Teste
Análise de SistemaPlanejamento do Projeto
Análise de Requisitos
OPERAÇÃO
Fases Genéricas dos Modelos de Processo de Software
![Page 21: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/21.jpg)
DEFINIÇÃODEFINIÇÃO
CONSTRUÇÃOCONSTRUÇÃO
MANUTENÇÃOMANUTENÇÃO
SOFTWARE PRODUTOSOFTWARE PRODUTO
Entendimento Modificação
Revalidação
Projeto Codificação
Teste
Análise de SistemaPlanejamento do Projeto
Análise de Requisitos
MANUTENÇÃO
Fases Genéricas dos Modelos de Processo de Software
![Page 22: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/22.jpg)
Na Prática Espera-se que…
PROCESSO DE PROCESSO DE SOFTWARESOFTWARE
eficientecontrolado
definido
medido
gerenciado
![Page 23: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/23.jpg)
Modelos de Processo de Software
Existem vários modelos de processo de software
Cada um representa uma tentativa de colocar ordem em um conjunto de atividades complexas
Pode-se citar os seguintes modelos de modelos de processo de softwareprocesso de software
![Page 24: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/24.jpg)
Modelos de Processo de Software
Modelo Seqüencial Linear (Modelo Cascata) Paradigma de Prototipação Modelo RAD (Rapid Application Development) Modelos Evolutivos de Processo de Software
Modelo Incremental Modelo Espiral Modelo de Montagem de Componentes Modelo de Desenvolvimento Concorrente
Modelos de Métodos Formais Técnicas de Quarta Geração
![Page 25: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/25.jpg)
Modelo CascataEngenharia de Sistemas
Análise de Requisitos
Projeto
Codificação
Testes
Manutenção
![Page 26: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/26.jpg)
O Modelo Cascata
modelo mais antigo requer uma abordagem sistemática,
seqüencial ao desenvolvimento de software
o resultado de uma fase se constitui na entrada da outra
![Page 27: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/27.jpg)
Modelo CascataEngenharia de Sistemas
Análise de Requisitos
Projeto
Codificação
Testes
Manutenção
Engenharia de Sistemas
Engenharia de Sistemas envolve a coleta de requisitos em nível do sistema, com análise de alto nível
![Page 28: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/28.jpg)
Modelo CascataEngenharia de Sistemas
Análise de Requisitos
Projeto
Codificação
Testes
Manutenção
Análise de Requisitos
Análise de Requisitos de Software
o processo de coleta dos requisitos é intensificado e concentrado especificamente no softwaredeve-se compreender o domínio da informação, a função, desempenho e interfaces exigidosos requisitos (para o sistema e para o software) são documentados e revistos com o cliente
![Page 29: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/29.jpg)
Modelo CascataEngenharia de Sistemas
Análise de Requisitos
Projeto
Codificação
Testes
Manutenção
Projeto
ProjetoProjetotradução dos requisitos do software para um conjunto de representações que podem ser avaliadas quanto à qualidade, antes que a codificação se inicie
Estrutura de DadosArquitetura de SoftwareDetalhes Procedimentais e Caracterização de Interfaces
![Page 30: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/30.jpg)
Modelo CascataEngenharia de Sistemas
Análise de Requisitos
Projeto
Codificação
Testes
Manutenção
Codificação
CodificaçãoCodificação tradução das representações do projeto para uma linguagem “artificial” resultando em instruções executáveis pelo computador
![Page 31: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/31.jpg)
Modelo CascataEngenharia de Sistemas
Análise de Requisitos
Projeto
Codificação
Testes
Manutenção
Testes
TestesTestes Concentra-se:
•nos aspectos lógicos internos do software garantia que todas as instruções tenham sido testadas•nos aspectos funcionais externos, para descobrir erros e garantir que a entrada definida produza resultados que concordem com os esperados
![Page 32: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/32.jpg)
Modelo CascataEngenharia de Sistemas
Análise de Requisitos
Projeto
Codificação
Testes
Manutenção Manutenção
ManutençãoManutenção provavelmente o software deverá sofrer mudanças depois que for entregue ao cliente causas das mudanças: erros, adaptação do software para acomodar mudanças em seu ambiente externo e exigência do cliente para acréscimos funcionais e de desempenho
![Page 33: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/33.jpg)
Problemas com o Modelo Cascata
Projetos reais raramente seguem o fluxo seqüencial que o modelo propõe
Logo no início é difícil estabelecer explicitamente todos os requisitos no começo dos projetos sempre existe uma incerteza natural
O cliente deve ter paciência uma versão executável do software só fica disponível numa etapa avançada do desenvolvimento
![Page 34: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/34.jpg)
Modelo Cascata
Embora o Modelo CascataModelo Cascata tenha fragilidades, ele é
significativamente melhor do que uma abordagem
casual ao desenvolvimento de software.
![Page 35: Engenharia de Software Slide 05 – Modelos de Processos Instituto Metodista Isabela Hendrix Curso de Análise e Desenvolvimento de Sistemas Juliano Amorim](https://reader036.vdocuments.net/reader036/viewer/2022081422/5706385a1a28abb8238fd400/html5/thumbnails/35.jpg)
35
Bibliografia PRESSMAN, ROGER S. Engenharia de Software. 5ª
edição. Rio de Janeiro: McGraw-Hill, 2002.
SOMERVILLE, IAN. Engenharia de Software. 6ª edição. São Paulo: Addison Wesley, 2003.