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
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. 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
12. Simplicidade
• Qual a coisa mais simples que poderia
funcionar ?
• Simplicidade não é fácil.
sábado, 28 de setembro de 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. 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. 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. Princípios
• Feedback rápido
• Simplicidade presumida
• Mudanças incrementais
• Aceitação a mudanças
• Alta qualidade
sábado, 28 de setembro de 13
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. Jogo de planejamento
• Escopo para a próxima versão
• Estimativas
• Priorização
• User Story
sábado, 28 de setembro de 13
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. 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. Programação em pares
• “Duas pessoas, uma máquina, um teclado e
um mouse”
sábado, 28 de setembro de 13
26. Cliente presente
• “Pessoa que realmente vai usar o sistema
quando estiver em produção”
sábado, 28 de setembro de 13
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. 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
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. 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