Download
processos desenvolvimento de software tradicionais 2014 2 n.
Skip this Video
Loading SlideShow in 5 Seconds..
Processos Desenvolvimento de Software Tradicionais – 2014/2 PowerPoint Presentation
Download Presentation
Processos Desenvolvimento de Software Tradicionais – 2014/2

Processos Desenvolvimento de Software Tradicionais – 2014/2

138 Vues Download Presentation
Télécharger la présentation

Processos Desenvolvimento de Software Tradicionais – 2014/2

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Engenharia de Software ProcessosDesenvolvimento de SoftwareTradicionais – 2014/2 Prof. Luís Fernando Garcia LUIS@GARCIA.PRO.BR

  2. Processos • Um conjuntoestruturado de atividadesnecessáriaspara o desenvolvimento de um sistema de software • Especificação; • Projeto; • Validação; • Evolução. • Um modelo de processode software é umarepresentaçãoabstrata do processo. Eleapresenta a descrição de um processo a partir de umaperspectiva particular.

  3. Processos • Processo = Níveis ou etapas • Processo = Ciclo de vida do sw • Foco = Aprimorar o desenvolvimento • Processos Artesanais (Gambiarra) ... • Processos Tradicionais (Clássicos) • Processos Ágeis ...

  4. Processos Tradicionais • Modelo CASCATA (waterfall) • Mais antigo/mais tradicional • Clássico • Atualmente existem adaptações e simplificações dele ... • Rígido ... Linear ...

  5. Processos Tradicionais

  6. Processos Tradicionais

  7. Processos Tradicionais • Modelo CASCATA – Sub-processos

  8. Processos Tradicionais • Modelo CASCATA – Sub-processos

  9. Processos Tradicionais • Modelo CASCATA – Sub-processos

  10. Processos Tradicionais • Modelo CASCATA – Sub-processos

  11. Processos Tradicionais • Modelo CASCATA – Sub-processos

  12. Processos Tradicionais • Modelo CASCATA (waterfall) • A principal desvantagem do modelocascata é a dificuldade de acomodação das mudançasdepoisque o processoestáemandamento. Umafase tem de estarcompleta antes de passarpara a próxima.

  13. Processos Tradicionais • Modelo CASCATA (waterfall) • Particionamentoinflexível do projetoemestágiosdistintos, dificulta a respostaaosrequisitos de mudança do cliente. • Portanto, estemodelo é apropriadosomentequandoosrequisitossãobemcompreendidos, e quando as mudançasforembastantelimitadasdurante o desenvolvimento do sistema. • Poucossistemas de negóciotêmrequisitosestáveis. • O modelocascata é o maisusadoemprojetos de engenharia de sistemas de grandeporte, onde um sistema é desenvolvidoemváriaslocalidades.

  14. Processos Tradicionais • Modelo Evolutivo/Evolucionário • Expandir e Incrementar sw • Direção determinada pela experiência operacional • Desenvolvimento de Protótipos ... • Solidificar requisitos ...

  15. Processos Tradicionais • Modelo Evolutivo/Evolucionário

  16. Processos Tradicionais • Modelo Evolutivo/Evolucionário

  17. Processos Tradicionais • Modelo Evolutivo/Evolucionário • Problemas • Falta de visibilidade de processo; • Os sistemassãofreqüentemente mal estruturados; • Habilidadesespeciais (porexemplo, emlinguagensparaprototipaçãorápida) podem ser solicitadas. • Aplicabilidade • Para sistemasinterativos de pequeno e médioportes; • Para partes de um sistema de grandeporte (porexemplo, a interface de usuário); • Para sistema com curtociclo de vida.

  18. Processos Tradicionais • Modelo Baseado em Componentes • Baseadoemreusosistemáticoondesistemassãointegrados a partir de componentesexistentesou de sistemas COTS (Commercial-of-the-shelf) (soluçõesprontasdisponíveis no mercado) • Estágios do processo • Análise de componentes; • Modificação de requisitos; • Projeto de sistema com reuso; • Desenvolvimento e integração. • Estaabordagemestá se tornandocadavezmaisusada à medidaquepadrões de componentestêmsurgido.

  19. Processos Tradicionais • Modelo Baseado em Componentesfoco em REUSO

  20. Processos Tradicionais • Modelo Iterativo • Requisitos de sistema SEMPRE evoluem no curso de um projeto e, sendoassim, a iteração de processo, ondeestágiosiniciaissãoretrabalhados, é sempre parte do processo dos sistemas de grandeporte. • A iteraçãopode ser aplicada a qualquer um dos modelosgenéricos do processo. • Duasabordagens (relacionadas) • Entrega incremental; • Desenvolvimentoespiral.

  21. Processos Tradicionais • Modelo Iterativo - Incremental • Aoinvés de entregar o sistemacomoumaúnicaentrega, o desenvolvimento e a entregasãoseparadosemincrementos, sendoquecadaincrementofornece parte dafuncionalidadesolicitada. • Os requisitos de usuáriosãopriorizados e osrequisitos de prioridademaisaltasãoincluídosnosincrementosiniciais. • Umavezque o desenvolvimento de um incremento é iniciado, osrequisitossãocongelados, emboraosrequisitosparaosincrementosposteriorespossamcontinuarevoluindo.

  22. Processos Tradicionais • Modelo Iterativo - Incremental

  23. Processos Tradicionais • Modelo Iterativo - Incremental • O valorpode ser entreguepara o cliente com cadaincremento e, dessemodo, a funcionalidade de sistema é disponibilizadamaiscedo. • O incrementoinicial age como um protótipoparaauxiliar a elicitarosrequisitosparaincrementosposteriores do sistema. • Riscosmenores de falhageral do projeto. • Os serviços de sistema de maisaltaprioridadetendem a recebermais testes.

  24. Processos Tradicionais • Modelo Iterativo - Incremental • INÍCIO dos MétodosÁgeis ... • Extreme Programming e outros ...

  25. Processos Tradicionais • Modelo Iterativo – Espiral • O processo é representadocomoumaespiralaoinvés de umaseqüência de atividades com realimentação. • Cada loop naespiralrepresentaumafase no processo. • Semfasesdefinidas, taiscomoespecificaçãoouprojeto – os loops naespiralsãoescolhidosdependendo do que é requisitado. • Os riscossãoexplicitamenteavaliados e resolvidosaolongo do processo.

  26. Processos Tradicionais • Modelo Iterativo – Espiral

  27. Processos Tradicionais • Modelo Iterativo – Espiral

  28. Processos Tradicionais • Modelo Iterativo – Espiral • Definição de objetivos • Objetivosespecíficospara a fasesãoidentificados. • Avaliação e redução de riscos • Riscossãoavaliados e atividadessãorealizadasparareduzirosriscos-chave. • Desenvolvimento e validação • Um modelo de desenvolvimentopara o sistema, quepode ser qualquer um dos modelosgenéricos, é escolhido. • Planejamento • O projeto é revisado e a próximafasedaespiral é planejada.

  29. Processos Tradicionais • RUP – RationalUnifiedProcess

  30. Processos Tradicionais • RUP – RationalUnifiedProcess • Desenvolvimento de Software Interativo • Gerenciamento de requisitos • Uso de arquitetura baseada em componentes • Modelagem visual • Verificação contínua da qualidade • Gerenciamento de mudanças

  31. Processos Tradicionais • RUP – RationalUnifiedProcess • Conjunto de atividades • bem definidas • com responsáveis • com artefatos de entrada e saída • com dependências entre as mesmas e ordem de execução • com modelo de ciclo de vida • descrição sistemática de como devem ser realizadas • UML

  32. RUP – RationalUnifiedProcess

  33. Processos Tradicionais

  34. Processos Tradicionais • RUP – RationalUnifiedProcess

  35. Processos Tradicionais

  36. Processos Tradicionais

  37. Processos Tradicionais • Pontos Chave: • Processos de software são atividades envolvidas na produção e na evolução de um sistema de software. • Modelos de processo de software são representações abstratas destes processos. • Atividades gerais incluem especificação, projeto e implementação, validação e evolução de software. • Modelos genéricos de processo descrevem a organização dos processos de software. Exemplos incluem o modelo cascata, o desenvolvimento evolucionário e engenharia de software baseada em componentes. • Modelos de processo iterativos apresentam o processo de software como um ciclo de atividades.