Extreme programming

566 visualizações

Publicada em

Publicada em: Tecnologia
0 comentários
4 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
566
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
17
Comentários
0
Gostaram
4
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Extreme programming

  1. 1. Extreme Programming XP by Vitor Castro vitorcastro@me.com sábado, 28 de setembro de 13
  2. 2. Problemas no desenvolvimento de software: risco Deslize de cronogramas Projeto cancelado O sistema “azeda”Taxas de erros Negócio mal compreendido Modificações no negócio Falsa riqueza de funções sábado, 28 de setembro de 13
  3. 3. sábado, 28 de setembro de 13
  4. 4. sábado, 28 de setembro de 13
  5. 5. O que é ? sábado, 28 de setembro de 13
  6. 6. O que é XP ? • Metodologia leve para times pequenos e médios • Principal atividade de um projeto de software é a codificação • Uso disciplinado das práticas-modelos • Times de dois a dez programadores sábado, 28 de setembro de 13
  7. 7. Por que o eXtreme ? • Princípios e práticas do senso comum a níveis eXtremos • revisão de código • testes • simplicidade • arquitetura • interações curtas ... sábado, 28 de setembro de 13
  8. 8. Por onde começar ? sábado, 28 de setembro de 13
  9. 9. sábado, 28 de setembro de 13
  10. 10. Valores • Comunicação • Simplicidade • Feedback • Coragem • Respeito sábado, 28 de setembro de 13
  11. 11. Comunicação sábado, 28 de setembro de 13
  12. 12. Simplicidade • Qual a coisa mais simples que poderia funcionar ? • Simplicidade não é fácil. sábado, 28 de setembro de 13
  13. 13. Feedback • Utilização mais cedo possível do software • Desenvolvedor para cliente e vice-versa. • Feedback em todas as escalas de tempo • minutos / dia / semana / mês sábado, 28 de setembro de 13
  14. 14. Coragem • Ex.: • Contrato de escopo variado • Assumir atraso e problemas • Refatoração contínua • Programação em par sábado, 28 de setembro de 13
  15. 15. Respeito • “Respeitar o ponto de vista do outro é essencial para que um projeto de software seja bem sucedido” sábado, 28 de setembro de 13
  16. 16. Princípios • Feedback rápido • Simplicidade presumida • Mudanças incrementais • Aceitação a mudanças • Alta qualidade sábado, 28 de setembro de 13
  17. 17. Como aplicar ? sábado, 28 de setembro de 13
  18. 18. usando as práticas !!! sábado, 28 de setembro de 13
  19. 19. Práticas do XP • Jogo de planejamento • Entregas frequentes • Metáfora • Programação em pares • Propriedade coletiva • Integração contínua • Cliente presente • Projeto simples • Testes • Refatoração • Padrões de codificação • Stand up meeting sábado, 28 de setembro de 13
  20. 20. Jogo de planejamento • Escopo para a próxima versão • Estimativas • Priorização • User Story sábado, 28 de setembro de 13
  21. 21. Entregas frequentes • Requisito de maior valor para o negócio • Reduzir o tempo do ciclo de entregas sábado, 28 de setembro de 13
  22. 22. Metáfora • Ajuda a equipe e os envolvidos no entendimento dos elementos básicos e seus relacionamentos sábado, 28 de setembro de 13
  23. 23. Programação em pares • “Duas pessoas, uma máquina, um teclado e um mouse” sábado, 28 de setembro de 13
  24. 24. Propriedade coletiva • “Todos são responsáveis pelo sistema inteiro” sábado, 28 de setembro de 13
  25. 25. Integração contínua • O código é integrado e testado sempre. sábado, 28 de setembro de 13
  26. 26. Cliente presente • “Pessoa que realmente vai usar o sistema quando estiver em produção” sábado, 28 de setembro de 13
  27. 27. Projeto simples • É aquele que: • Executa todos os testes • Não tem lógica duplicada • Expressa todas as intenções importante para os programadores • Tem menor número possível de classes e métodos • “Implemente para hoje, projete para o amanhã” sábado, 28 de setembro de 13
  28. 28. Teste • Levar a atividade de Teste ao eXtremo • Qualquer função que não tenha teste simplesmente não existe sábado, 28 de setembro de 13
  29. 29. Refatoração • Melhoria do código sem alteração no comportamento sábado, 28 de setembro de 13
  30. 30. Padrões de codificação • O time define a forma como vai desenvolver (nomeclatura, padrões ...) sábado, 28 de setembro de 13
  31. 31. Stand up meeting sábado, 28 de setembro de 13
  32. 32. Papéis • Programador • Treinador (Coach) • Tracker • Testador • Cliente sábado, 28 de setembro de 13
  33. 33. Ciclo de vida sábado, 28 de setembro de 13
  34. 34. “As peças individuais são simples. A riqueza vem da interação entre as partes” (Beck, 2004) sábado, 28 de setembro de 13
  35. 35. Associação do XP com SCRUM sábado, 28 de setembro de 13
  36. 36. Referências • http://www.extremeprogramming.org/ • Beck, K. Programação eXtrema (XP) explicada - acolha as mudanças (2004) • Sbrocco, J. Macedo, P. Métodologias Ágeis - Engenharia de software sob medida (2012) • Teles,V. Extreme Programming (2004) sábado, 28 de setembro de 13
  37. 37. Referência das imagens • http://www.threeriversinstitute.org/Extreme%20Programming%20in%20Pictures.htm • http://www.oficinadanet.com.br/artigo/gerencia/extreme_programming_xp_em_2_minutos • http://improveit.com.br/ • http://www.xpce.org/ • http://paraibacooperativo.wordpress.com/cooperativismo-duvidas-frequentes/ • http://desenvolvimentoagil.com.br/xp/praticas/refatoracao • http://www.slideshare.net/luizclaudiosilva/praticas-geis-de-desenvolvimento-de-software-v3 • http://infortecsolutions.com.br/otimizacao-de-sites • http://www.cafeagile.com.br/wp-content/uploads/2012/01/standup2.jpg • http://www.devmedia.com.br/ferramentas-de-integracao-continua-tornando-o-trabalho-de- equipes-mais-organizado-engenharia-de-software-7/11035 sábado, 28 de setembro de 13

×