Aula - Metodologias Ágeis

1.005 visualizações

Publicada em

Publicada em: Tecnologia
1 comentário
1 gostou
Estatísticas
Notas
Sem downloads
Visualizações
Visualizações totais
1.005
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
37
Comentários
1
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Aula - Metodologias Ágeis

  1. 1.  Desenvolvimento de Software Métodos Àgeis de TradicionalDesenvolvimento de • Problemas do Desenvolvimento Software Tradicional  Métodos Ágeis de Desenvolvimento • Manifesto Àgil • Princípios  Práticas Ágeis  XP  Scrum  Outras Metoologias16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 2
  2. 2.  http://www.agilcoop.org.br/curso_de_verao_2010 http://www.scrumalliance.org/ http://www.extremeprogramming.org/ http://improveit.com.br/scrum http://visaoagil.wordpress.com/ http://amagno.blogspot.com/ http://www.infoq.com/br/16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 3
  3. 3.  Sociedade demanda • Grande quantidade de sistemas/aplicações • Software complexo, distribuído, heterogêneo • Requisitos mutantes(todo ano, todo mês, toda semana, todo dia) 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 5
  4. 4. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 6
  5. 5. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 7
  6. 6. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 8
  7. 7. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 9
  8. 8.  Supõem que é possivel prever o futuro. Pouca interação com os clientes. Ênfase em burocracias. • (documentos, formulários, processos, controles rígidos, etc...) Avaliação do progresso baseado na evolução da burocracia e não do código Grande quantidade de erros Falta de flexibilidade no software desenvolvido16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 10
  9. 9.  Melhores tecnologias • Padrões de projeto (reutilização de idéias) • Componentes (reutilização de código) • Middleware/frameworks (aumenta a abstração) Melhores metodologias • Métodos Àgeis16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 11
  10. 10.  Movimento iniciado por programadores experientes e consultores em desenvolvimento de software. Questionam e se opõem a uma série de mitos práticas adotadas em abordagens tradicionais de Engenharia de Software e Gerência de Projetos. Manifesto Ágil: Assinado por 17 desenvolvedores em Utah em fevereiro/2001. • http://agilemanifesto.org 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 13
  11. 11.  Indivíduos e interações são mais importantes do que processos e ferramentas Software funcionando é mais importante do que documentação detalhada Colaboração com o cliente é mais importante do que negociação de contratos Adaptação às mudanças é mais importante do que seguir um plano inicial 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 14
  12. 12.  Prioridade máxima: satisfazer o usuário através de entrega rápida e contínua de software com valor. Receber bem requisitos mutantes, mesmo tarde no desenvolvimento. Processos ágeis aguentam mudanças para a vantagem competitiva do consumidor. Entregar software em funcionamento com frequência, de algumas semanas a alguns meses, dando preferência à menor periodicidade. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 15
  13. 13.  Pessoas de negócio e desenvolvedores devem trabalhar diariamente durante o projeto. Construa projetos em volta de indivíduos motivados. Dê a eles o ambiente e o suporte de que eles precisam, e confie que eles farão o serviço. O método mais eficiente de passar informação para e entre uma equipe de desenvolvimento é conversa cara-a-cara. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 16
  14. 14.  Software rodando é a principal medida de progresso. Processos ágeis precisam de desenvolvimento sustentável. Patrocinadores, desenvolvedores e usuários devem aguentar manter um ritmo constante indefinidamente. Atenção contínua à excelência técnica e bom projeto melhora a agilidade. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 17
  15. 15.  Simplicidade -- a arte de maximizar a quantidade de trabalho não realizado -- é essencial. As melhores arquiteturas, requisitos e projetos emergem de equipes auto-organizadas. Em intervalos regulares, a equipe reflete sobre como se tornar mais eficiente, e deve ajustar seu comportamento de acordo.16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 18
  16. 16.  Comunicação Negociação Ciclo de Vida Iterativo Gerenciamento Ágil Modelagem Ágil Visibilidade do Projeto16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 20
  17. 17. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 21
  18. 18.  Evitar telefone sem fio Desenvolvedores diretamente com o cliente 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 22
  19. 19. 4 variáveis do desenvolvimento de Software Escop Prazo Custo Qualidade o Fixo Variável Abordagem tradicional16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 23
  20. 20. 4 variáveis do desenvolvimento de Software Escop Prazo Custo Qualidade o Variável Fixo Abordagem Ágil16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 24
  21. 21. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 25
  22. 22. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 26
  23. 23. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 27
  24. 24. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 28
  25. 25. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 29
  26. 26. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 30
  27. 27. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 31
  28. 28. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 32
  29. 29. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 33
  30. 30. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 34
  31. 31. http://www.extremeprogramming.org/ http://www.scrumalliance.org/16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 35
  32. 32. Kent Beck Estados Unidos 1999 XP é leve XP é focado no desenvolvimento de software XP funciona em times de qualquer tamanho XP se adapta bem a requisitos vagos e que mudam16/9/2012 rapidamente ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 37
  33. 33. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 38
  34. 34. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 39
  35. 35. Ciclo Trimestral Releases Ciclo Semanal Iterações16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 40
  36. 36. Cliente escreve estórias Jogo do Planejamento Retrospectiva Desenvolvedores EstimamCliente aprova o resultado Cliente Prioriza as estórias Desenvolvedores constroem Desenvolvedores Implementam tarefas16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 41
  37. 37.  Estórias exprimem o comportamento de uma funcionalidade geral Estórias são escritas na linguagem natural Formato: Who – What - Why Ex: • No papel de administrador do sistema eu quero realizar o cadastro de usuários, para armazenar informações de contato: nome, telefone e e-mail.16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 42
  38. 38.  Objetivo: Estimar custo de desenvolvimento das estórias. Características:  Cartas  Todos fazem estimativas para todas as estórias  As estimativas são individuais  Tempo (horas/dias)16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 43
  39. 39.  Responsabilidade nas mãos do cliente “Aguarde e Confie” Conceito Chave no XP Limite máximo16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 44
  40. 40.  Ex: • Estória: No papel de administrador do sistema eu quero realizar o cadastro de usuários, para armazenar informações de contato: nome, telefone e e-mail. • Tarefas: ▪ Modelagem do banco de dados ▪ Criar Interface ▪ Implementar cadastro16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 45
  41. 41.  Programação em par • Todo o código • Um digita, outro revisa • Redução de bugs • Disseminação do conhecimento • Pressão do par • Simplicidade • Velocidade16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 46
  42. 42.  Desenvolvimento dirigido a testes  Propriedade coletiva do código  Base de código unificada  Sentar-se junto  Refatoração16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 47
  43. 43. “Se você não tiver um ambiente razoável para trabalhar, seu projeto não terá sucesso” (Kent Beck) Quadro(s) brancos Post-it Cadeiras giratórias Jogos Comida e café Folhas em branco Privacidade16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 48
  44. 44. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 49
  45. 45. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 50
  46. 46. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 51
  47. 47. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 52
  48. 48. •Comunicação •Simplicidade •Coragem Valores •Feedback •Respeito Princípios Práticas16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 53
  49. 49. •Auto-semelhança (Self-Similarity) • Benefício Mútuo (Mutal Benefit) Valores •Diversidade (Diversity) •Economia (Economics) • Falha (Failure) • Fluidez (Flow) • Humanismo (Humanity) Princípios • Melhoria (Improvement) •Oportunidade (Opportunity) •Passos de Bebê (Baby Steps) •Qualidade (Quality) • Redundância (Redundancy) Práticas • Reflexão (Reflection) •Responsabilidade Aceita (Accepted Responsa16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 54
  50. 50. Práticas Primárias •Ambiente Informativo (Informative workspace) Valores •Build de dez minutos (Ten-MinuteBuild) •Ciclo Semanal (Weekly Cycle) •Ciclo Trimestral (Quarterly Cycle) •Desenvolvimento Orientado a Testes (Test-First Programming) Princípios •Design Incremental (Incremental Desing) •Equipe Integral (Whole Team) •Folga (Slack) •Histórias (Stories) •Integração Contínua (Continuous Integration) Práticas •Programação em Par (Pair Programming) •Sentar-se junto (Sit together) •Trabalho Energizado (Energized Work)16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 55
  51. 51. Práticas Corolárias • Análise da Raiz do Problema (Root-Cause Analysis) • Base de Código Unificada (Single Code Base) Valores • Código Coletivo (Shared Code) • Código e testes (Code and Tests) • Continuidade da equipe (Team Continuity) • Contrato de Escopo Negociável (Negotiated12 Scope Contract) Princípios • Envolvimento do cliente Real (Real Custumer Involvement) • Equipes que encolhem (Shrinking Teams) • Implantação diária (Daily Deployment) • Implantação incremental (Incremental Deployment) Práticas • Pagar por uso (Pay-Per-Use)16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 56
  52. 52. • Pequenos ciclos de pedidos • Escopo limitado • Implementação das características prioritárias ao negócio primeiro16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 58
  53. 53. • XP pede ao cliente que escolha a funcionalidade que faça maior diferença economicamente.16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 59
  54. 54. • Muitos testes são feitos ▪ Desenvolvedores testam função por função ▪ Clientes testam funcionalidade por funcionalidade16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 60
  55. 55. • O cliente vira parte integral do time16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 61
  56. 56. • Implementação em ciclos16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 62
  57. 57. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 64
  58. 58. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 65
  59. 59. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 66
  60. 60. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 67
  61. 61. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 68
  62. 62. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 69
  63. 63.  FDD – Feature Driven Development  Crystal Family  DSDM (Dynamic Systems Development Method)  ASD (Adaptative Software Development)16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 71
  64. 64.  Estória 0:  No papel de administrador do sistema eu quero realizar o cadastro de usuários, para armazenar informações de contato: nome, telefone e e-mail.  Estória 1: • O sistema deverá permitir aos usuários cadastrarem notícias. A notícia deve ter manchete, descrição e conteúdo. O sistema deverá listar todas as notícias.  Estória 2: • A partir da listagem das notícias, o sistema deverá permitir ao usuário enviar uma notícia para o e-mail de um usuário cadastrado.16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 73
  65. 65. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 74
  66. 66.  Seus princípios e práticas proporcionam um equilíbrio entre as filosofias tradicionais e as mais extremas, proporcionando uma transição mais suave para organizações mais conservadoras, e a retomada da responsabilidade para as organizações que se desiludiram com as propostas mais radicais.16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 76
  67. 67.  1997-1998, Singapura Contexto: Desenvolvimento de um grande sistema de empréstimos para um banco internacional Anteriormente, após 2 anos de consultoria, 3.500 páginas de casos de (in)uso e um modelo de objetos com centenas de classes, foi avaliado como impossível Decisão: Implantação das metodologias de OOAD de Peter Coad e de gerência de projetos de Jeff De Luca Resultado: 15 meses após a contratação da dupla, 2.000 features entregues por uma equipe de 50 pessoas16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 77
  68. 68. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 78
  69. 69.  Característica ou funcionalidade Pequena o suficiente para ser implementada no máximo em 2 semanas Oferece valor para o cliente Mapeia passos em uma atividade de negócio  Pode ser um passo de um caso de uso  Às vezes pode ser o próprio caso de uso Conceito muito próximo ao de um requisito funcional Modelo: <ação> <resultado> <objeto>  Calcular o total de uma venda  Autorizar uma transação com cartão de um cliente16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 79
  70. 70.  Desenvolver um Modelo Abrangente  Modelagem dos Processos de Negócio (BPM)  Análise Orientada por Objetos (OOA) Construir a Lista de Features Decomposição Funcional Planejar por Feature  Plano de Desenvolvimento  Prioridade, Dependência, Distribuição de Trabalho Detalhar por Feature Projeto OO (OOD), Estudo Detalhado Construir por Feature  Programação OO (OOP)  Inspeção, Testes, Integração ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 80
  71. 71. ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 81
  72. 72. ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 82
  73. 73. ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 83
  74. 74. ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 84
  75. 75. ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 85
  76. 76. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 86
  77. 77. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 87
  78. 78. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 88
  79. 79. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 89
  80. 80. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 90

×