engenharia de software ciclo de vida de projetos de sw prof. e.a.schmitz 2007
TRANSCRIPT
![Page 1: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/1.jpg)
Engenharia de Software
Ciclo de Vida de Projetos de SWProf. E.A.Schmitz
2007
![Page 2: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/2.jpg)
Ciclo de vida de projetos
Projetos são empreendimentos únicos e portanto envolvem um grau de incerteza.
Organizações dividem projetos em fases de forma a garantir um melhor controle e encadeamento com as operações correntes da empresa.
O conjunto das fases de um projeto é conhecido como ciclo de vida do projeto.
![Page 3: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/3.jpg)
Ciclo de vida de projetos
Cada fase do projeto é marcada pela conclusão de um ou mais produtos.
Produto de trabalho: deve ser tangível e verificável.
Exemplo: um estudo de viabilidade, um projeto detalhado ou um protótipo executável.
![Page 4: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/4.jpg)
Seqüência das fases de projetos
A seqüência de fases normalmente envolve alguma forma de transferência de informação: p.ex. de requisitos para projeto ou de projeto para construção.
Produtos das fases precedentes são usualmente aprovados antes do início da fase seguinte.
“Fast tracking”: fases correndo em paralelo com um risco tolerável.
![Page 5: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/5.jpg)
Modelos de Ciclo de vida
Modelos de ciclos de vida de projetos definem:
quem deve estar envolvido em cada fase;
que parte do trabalho técnico que deve ser feita em cada fase.
![Page 6: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/6.jpg)
Modelos básicos de ciclo de vida de SW
Sequencial linear
Prototipação
Incremental
Espiral
![Page 7: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/7.jpg)
Modelo Seqüencial Linear
Análise Projeto Codificação Testes
Engenharia de Sistemas
![Page 8: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/8.jpg)
Modelo em Cascata
Viabilidade
Requisitos
Projeto
Cod. Módulos
Integração
Entrega
Manutenção
![Page 9: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/9.jpg)
Modelo em Cascata
Processo linear: saída de uma fase é a entrada para a seguinte
Consiste de 7 fases 1. Estudo de viabilidade 2. Definição de requisitos 3. Projeto 4. Codificação e teste dos módulos 5. Integração e teste do sistema 6. Entrega e aceitação 7. Manutenção
![Page 10: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/10.jpg)
Modelo em Cascata
Problemas dificuldade de estimar com pouca informação especificação de requisitos é um documento escrito usuário não sabe os requisitos exatos processo não força antecipação das mudanças processo baseado na produção de documentos
(burocrático) Apesar disto:
ainda é o modelo mais usado pela simplicidade contratual.
![Page 11: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/11.jpg)
Sequencial com Fast Tracking
Variante do modelo sequencial linear Fase inicia antes que a(s) precursora(s)
tenha(m) terminado Aumenta risco de retrabalho
Requisitos
Projeto
Cod. Módulos
![Page 12: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/12.jpg)
•Processo cíclico para especificar:
• requisitos definidos pelo usuário
•necessidades de hardware e software
• Construção rápida dos primeiros modelos
•não integrados ao produto final
•Após o término é feita a definição do sistema com focando os demais requisitos de qualidade
Prototipação
![Page 13: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/13.jpg)
Prototipação
Ouvir oCliente
Desenho eConstrução
Avaliaçãodo Cliente
Prototipação é uma boa opção para a definição de requisitos
![Page 14: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/14.jpg)
Prototipação
Pontos positivos grande interação com o usuário qualidade da definição da interface
Pontos negativos expectativa do usuário compromissos com a tecnologia
![Page 15: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/15.jpg)
Modelo Incremental
Requisitos
Projeto
Cod. Mód.
Integraçào
Aceite
Projeto
Cod. Mód.
Integraçào
Aceite
![Page 16: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/16.jpg)
Modelo Incremental (Rapid Application Development- RAD)
Modelagemdo Negócio
Modelagemdos Dados
Modelagemde Processos
Geração doAplicativo
Testes
60-90 dias
Modelagemdo Negócio
Modelagemdos Dados
Modelagemde Processos
Geração doAplicativo
Testes
60-90 dias
![Page 17: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/17.jpg)
Modelo RAD
1-Modelagem do negócio: definição das atividades a serem executadas e seus requisitos de informação
2-Modelagem dos dados – Definição dos objetos de dados que suportam o negócio
3-Modelagem do tratamento da informação – Descrição dos processos de manipulação dos objetos de dados
4-Geração da aplicação – usando técnicas de geração de código e bibliotecas de componentes
5-Testes – Tempo de testes reduzido devido ao uso de componentes
![Page 18: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/18.jpg)
Modelo RAD
Pontos positivos uso de componentes redução do tempo
Pontos negativos tamanho da equipe necessidade de comprometimento não adequada a projetos de risco
![Page 19: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/19.jpg)
O Modelo Espiral
Reune a natureza interativa da prototipação com os aspectos sistemáticos e de controle do modelo sequencial
Grupos de atividades: Comunicação com o cliente; Planejamento; Análise de risco; Engenharia; Construção e distribuição; Avaliação do cliente.
![Page 20: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/20.jpg)
Modelo em Espiral (cont.)
1-Objetivos ?
2-AvaliarAlternativasRiscos
3-Construir
4-Avaliar
![Page 21: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/21.jpg)
O Modelo Espiral
Cada volta ao longo da espiral gera: um protótipo versão mais sofisticada;
Permite ao desenvolvedor: utilizar a prototipação em qualquer estágio de evolução do produto manter a sistemática sugerida pelo ciclo de vida clássico.
![Page 22: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/22.jpg)
O Modelo Espiral “WinWin”
Realça os aspectos de comunicação com o cliente.
O levantamento de requisitos junto ao cliente é um processo de negociação que deve beneficiar a ambos os lados (cliente e desenvolvedor):
O cliente ganha: produto que atende a maior parte de suas necessidades;
O desenvolvedor ganha: custos e prazos mais realistas.
![Page 23: Engenharia de Software Ciclo de Vida de Projetos de SW Prof. E.A.Schmitz 2007](https://reader033.vdocuments.pub/reader033/viewer/2022051615/552fc0fe497959413d8bbc85/html5/thumbnails/23.jpg)
O Modelo Espiral “WinWin”
No início de cada passo ao longo da espiral, realiza-se um conjunto de atividades de negociação:
Identificação do patrocinador do sistema; Definição das condições do patrocinador; Negociação das condições do patrocinador, considerando aspectos
do desenvolvedor e visando o win-win.