0RGHORV�GHGHVHQYROYLPHQWR�GH
VRIWZDUH
3DUDGLJPDV�GH�HQJHQKDULD�GH�VRIWZDUHSão modelos de processo de desenvolvimento de sistemas que especificam quais atividadesdevem ser executadas e em qual ordem (oposta a uma “abordagem casual”)!
Ciclo de vidaclássico(cascata) Evolutivo (dep. Prototipação) Espiral
Dividido em etapas ...* Eng. sistemas * Análise de requisitos * Planejamento de Projeto * Codificação * Testes
*Manutenção•Método sequencial - oresultado de uma fase é aentrada da outra.•Indicado quando os requisitosestão bem claros.•Prima por um fluxo sequencialde atividades na tentativa demanter o processo previsível efácil de monitorar.•Rigidez: não prevê dinamismonos requisitos ou interaçõesentre as etapas, não acomodaincertezas típicas do começode muitos projetos.•Exige paciência do cliente, odesenvolvimento pode sermuito longo.
Um produto inicial édesenvolvido e implementadoe vai sendo refinado através demúltiplas versões até que osistema almejado tenha sidoobtido. Assim este modeloatende bem os requisitos docliente (gera produto:desenvolvimento exploratório) -é um bom mecanismo paraidentificar requisitos (não geraproduto, serve só paraesclarecer requisitos - protótipodescartável).O processo não évisível, não compensadocumentar cada versão daimplementação. Sistema épobremente estruturado dadasas mudanças constantes.Distância entre protótipo eproduto (“rapidez”) representaum risco que sacrifica aqualidade -Melhor para sist. pequenos !
Combina o ciclo de vidaclássico com o evolutivoadicionando Análise de Risco.
O desenvolvimento se organizacomo uma espiral que temmuitos ciclos - cada ciclo é umafase do processo dedesenvolvimento.
Parte do princípio de que aforma do desenvolvimento nãopode ser completamentedeterminada de antemão.
Desvantagem: custo.
&LFOR�GH�YLGD�FOiVVLFR�RX�PRGHOR�HP�FDVFDWDObservação importante: cada uma das atividades fornecem um feed-back para as fases anteriores, tal feed-backestimula a melhoria e a evolução do software.
Eng. Sistemas Análise derequisitos
Planejamento de Projeto Codificação Testes Manutenção
O softwaresemprefaz parte deum sistemamais amplo -deve fazerinterfacecom outroselementos taiscomohardware,pessoas ebancos dedados.
Identificaçãodas restrições edos serviços emetas a serematingidas(determinarquais e nãocomo..). Estafase gera umdocumento deespecificaçãode requisitospara (a) ocliente verificarse satisfaz suasexpectativas (b)ser usado pelosdesenvolvedores de software.
Processo demúltiplos passos:estrutura dedados,arquitetura desoftware,interface. Comoos requisitos, oprojeto édocumentado etorna-se parte daconfiguração dosoftware:documento deespecificação doprojeto.
Testes tanto nosaspectos lógicosinternos doprograma,quantos nosaspectosexternos(entradas esaídas).Testessão feitosprogressivamente, emconjuntos cadavez maiores, apartir depequenossubsistemas atéque o sistemainteiro sejaconstruído.
Fase em que oprojeto desoftware setransforma emum conjuntode programas.
O softwarepoderá sofrermudançasdepois deentregue:acomodarmudanças, errosencontrados,acréscimos etc.A manutençãoreaplica cadauma das etapasprecedentes.Pode vir a ser aetapa maislonga do ciclode vida.
O quê Como Operação
0RGHOR�(YROXWLYRInício
Fim
Especificações de requisitos ou
Produto
0RGHOR�(YROXWLYR• Prototipação é um método rápido de desenvolvimento.
• No passado desenvolver por protipação era considerado ummétodo inferior que exigiria grandes esforços adicionais..porém muitos sistemas hoje são desenvolvidos pelo métodoevolucionário, ao menos parcialmente.
• Prototipação como uma atividade de redução de riscos.
• O uso principal é ajudar clientes e desenvolvedores acompreender requisitos do sistema:
– Usuários podem experimentar com um protótipo paraverificar o comportamento do sistema.
– O protótipo pode revelar erros e omissões nos requisitos(validação).
9DQWDJHQV�GR�PRGHOR�(YROXWLYR• Diferenças entre percepções do cliente e dos desenvolvedores
são explicitadas.
• Um sistema funcional é apresentado antecipadamente.
• O protótipo pode servir de base para a especificação do sistema.
• O protótipo pode entrever necessidade de treinamento de pessoase esquema de testes.
• Aumento da usabil idade, manutenibilidade e até mesmo daqualidade do sistema, se tomado para amadurecer oentendimento dos requisitos.
• Prototipação é interessante para desenvolver partes dosistema de difícil especificação como interface do usuário.
• Cliente envolve-se na avaliação do protótipo.
'HVYDQWDJHQV�GR�PRGHOR�(YROXWLYR• Questões de gerencimento
– Esquema muito menos estruturado
– Specialist skil ls are required which may not beavailable in all development teams
• Problemas de manutenção
– Constantes mudanças tendem a corromper aestrutura do sistema o que pode repercutir nanecessidade de manutenção (ou retrabalho) maiscara.
• Problemas contratuais (entrega antes do prazo de umsistema mas com qualidade inferior).
'XDV�YDULDQWHV�GH�SURWRWLSDomR�• Prototipação evolucionária
– Um protótipo inicial é produzido e refinado até quese tenha um produto final para os usuários finais.
– Parte-se dos requisitos melhor compreendidos.
• Prototipação descartável– Um protótipo, usualmente uma implementação do
sistema, é produzido para ajudar a compreender osrequisitos do sistema e então é descartado. O sistemaé então desenvolvido usando-se outro processo dedesenvolvimento.
– Parte-se dos requisitos pobremente compreendidos.
0RGHORV�GH�SURWRWLSDomR�
Requisitos
PrototipaçãoEvolucionária
PrototipaçãoDescartável
Sistema
Protótipoexecutável
0RGHOR�(VSLUDO• Processo é representado por uma espiral em lugar de uma
sequência linear.
• Cada loop na espiral representa uma fase do processo: loopmais interno pode representar a viabil idade; o seguinte oplanejamento e assim por diante.
• Riscos são regularmente avaliados durante o processo.
• Um ciclo da espiral começa com a elaboração de objetivos,como desempenho, funcionalidade, etc. Meios alternativosde atingir esses objetivos e suas restrições são enumerados.Cada alternativa é examinada em relação a cada objetivo.Isso resulta na identificação das causas de riscos. A próximaetapa é avaliar esses riscos. Em seguida uma parte érealizada e parte-se para a próxima fase do projeto.
0RGHOR�(VSLUDO��%RHKP�(Versão Pressman/ Peters)
Determinar objetivos,r iscos e restr ições
Avaliar alternativas entre
protótipos,avaliar eresolver riscos
Desenvolver, verificar
produto de próximonível
Planejar próximasfases do ciclo, abor tá-lo
se necessár io
6HWRUHV�GR�PRGHOR�(VSLUDO• Determinação de objetivos
– São identificados objectivos específicos
• Análise e redução de riscos– Riscos são detectados e atividades são
acionadas para reduzir riscos
• Desenvolvimento e Validação– Um modelo de desenvolvimento é escolhido
• Planejamento– O projeto é revisado e a próxima fase da espiral
é planejada
Riskanalysis
Riskanalysis
Riskanalysis
Riskanalysis Proto-
ty pe 1
Prototype 2Prototype 3
Opera-ti onalprotoype
Concept o fOperati on
Simul ati ons, models, benchmarks
S/Wrequi rements
Requi rementvalidati on
Desi gnV& V
Productdesi gn Detail ed
desi gn
CodeUni t test
Integr ati ontestAcceptance
testServ ice Develop, v erif ynext -l evel product
Ev aluate alternativesidentify, resol ve risk s
Determine objectiv esalternatives and
constraints
Plan next phase
Integrati onand test p lan
Developmentpl an
Requi rements pl anLi fe-cycle pl an
REVIEW
(Versão Sommerville)
0RGHOR�(VSLUDO��%RHKP�
• Os pontos fortes de cada um dos paradigmas podem ser utilizadosem um mesmo projeto.
• O paradigma espiral já faz isso diretamente, combinandoprototipagem e elementos do ciclo de vida clássico em umaparadigma evolutivo. Qualquer um pode servir como alicerce noqual os outros paradigmas podem ser integrados. O processosempre começa com a determinação dos objetivos, alternativas erestrições (requisitos). Se os requisitos não estiverem muito claros,um protótipo pode ser usado para melhor defini-lo. Usando oprotótipo como guia, o desenvolvedor pode retornar aos passos dociclo de vida clássico. Alternativamente o protótipo pode evoluirpara um sistema.
• A natureza da aplicação é que vai determinar o paradigma a serutilizado e a combinação de paradigmas só tende a beneficiar oprocesso como um todo.
2EVHUYDo}HV
Top Related