aula 2 modelo de processo de software1
TRANSCRIPT
![Page 1: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/1.jpg)
Processo de Software
![Page 2: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/2.jpg)
Processo
Um conjunto de atividades realizadas por pessoas cujo objetivo é desenvolvimento ou evolução de software e sua documentação.
– Tem como meta entregar um produto de software de maneira eficiente, previsível e que corresponda às necessidades de negócio. Geralmente inclui análise de requisitos, programação e testes, entre outras tarefas.
![Page 3: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/3.jpg)
” É um conjunto de atividades que, ao serem executadas, geram um produto de software”.
Sommerville
Processo de Software
![Page 4: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/4.jpg)
Atividades de Processo de Software
•EspecificaçãoO que o sistema deve fazer (funcionalidade) e quais as restrições.
•Projeto e Implementação Produção do Software a partir das definições.
•Validação: (V & V)Testar se está de acordo com o que o cliente necessita para ser validado.
•EvoluçãoO software tem que ser atualizado para sempre garantir as necessidades do cliente. Mudanças no software.
27/07/13
![Page 5: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/5.jpg)
Processo de Desenvolvimento de Software
![Page 6: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/6.jpg)
Vantagem
O uso de um processo de software bem definido leva à redução dos custos de produção, bem como à melhoria da qualidade e integridade do software.
![Page 7: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/7.jpg)
Modelo de Processo de Software
![Page 8: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/8.jpg)
É uma representação de um processo de software, apresentada sobre uma perspectiva específica.
É uma estratégia para o desenvolvimento do software.
Define a ordem de execução das atividades durante as fases de engenharia de software.
Modelo de Processo de Software
![Page 9: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/9.jpg)
O que diferencia um modelo de processo do outro?
• É a ordem em que as fases vão ocorrer;• O tempo e a ênfase dados a cada fase;• As atividades presentes;• Os produtos entregues.
27/07/13
![Page 10: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/10.jpg)
Antes do desenvolvimento de um produto, devemos escolher um modelo de ciclo de vida.
De acordo com:- Tamanho;- Complexidade e/ou nível de confiabilidade;- Segurança do projeto.
![Page 11: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/11.jpg)
Como escolher um modelo para o desenvolvimento do software?
27/07/13
![Page 12: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/12.jpg)
Atividades comuns aos modelos?• Especificação;• Projeto e Implementação;• Validação;• Evolução.
27/07/13
![Page 13: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/13.jpg)
1. Cascata ou ciclo de vida clássico ou tradicional;
2. Modelo evolutivo; Espiral;
Protótipo;
Iterativo e Incremental
Modelos de Processo de Software
![Page 14: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/14.jpg)
• Modelo mais antigo;
• Modelado em função do ciclo da engenharia convencional;
• Fases sequencial ao desenvolvimento de software;
• O resultado de uma fase é entrada para outra fase.
Modelo Cascata
![Page 15: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/15.jpg)
• Utilizado principalmente quando os requisitos de um determinado problema são bem compreendidos.
• Utilização:• Fazer adaptações ou aperfeiçoamentos em um
sistema já existente.• Necessidade de uma nova funcionalidade e os
requisitos estão bem definidos e são estáveis.
Modelo Cascata
![Page 16: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/16.jpg)
Modelo Cascata
![Page 17: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/17.jpg)
Definição de Requisitos
O processo de coleta dos requisitos é intensificado e concentrado especificamente no software.
Deve-se compreender o domínio da informação, a função, desempenho e interfaces exigidos.
Fases - Modelo Cascata
![Page 18: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/18.jpg)
Projeto do Sistema
Tradução dos requisitos do software para um conjunto de representações que podem ser avaliadas quanto à
qualidade, antes que a codificação se inicie.
Fases - Modelo Cascata
![Page 19: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/19.jpg)
Implementação
Tradução das representações do projeto para uma linguagem “artificial” resultando em instruções executáveis pelo computador.
Fases - Modelo Cascata
![Page 20: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/20.jpg)
Teste
É a investigação do software a fim de fornecer informações sobre sua qualidade em relação ao contexto em que ele deve operar. Isso inclui o processo de utilizar o produto para encontrar seus defeitos.
Fases - Modelo Cascata
![Page 21: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/21.jpg)
Manutençã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;- Exigência do cliente para acréscimos funcionais e de
desempenho.
Fases - Modelo Cascata
![Page 22: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/22.jpg)
Utilização• Existe um conjunto de Requisitos do usuário estáveis e de
alta qualidade;
• O sistema completo deve estar disponível de um única vez; • Recomendado para sistemas onde a segurança e a
confiabilidade tem grande importância.
27/07/13
![Page 23: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/23.jpg)
• Projetos reais raramente seguem o fluxo sequencial que o modelo propõe;
• Logo no início é difícil estabelecer explicitamente todos os requisitos.
• Fases são dependentes uma da outra;• Não é permitida mudança dos requisitos no meio do
processo de desenvolvimento;• O sistema completo deve estar disponível de um única vez;
Problemas
![Page 24: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/24.jpg)
1) O que é software?2) Cite 4 Características de Software.3) O que é a Engenharia de Software? 4) Qual o objetivo da Engenharia de Software? 4) O que é um processo de software?5) O que é um modelo de Processo de Software?6) Dê exemplos de modelos de Processo de Software e descreva o
Modelo cascata.
Sugestão:Vincular a Engenharia de Software a um assunto visto em algumadisciplina cursada na instituição.
Questionário - Introdução
![Page 25: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/25.jpg)
Modelos Evolucionários
São explicitamente projetados para acomodar um produto que evolui com o tempo.
– A cada iteração, produzem uma versão cada vez mais completa do software;
Exemplos:– Modelo Espiral;– Modelo de Prototipagem.
![Page 26: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/26.jpg)
Modelo Espiral
27/07/13
![Page 27: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/27.jpg)
Modelo Espiral
• Proposto por Boehm em 1988.• Propôs uma forma de trabalho na qual ocorre
uma repetição das atividades do modelo cascata.
![Page 28: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/28.jpg)
Modelo Espiral
• Combina a natureza iterativa da prototipagem com os aspectos controlados do modelo em cascata;
• O software é produzido numa série de versões evolucionárias;
• Primeiras versões: papel ou protótipo;
![Page 29: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/29.jpg)
Modelo Espiral
• É uma abordagem cíclica que aumenta incrementalmente o grau de definição, enquanto diminui o risco;
• O modelo pode ser aplicado ao longo de todo ciclo de vida de uma aplicação;
![Page 30: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/30.jpg)
Modelo Espiral
• Evolução através de vários ciclos completos de especificação, projeto e desenvolvimento;
• O Espiral representa fases do processo;• Riscos avaliados e resolvidos ao longo do
processo.
27/07/13
![Page 31: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/31.jpg)
Modelo Espiral
27/07/13
![Page 32: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/32.jpg)
Vantagens
• Usuário pode usufruir de funcionalidades a cada incremento;
• Redução de risco.
![Page 33: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/33.jpg)
Modelo de Prototipagem
![Page 34: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/34.jpg)
Protótipo
Produto de trabalho na fase de teste e ou planejamento de um projeto.
![Page 35: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/35.jpg)
Vantagens - Protótipos
• Obter retorno sobre desenho mais depressa;• Facilitam o entendimento e o feedback dos usuários;• Cumprem o desejo de mostrar resultados rápidos para o
cliente;• Tornam as discussões mais produtivas e sob controle nas
sessões com os usuários;
![Page 36: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/36.jpg)
Vantagens - Protótipos
• Facilitar o entendimento entre os membros de equipes multidisciplinares de projetos;
• Analise da usabilidade no início do processo de desenvolvimento;
• Baixo custo para alterar;• Possibilitam obter uma aprovação formal do projeto antes de
se prosseguir para o desenvolvimento.
![Page 37: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/37.jpg)
Modelo de Prototipagem
O software passa por constantes versões até chegar a sua versão final.
27/07/13
![Page 38: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/38.jpg)
Modelo de Prototipagem
Começa com os requisitos bem compreendidos e adiciona funcionalidades a medida que o cliente propõe.
27/07/13
![Page 39: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/39.jpg)
Modelo de Prototipagem
Utilização:Entender os requisitos do usuário e, assim, obter
uma melhor definição dos requisitos do sistema;Possibilita que o desenvolvedor crie um protótipo
do software que deve ser construído;Cliente não definiu detalhadamente os requisitos.
27/07/13
![Page 40: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/40.jpg)
Modelo de Prototipagem
27/07/13
![Page 41: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/41.jpg)
Desvantagens• Pode haver pressão do cliente para transformar um
protótipo malfeito em produto final, resultando em baixa qualidade;
• Concessões na implementação podem fazer com que o desenvolvedor fique familiarizado com escolhas não ideais;
• O cliente tem que concordar que o protótipo será usado apenas para levantamento de requisitos e que o software real será submetido à engenharia com qualidade.
27/07/13
![Page 42: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/42.jpg)
Observações
– Ainda que possam ocorrer problemas, a prototipação é um ciclo de vida eficiente, a chave é definir as regras do jogo logo no começo;
– Cliente e desenvolvedor devem concordar que o protótipo seja construído para servir como um mecanismo para definir os requisitos.
27/07/13
![Page 43: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/43.jpg)
Ferramenta
• Axure– É uma ferramenta de design e documentação capaz de
gerar wireframes e protótipos em linguagens como HTML e Javascript.
• Download:– (http://www.axure.com/download)
Referência:– http://www.devmedia.com.br/introducao-a-prototipacao-e-
apresentacao-do-axure-rp-6-5/27978
![Page 44: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/44.jpg)
Modelo Iterativo e Incremental
Desenvolvimento iterativo e incremental - desenvolvimento é iniciado com um subconjunto simples de Requisitos de Software e iterativamente alcança evoluções subsequentes das versões até o sistema todo estar implementado.
![Page 45: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/45.jpg)
Modelo Iterativo e Incremental
![Page 46: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/46.jpg)
Modelo Iterativo
![Page 47: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/47.jpg)
Modelo Incremental
![Page 48: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/48.jpg)
Vantagens do Desenvolvimento Incremental
![Page 49: Aula 2 modelo de processo de software1](https://reader035.vdocuments.com.br/reader035/viewer/2022062400/588303711a28abe70d8b5f5f/html5/thumbnails/49.jpg)
Rational Unified Process – RUP